Fork me on GitHub

What would be the “cheapest” infrastructure to run Datomic on? e.g. on a very low load system, what is the minimum amount of RAM required for the transactor and the peers to operate?


(I have read the recommendations on the doc, but I am interested in the bare minimum to operate, not the optimal setup)


I am considering using Datomic for a non-profit application which should initially have low traffic, but will also generate no revenue so we cannot afford the luxury of running the transactor on a 2GB ram EC2 instance and each peer on their own 2GB instance.


I can run a transactor in dev for a project with a small amount of data in a container with a memory limit of 384MB, and a peer in a similarly sized container. I'm sure it's possible to go even smaller.


I can easily fit the transactor and a peer in an AWS t2.micro


Oh looking forward to read that


Will surely help in better understanding datomic!


Nice read, thanks!


@val_waeselynck when you say "The problem is, ... this won't work!" do you mean that it will return an error, return nil, or return a partial result with missing tags?

Ethan Miller19:07:44

@val_waeselynck I ended up just doing post-processing, as you suggested. it was just hard to forego the convenience of being able to do it in a query. it seems as though it is almost possible in those predicate and transform functions -- the problem being that for an attribute the value type of which is a reference, all that's available to those functions is the eid. at least that is I think what was going on, and it appeared not possible and a bit awkward to try to pull the values assocaited with that eid in the middle of the query process.