Re:Modern Data Practice and the SQL Tradition
by asdfman123 on Friday November 08, 2019 @10:57AM
(#21483404)
Can someone explain to me any circumstances where having no well defined data model is better than coming up with a clear relational model? Honest question. It seems like it would just be a huge hassle trying to deal with your dissimilar data.
When I'm designing an app from scratch I often think about the SQL tables first and how I'm going to build them, and it really sharpens my idea of what my program will be.
I don't see how skipping that process would make things easier.
Re:Modern Data Practice and the SQL Tradition
by noobiemcfoob on Friday November 08, 2019 @12:13PM
(#21484303)
I've built IoT platforms where data from any device must be accepted. This is largely where my preference for NoSQL comes from. A device created tomorrow will not have a schema I can predict or control. NoSQL allows the easy integration of that device while a traditional database will at worst require a migration for each new device you want to support.
Re:Modern Data Practice and the SQL Tradition
by asdfman123 on Friday November 08, 2019 @12:17PM
(#21484349)
Please correct me if I'm wrong, but that sounds like a very narrow use case, and also something that could be solved by simply stuffing JSON into a RDBMS.
However, perhaps there are tools that NoSQL provides that are handy.
Re:Modern Data Practice and the SQL Tradition
by noobiemcfoob on Friday November 08, 2019 @12:22PM
(#21484416)
What's wrong is that you asked for any usecase and then critique one because it's not broad enough for you.
Re:Modern Data Practice and the SQL Tradition
by asdfman123 on Friday November 08, 2019 @12:25PM
(#21484449)
Sorry, I'm not trying to be argumentative, I just argue in order to understand better.
Re:Modern Data Practice and the SQL Tradition
by noobiemcfoob on Friday November 08, 2019 @12:31PM
(#21484532)
Then argue honestly and work to steelman other's arguments. To address your point, I'd hardly consider IoT platforms to be a "narrow" usecase. Smaller than the whole of computing, surely, but it's a growing field. The reality is that more and more devices will become available that generate all sorts of hard to predict data. Being able to handle those easily will be a large strength for platforms going forward. Dropping this hard to predict data as JSON into a RDMS will certainly come back to haunt you in 5 years.
Re:Modern Data Practice and the SQL Tradition
by asdfman123 on Friday November 08, 2019 @12:58PM
(#21484886)
How will it come back to haunt? Again, just curious.
Re:Modern Data Practice and the SQL Tradition
by noobiemcfoob on Friday November 08, 2019 @01:27PM
(#21485175)
You'll have dumped it into a strict database, giving yourself a false sense of order and organization. But later when you need to query that amorphous data, you might be able to use OPENJSON or something else, but a NoSQL solution will have been built to handle this type of query specifically with utilities like key exists and better handling for keys missing or only sometimes being present.
Re:Modern Data Practice and the SQL Tradition
by Scarbutt on Friday November 08, 2019 @12:17PM
(#21484344)
You can't really design your tables well enough without knowing your UI, its a back and forth, forth and back process.
Re:Modern Data Practice and the SQL Tradition
by asdfman123 on Friday November 08, 2019 @12:18PM
(#21484358)
And it's something you can do entirely on paper, too, before you go to code.
However I've never greenfielded an actually large application.
Yes, yes, there are sometimes exceptions, one must repeat explicitly despite having already said it (see: "probably") because this is HN.