【问题标题】:Suggestion on a replication scheme for my use-case?关于我的用例的复制方案的建议?
【发布时间】:2010-02-24 23:26:46
【问题描述】:

我正在开发一个在多个客户端上运行的应用程序,这些客户端与一个主 MySQL 数据库通信。此外,我们还有一个使用相同 MySQL 数据库的 Web 应用程序。

由于延迟问题,所有客户端都必须运行自己的本地 MySQL 数据库,该数据库应该是主 MySQL 数据库的副本。 Web 应用程序仍然使用主 MySQL 数据库。

客户端仅从表 A 中读取,并写入表 B。Web 应用程序同时写入表 A 和 B。

我应该如何设置确保数据一致性的复制方案?客户端应该可以长时间离线。这甚至可以使用 MySQL,还是我最好看看 CouchDB 之类的东西?根据网站,CouchDB 似乎明确支持这一点:

它允许用户和服务器 访问和更新相同的共享数据 断开连接然后 以后双向复制这些更改

(来自:http://couchdb.apache.org/docs/overview.html

【问题讨论】:

    标签: mysql replication client-server couchdb


    【解决方案1】:

    如果您可以从 MySQL 迁移到 CouchDB,那么 CouchDB 具有您需要的语义。

    您甚至不需要“双表”系统。文档系统内置了 MVCC,因此您可以更新文档和解决冲突等。复制非常棒,完全是对等的,并且在设计上旨在支持离线应用程序。

    【讨论】:

    • 我对这个解决方案的唯一问题是我觉得关系数据库更适合我们的数据模型。
    • 你为什么会有这种感觉?你需要索引每个键吗?您的所有数据在列值中是否一致(您从不使用 null)?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多