4 ms·
Wrote this comment on the OP (waiting for moderation): NoSQL is not just about scale (although it can be). In my opinion the main benefit of giving up relation
by jchrisa 15y ago
Wrote this comment on the OP (waiting for moderation):
NoSQL is not just about scale (although it can be). In my opinion the main benefit of giving up relational constraints is flexibility. Find me a relational system that can credibly do offline replication to mobile devices. Each of the options I’ve seen are full of gotchas. But if you replace the relational model with an MVCC document model, you can suddenly solve an entirely new class of problems.
Read about how Apache CouchDB is being used in rural Africa to bring collaborative data and web technologies to health clinics that don’t have reliable internet access: http://radar.oreilly.com/2011/03/couchdb-zambia-healthcare.html http://radar.oreilly.com/2011/03/couchdb-zambia-healthcare.h...
These same patterns are applicable to mobile connections in the 1st world.
- Joakal 15y agoI'm unsure what you're asking for, but isn't SQLlite suitable as it's used by many applications even on mobile?
- jchrisa 15y agoSQLite runs great on mobile, but it is a data island. The document model provides a foundation for synchronization and conflict detection that the relational model cannot. Specially it becomes very challenging in the relational model to sync a subset of data to each device, while allowing updates to data on any node, regardless of that node's network connection status. That is, with MVCC documents, you can push the partition tolerance of a system much further than with the relational, or even key/value models.
- andrewtj 15y agoHe's not asking for anything. He's pointing out how a different data model allows for solving a different set of problems. The MVCC page on Wikipedia might give you a better background so that you're able to contrast the two models and determine for yourself where they are useful: http://en.wikipedia.org/wiki/Multiversion_concurrency_control http://en.wikipedia.org/wiki/Multiversion_concurrency_contro...