我的数据库结构是:android - Android SQLite和服务器数据库2种方式离线同步-LMLPHP
我想在我的androidSQLite和使用sync adapter的服务器之间进行双向同步。
android应用程序可以执行所有CRUD操作,网站也可以做同样的事情。
website将使用server数据库。目前我使用PostgreSQL但它可以更改。
mobile app将使用自己的数据库。
如何同步它们?最大的问题是local
其中一个想法是使用primary key作为主键,但存在性能问题,因为正如您所看到的,我需要执行一些连接才能从用户转到其他表。
另一个想法是将uuid保留为primary key并仅使用auto increment integers列进行同步。但这会为每个表中的每个uuidprimary添加一个新的表列。
最后一种方法是使用aforeign key作为主要参数。这将包括3列compound keyuser_id(原始数据库ID)和id(网站/移动应用程序等)。每个外键都是一样的。
有更好的解决办法吗?如果没有,我应该使用哪种解决方案?
Gmail、Keep、Dropbox或其他应用程序如何执行此类任务?
谢谢您。

最佳答案

您应该使用CouchBase,因为通过json在同步库已经完成的情况下处理数据要容易得多。它比MongoDB更快,也是FireBase的免费替代品。

09-04 12:55
查看更多