4 ms·
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
by asdfman123 7y ago
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.
- noobiemcfoob 7y agoI'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.
- asdfman123 7y agoPlease 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.
- noobiemcfoob 7y agoWhat's wrong is that you asked for any usecase and then critique one because it's not broad enough for you.
- asdfman123 7y agoSorry, I'm not trying to be argumentative, I just argue in order to understand better.
- noobiemcfoob 7y agoThen 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.
- asdfman123 7y agoHow will it come back to haunt? Again, just curious.
- noobiemcfoob 7y agoYou'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.
- Scarbutt 7y agoYou can't really design your tables well enough without knowing your UI, its a back and forth, forth and back process.
- shantly 7y agoHow does UI inform table design?
- Scarbutt 7y agoIt will give you lots of insight when planning your data models/tables.
- asdfman123 7y agoAnd it's something you can do entirely on paper, too, before you go to code. However I've never greenfielded an actually large application.
- deleted 7y ago[deleted]