【问题标题】:How to downgrade Cassandra 3.0.0 -> 2.x?如何降级 Cassandra 3.0.0 -> 2.x?
【发布时间】:2016-04-10 15:36:01
【问题描述】:

I recently found out that Cassandra 3.0.0 and PrestoDB don't play well together.

我有很多数据加载到 Cassandra 3.0 中,我不想重建整个东西。在 Presto 更新之前,有没有一种安全的方法可以暂时降级到 2.x,然后我可以回到 3.0?

我知道官方不支持降级,但我想知道是否更有经验的 S.O. Cassandra 用户可以在这里为我指明正确的方向。我认为答案将是“不要尝试”,但谁知道呢,也许有办法。提前致谢。

2016-11-05 更新:使用 PrestoDB 0.147 及更新版本,此问题已得到解决。最后,我不需要降级 Cassandra 就可以使用 PrestoDB。感谢您的回复。

【问题讨论】:

  • 这是新安装的吗?或者你是从 2.x 升级的吗?如果你升级了,你有没有运行nodetool upgradesstables
  • 嗨 Aaron,是的,这是一个新安装,但感谢您的想法。

标签: cassandra cassandra-2.0 cassandra-3.0


【解决方案1】:

如果您从 3.0 开始,我能想到的唯一方法是导出所有数据,然后重新导入。存储格式发生了巨大变化,2.x 无法读取 3.0 表。

不幸的是 sstable2json 在 3.0 中被删除了,所以您可能需要手动将其全部导出,然后再导入到以前的版本中。

【讨论】:

  • 哈达德先生在这里当然是正确的。在 3.0 中,cqlsh COPY 的性能几乎是可观的 - 取决于您的数据大小(即:它是否适合单个服务器),您可以将其 COPY 输出,然后将 COPY 重新输入. 否则,您可以使用 sstable2json 的替代实现(例如 github.com/tolbertam/sstable-tools )将数据导出为 json,然后重建集群,然后使用您选择的编程语言将其写回。
  • 感谢您的 COPY 命令建议,杰夫。会看看这个。
  • 只是一个简短的评论来更新这个问题:自从 PrestoDB 0.147 我不再有 Presto 和 Cassandra 3+ 之间的问题。我也更新了 Cassandra,现在他们一起玩得很好。感谢您的回复。
猜你喜欢
  • 2016-10-07
  • 2018-09-03
  • 1970-01-01
  • 2015-02-15
  • 2016-02-20
  • 2021-09-01
  • 2021-05-13
  • 2019-10-18
相关资源
最近更新 更多