Cassandra可以用来复制,提供“主人”和过滤网站数据吗?

时间:2018-05-09 04:18:22

标签: cassandra replication

我正在为一个新项目研究技术。

我们有许多网站,其数据应来自主服务器。 每个站点只能拥有与站点所有者(公司)相关的数据。每个站点可能有许多独立的机器,每台机器都有自己的DB。

主人将拥有所有站点/机器的所有数据。 预计会有零星连接的离线使用。

我可以使用symmetric-ds之类的东西来使用RDBMS。例如:设置每站点复制,以便每个站点仅接收与该站点相关的数据。

让我(至少是自动)的是能够写入其中一台本地计算机,自动复制到该站点上的其他计算机。这在离线情况下很重要,其中在站点上写入机器A不会自动导致在同一站点的机器B上发生相同的写入/更新。当连接出现时,对B的写入将自然地作为对称-ds复制的一部分发生,但我需要在连接断开时本地工作的东西。

我想知道像Cassanda这样的东西是否适合这个?

我在想:

  • 每个站点都是一组自己的副本(即使该站点只有一台机器)
  • 每个站点将数据复制到主站点
  • 主人的写作被复制到相关站点(基于数据的内容)

1 个答案:

答案 0 :(得分:1)

开箱即用,Cassandra没有这样的功能。从理论上讲,您可以使用DSE's Advanced Replication功能构建您需要的东西,但这需要实验来构建正确的解决方案。虽然如果决定仅基于内容,那么也许这也不会起作用。

Cassandra中的默认交叉DC复制可能会导致停机,尤其是在您的软件在写入/读取数据时使用正确的一致性级别时。但是所有数据都将被复制到所有DC,直到你将它们分成不同的键空间,这些键空间都将作为一个DC主,而个别DC则作为第二个DC。