4

我目前正在运行一个存储 4TB 数据的 12 节点 Cassandra 集群,复制因子设置为 3。为了应用程序更新的需要,我们需要更改我们的 keyspace 的配置,我们希望避免任何如果可能,请停机。

我在邮件列表中读到,最好的方法是:

  1. 在集群的一台服务器上杀死 cassandra 进程
  2. 再次启动,等待commit log写入磁盘,再次kill
  3. 在 storage.xml 文件中进行修改
  4. 根据我们所做的更改重命名或删除数据目录中的文件
  5. 启动卡桑德拉
  6. 转到列表中的下一个服务器的 1

我的问题是:

  • 我是否很好地理解了这个过程?
  • 是否存在数据损坏的风险?
  • 在这个过程中,同一个cluser,同一个keyspace中会有不同版本的storage.xml文件的服务器。这是个问题吗?
  • 如果我们不仅添加、重命名和删除 ColumnFamilies,而且如果我们更改 CompareWith 参数/将现有列族转换为超级列族,则与上述相同的问题。还是我们需要改名字?

谢谢您的回答。这是我第一次这样做,我有点害怕。

4

1 回答 1

2

您的列表看起来像http://wiki.apache.org/cassandra/FAQ#modify_cf_config中的列表。所以应该是准确的...

于 2010-04-02T15:14:34.293 回答