Live data from Hacker News

Building a CRUD App with Datomic Cloud Ions

jacobobryant.com

21–28 of 28 posts

Re: Building a CRUD App with Datomic Cloud Ions

#21
post #19

Earlier quoted context omitted.

Both of you are missing the point. Once you normalize, car color would be an attribute on the car table, and to map those you need many-to-many lookup tables. It can be done obviously, but it's more effort to do, maintain and update. Depending on your requirements, graph db like features can provide an easier abstraction.

This feels like a straw man. Don't normalize if it causes pain. Similarly, don't expect that a single data model will suffice for all needs in an application. Expect to have to maintain anything that is useful.

Obviously, if you put all data into one table, it's not a complex query. (But then you also just reinvented document databases with its own set of problems.)

Even having them in several tables is not rocket science, OP was just trying to give an easy example of types of queries that are easier with datomic than with sql.

Re: Building a CRUD App with Datomic Cloud Ions

#22
post #7

I see two problems with Datomic: the pricing seems a bit high for home use, and the professional version has the problem that you have to submit your data to the cloud, which is not always possible as clients may not always allow sharing of data with 3rd-parties. The ideas seem interesting though. Is there an open-source equivalent of Datomic yet?

This looks promising https://juxt.pro/crux/index.html datalog, high performance, flexible deployment options, open source. especially interesting for us because you can actually remove data for gdpr/compliance reasons. Datomic has a lot of trouble with that in our experience

It does look cool. Is anyone out there using it in production?

Re: Building a CRUD App with Datomic Cloud Ions

#23
post #22

Earlier quoted context omitted.

This looks promising https://juxt.pro/crux/index.html datalog, high performance, flexible deployment options, open source. especially interesting for us because you can actually remove data for gdpr/compliance reasons. Datomic has a lot of trouble with that in our experience

It does look cool. Is anyone out there using it in production?

I'm guessing the creators solved a real business need and decided to go open source. Really nice folks btw. Props to juxt.

Re: Building a CRUD App with Datomic Cloud Ions

#24
post #7

I see two problems with Datomic: the pricing seems a bit high for home use, and the professional version has the problem that you have to submit your data to the cloud, which is not always possible as clients may not always allow sharing of data with 3rd-parties. The ideas seem interesting though. Is there an open-source equivalent of Datomic yet?

Seeing as Amazon are now Embrace, Extend, Extinguishing profitable open-source service providers that are the primary contributors to the projects, I think it's a good thing Datomic isn't open source, and that it's worth paying $30/mo for.

Re: Building a CRUD App with Datomic Cloud Ions

#25
post #19

Earlier quoted context omitted.

This feels like a straw man. Don't normalize if it causes pain. Similarly, don't expect that a single data model will suffice for all needs in an application. Expect to have to maintain anything that is useful.

Obviously, if you put all data into one table, it's not a complex query. (But then you also just reinvented document databases with its own set of problems.) Even having them in several tables is not rocket science, OP was just trying to give an easy example of types of queries that are easier with datomic than with sql.

My point is that data has to be maintained in whatever forms you are keeping it in. Often with different requirements on why it is there.

Yes, this is a large part of why we use databases. They will do most of this heavy lifting. However, I don't think it changes the game. If you want some access to be easy or quick, you have to maintain the data in that format.

Re: Building a CRUD App with Datomic Cloud Ions

#26
post #25

Earlier quoted context omitted.

Obviously, if you put all data into one table, it's not a complex query. (But then you also just reinvented document databases with its own set of problems.) Even having them in several tables is not rocket science, OP was just trying to give an easy example of types of queries that are easier with datomic than with sql.

My point is that data has to be maintained in whatever forms you are keeping it in. Often with different requirements on why it is there. Yes, this is a large part of why we use databases. They will do most of this heavy lifting. However, I don't think it changes the game. If you want some access to be easy or quick, you have to maintain the data in that format.

No, you're completely wrong. Graph databases, document databases, K/V stores and so on have completely different models, guarantees and performance characteristics than relational databases.

Re: Building a CRUD App with Datomic Cloud Ions

#27
post #25

Earlier quoted context omitted.

My point is that data has to be maintained in whatever forms you are keeping it in. Often with different requirements on why it is there. Yes, this is a large part of why we use databases. They will do most of this heavy lifting. However, I don't think it changes the game. If you want some access to be easy or quick, you have to maintain the data in that format.

No, you're completely wrong. Graph databases, document databases, K/V stores and so on have completely different models, guarantees and performance characteristics than relational databases.

That is restating my point. Different data stores have different characteristics. Identify which ones you care about and make the tradeoffs required. They all require effort. And it is not uncommon to want your data available in different ways at different times.

Re: Building a CRUD App with Datomic Cloud Ions

#28
post #20

Earlier quoted context omitted.

Raw index access from the client introduces data security issues amongst other things ... Perhaps someday trusted computations can be done in the edge. Otherwise we're talking about browser DRM.

pretty sure he meant datalog indexes, not datomic

*datascript
Post reply on HN