4

是否可以在 Android 上使用 SQLite 并在服务器上使用像 MongoDB 这样的 NoSQL 数据库,两者之间有 2 路数据复制/同步?或者最好是两端都使用SQL,或者两端都使用NoSQL,但不能混合使用?

4

2 回答 2

3

有几种不同的方法需要考虑:

1)使用实现多主机或MVCC(多版本并发控制)在Android +您的服务器上运行的数据库产品。MVCC 维基百科页面上有一些示例,其中 CouchDB 是一种常见的解决方案。有一个TouchDB-Android端口经过优化,可在 Android 上运行并支持复制到 CouchDB。

2)您的要求可能很简单(或独特),足以保证推出您自己的解决方案。一个常见的解决方案是在 Android 上使用 SQLite,并通过(可能是 RESTful)API 将信息同步到远程服务器。

在移动设备和服务器上使用相同的数据库解决方案并不是必需的,但使用类似的架构和查询语言可能会让你更清醒。

于 2012-11-29T04:27:43.393 回答
2

你可能想看看SymmetricDS,我自己没有用过,但我正在考虑。

它目前允许 Android 上的 SQLite DB 同步到 mongoDB 后端,但目前还没有相反的方向。显然,您可以将必要的同步数据创建到中间同步数据库中,以便它返回到您的 SQLite 数据库。

还有一个 iOS 版本正在筹备中。

它具有 GPL 许可证,因此如果您将其用于商业用途,则需要付费(除非您的应用程序是开源的)。

于 2014-09-06T14:17:23.497 回答