A Comparison of Offline Sync Protocols and Implementations
Sync Protocol or Implementation | Conflict Resolution Strategies | Client Implementations |
---|---|---|
CouchDB Replication Protocol |
|
|
Realm Sync Engine | ||
Firebase Realtime Database |
1. Apache CouchDB implementations use a deterministic algorithm to choose a "winning" document. See: Working with conflicting documents. ↩
2. Apache CouchDB implementations will maintain a revision tree of conflicted documents, allowing for the selection of a "winning" document or the merging of document data using application logic. See: Working with conflicting documents. ↩
3. Couchbase Mobile 2.0 will not be compatible with the CouchDB Replication Protocol. ↩
4. See the Realm Objective Server documentation on conflict resolution. ↩
5. See the Realm Objective Server documentation on conflict resolution. ↩
6. See the Firebase documentation on saving data. ↩
7. See the Firebase documentation on saving data. ↩
8. Transactions in Firebase can be slow and complex as they require one or more round trips to the server. See the Firebase documentation on saving data. ↩