Fork me on GitHub
#datomic
<
2018-02-22
>
fmind07:02:13

Hi. I want setup a large import pipeline to migrate my data from couchdb to datomic. I have a single local server that runs on Linux. Which storage backend should I use ? Postgresql ? Cassandra ? Use free and do a backup restore ?

jaret13:02:51

@fmind Backup/restore is good for moving a datomic database from one underlying storage to another. If you’re taking a database on couchdb and making it a datomic db you’ll want to write an ETL job to take the couchdb dataset from SQL(?) to Datomic. I would recommend that you watch Stu’s video on simplifying ETL with Clojure and Datomic. (https://www.youtube.com/watch?v=oOON--g1PyU).

jaret13:02:52

In terms of choosing your underlying storage they all have their trade offs. I recommend going with the storage you have the most experience with. Many of our users find the experience with AWS DDB to be excellent. Our Storage docs go into detail on the configurations per storage. https://docs.datomic.com/on-prem/storage.html

fmind14:02:32

@jaret thanks for the explanation. I've tried postregsql and cassandra storage already, but the results were not impressive

bmabey14:02:23

How do people typically store MD5 hashes in datomic? In Postgres I typically use the UUID type since it is more compact than the string representation. By that same logic it seems that db.type/uuid may be the better option over db.type/string but I'm not sure if any extra JVM considerations (e.g. the size of a UUID in memory vs that of a string) need to be taken into account.

val_waeselynck12:02:00

@U5QE6HQK0 I'm assuming you want the hashes to be indexed? You could also use a bigint.

bmabey15:02:23

Good point, thanks.

fmind14:02:58

I'll try to build the import pipeline with the backup/restore feature. But I don't like having the transactor and peer library running on two different process ... I use twice the memory for nothing

marshall14:02:00

@fmind there are numerous reasons that Datomic is specifically designed with peers and transactors as separate processes. https://docs.datomic.com/on-prem/deployment.html#process-isolation

adamfrey20:02:46

For someone at cognitect, I'm getting an Access Denied XML response when I try view the Datomic java docs: https://docs.datomic.com/javadoc/datomic/Connection.html#log()

marshall20:02:16

Where was that linked from?

marshall20:02:33

i’ll fix it

marshall20:02:05

@adamfrey thanks for catching that. there were a bunch of those throughout the docs. i think i’ve fixed them all; it will take a couple minutes for the changes to percolate

adamfrey20:02:21

no problem!