【问题标题】:Best approach to sync mongodb database with local serialized version将 mongodb 数据库与本地序列化版本同步的最佳方法
【发布时间】:2010-12-14 23:49:53
【问题描述】:

我正在使用objective-c 和本地工具开发一个mac 应用程序。我喜欢 mongodb 基于文档的实现,我计划用它来存储我的应用程序的数据(数据或多或少是音乐曲目的标题,以及伴随的元数据)。该应用程序的目的是让用户能够将数据库的数据库版本同步到他们的本地版本。然后,能够始终在他们的计算机上拥有本地版本,这样就不需要互联网来使用该应用程序。但是,如果用户离线,并对他们的本地数据进行了更改,当他们重新上线时,这些更改将同步回 mongodb 数据库。我遇到的问题是找到解决这个问题的最佳方法。我现在能想到的最好的方法是最初从数据库中提取数据并序列化数据库中每个“音乐曲目”条目的本地副本。所以当离线时,问题会从这些序列化的对象中填充数据。如果用户离线添加/更改数据,更改会被记录下来,并等待用户重新上线时推送到 mongodb 数据库。 mongodb 数据库中的所有条目都会有时间戳,因此当应用程序在线运行时,每隔几秒钟,应用程序可以比较其本地副本和远程副本的时间戳,以查看是否已进行更改,并进行相应的更新。

这是从 mongodb 数据库远程和本地同步数据的好方法吗?

【问题讨论】:

  • couchdb 支持您的要求。它是一种 json 文档类型的数据库,例如 mongodb,但具有自动复制和同步功能。如果 mongodb 不是必须的,你可以考虑一下。

标签: objective-c synchronization mongodb


【解决方案1】:

这是一个非常有趣的问题,遗憾的是我没有很好的答案(目前看来其他人也没有。)

不过,您可能对 MongoSV 最近关于在 iOS 中使用 MongoDB 的演示文稿感兴趣 ...

http://www.10gen.com/video/mongosv2010/ios

在演讲中,Tim Burks 提到了他正在开发的一些用于在 iOS 设备上存储 MongoDB 数据的项目,这可能对您有所帮助。

例如,他提到了Tokyo Cabinet...理论上你可以在 SQLite 中存储 BSON/JSON 结构(有点奇怪,但可行。)

【讨论】:

    猜你喜欢
    • 2015-01-06
    • 1970-01-01
    • 1970-01-01
    • 2014-04-29
    • 2022-11-18
    • 1970-01-01
    • 2011-01-05
    • 2014-06-17
    • 1970-01-01
    相关资源
    最近更新 更多