【问题标题】:Cassandra copy keyspace in a multi-node setup spanning multiple datacenters [closed]Cassandra 在跨多个数据中心的多节点设置中复制密钥空间 [关闭]
【发布时间】:2018-08-30 02:47:14
【问题描述】:

我有一个密钥空间样本,我想在同一个集群上复制它。

我有一个 6 节点设置,跨越两个数据中心,每个 dc 中有 3 个节点,每个 dc 中的复制因子为 3。

我使用的是 3.0.17 版本

我看到一个类似的问题回答了here,其中提到了以下步骤。

  1. 创建密钥空间的快照
  2. 创建新的 KeySpace (${NEW_KEYSPACE}) 和表
  3. 将 SNAPSHOT/*.db 文件复制到 $CASSANDRA_HOME/data/data/${NEW_KEYSPACE} 中对应的表文件夹中
  4. 刷新 KeySpace 和表格
  5. 修复 KeySpace

我想知道快照文件的副本是否需要仅在一个节点或所有节点上发生?

另外,如果设置的节点数超过复制因子,是否会发生变化,使得某些节点没有 100% 的数据?

【问题讨论】:

    标签: cassandra cassandra-3.0


    【解决方案1】:

    我想知道快照文件的副本是否需要仅在一个节点或所有节点上发生?

    另外,如果设置的节点数超过复制因子,是否会发生变化,使得某些节点没有 100% 的数据?

    快照仅包含拍摄它的节点的数据。节点数量超过定义的 RF 的问题正是您需要在每个节点上拍摄快照以确保获得所有数据的问题。

    但是,在您的情况下,由于所有节点都负责 100% 的数据,您应该只需要在一个节点上拍摄快照。

    编辑

    我还想知道的是,作为创建新密钥空间的一部分,我是否需要将快照文件复制到所有节点上,或者我可以将它们复制到其中一个节点上,然后修复过程将移动它到其他节点?

    由于您的 RF == 每个 DC 的节点数,您应该只需将文件复制到一个节点并加载它们,然后修复即可完成其余的工作。

    【讨论】:

    • 感谢您提供的信息。我还想知道的是,作为创建新密钥空间的一部分,我是否需要在所有节点上复制快照文件,或者我可以将它们复制到其中一个节点上,然后修复过程会将其移动到其他节点?
    • @mayoite 已编辑。
    猜你喜欢
    • 1970-01-01
    • 2015-10-21
    • 1970-01-01
    • 1970-01-01
    • 2017-06-15
    • 2016-04-18
    • 1970-01-01
    • 2013-03-30
    • 2018-07-11
    相关资源
    最近更新 更多