【问题标题】:Efficient way to replicate data复制数据的有效方法
【发布时间】:2012-04-26 13:29:37
【问题描述】:

我们正在编写高负载订单处理引擎。每个集群节点处理一组合约并将操作日志写入本地文件。这个文件应该分布在一些其他节点上(为了容错)。如果节点发生故障,应该有办法尽快在其中一个复制节点上恢复它的状态。目前我们使用 cassandra,但分区器存在一些问题:无法指定特定表应使用哪些节点。

所以我们需要复制文件。有解决办法吗?

编辑:峰值负载约为每秒 20 万条记录。

【问题讨论】:

  • nfs 或数据库而不是文件?
  • 可能使用复制的 SAN。这些很昂贵,但您的系统似乎也很关键。
  • 看看 infinispan 吗? jboss.org/infinispan.html

标签: java cassandra replication


【解决方案1】:

关于您的 Cassandra 问题:虽然每个表/列族不能有不同的复制布局,但您可以每个键空间有不同的布局。这包括像您这样的情况,听起来您希望某些节点集 S1 完全负责数据的某些部分,而其他一些节点集 S2 负责另一部分。

如果您将 S1 和 S2 表示为 Cassandra 的不同数据中心(通过 PropertyFileSnitch 或其他方式),那么您可以将键空间 K1 配置为在 S1 上有 X 个副本,而在 S2 上没有副本,反之亦然。

【讨论】:

    猜你喜欢
    • 2015-08-14
    • 1970-01-01
    • 2014-07-17
    • 2017-03-05
    • 1970-01-01
    • 2013-02-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多