4 ms·
How is this different from Firebase RTDB? And perhaps more importantly, does it address the scalability and consistency issues associated with Firebase RTDB? Go
by remon 6y ago
How is this different from Firebase RTDB? And perhaps more importantly, does it address the scalability and consistency issues associated with Firebase RTDB? Google introduced Firestore to Firebase specifically because RTDB has limited usability for larger real world applications that go beyond "sync device state to DB".
Even the offline first paradigm is fundamentally flawed in general and certainly when it comes to offline data manipulation. Either you can afford to mutate your data on the local device and sync it when possible, in which case you clearly don't need subscriptions to real-time mutations of remote data because within that scope you are the source of truth. Or, you're interested in mutations of real-time data from multiple clients in which case you need to deal with conflict resolution (mutually exclusive changes of data) which is not reliably possible with this model and scalability (linear increase in pub/sub * increasing query cost = exponential scaling).
Are there any large projects or companies that currently have this in production?
- typingmonkey 6y agoThere are many mobile apps out there which work great and are offline first. For example the whatsapp client. So saying it is "fundamentally flawed" sound weird to me. I have no deep knowledge of Firebase RTDB so I cannot do any comparison on that point.
- jchrisa 6y agoIn-flight business objects for major airlines is probably considered scale: https://www.couchbase.com/customers/united-airlines https://www.couchbase.com/customers/united-airlines
- evan_ 6y agothat's CouchDB, not PouchDB. PouchDB is a JavaScript implementation of CouchDB.
- Graphguy 6y agoThat's also Couchbase and not CouchDB. They forked off CouchDB many years ago. Cloudant (API Compatible with CouchDB) has a number of case studies you can reference for production success with the Couch API/ecosystem. Cabify - https://www.ibm.com/case-studies/cabify-cloudant https://www.ibm.com/case-studies/cabify-cloudant Ticket Fairy - https://www.ibm.com/case-studies/the-ticket-fairy-cloud-cloudant https://www.ibm.com/case-studies/the-ticket-fairy-cloud-clou... We.Trade - https://www.ibm.com/case-studies/wetrade-blockchain-fintech-trade-finance https://www.ibm.com/case-studies/wetrade-blockchain-fintech-... Disclaimer: I work for IBM Cloud
- jchrisa 6y agoI was referring to the pattern and scaling issue the parent described, which are largely overcome in mature implementations.
- jamil7 6y agoI'm not following how this is a flawed concept. Any kind of collaborative document editing app is an example of when you might want both?