如何解决70 TB Cassandra迁移到AWS
我们有一个70TB集群,其中包含大约200个键空间,并计划将其移至AWS。我们正在思考的几种方法
- 用AWS中的Node替换群集之一中的节点,并对所有节点一个接一个地
- 在AWS中创建一个新集群,批量复制每个密钥空间,并对两个集群进行双重写入,并在停机期间进行切换。
还有其他更好的方法吗?我们可以将AWS用作新的DC并一次更改一个密钥空间吗?
解决方法
是的,您可以使用混合云模型并在AWS中创建新的DC。如果您想在不停机的情况下迁移实时数据,并且可以逐个密钥空间地管理I / O流,这可能是最好的方法。
阿兰·罗德里格斯(Alain Rodriguez)在Cassandra Data Center Switch上发表的这篇博客文章详细介绍了如何执行此操作。
,您可以将AWS用作新集群。但是您需要小心。并非所有的cassandra sstable都能互相交谈,因此您需要验证sstables之间的兼容性。另一个问题是,您可能会在“旧”群集中造成一些高负载。
因此,我强烈建议您从此参数开始就非常低,以测试您的集群和AWS集群的功能:
compaction_throughput_mb_per_sec (Default 16)
stream_throughput_outbound_megabits_per_sec (Default 200)
在实际集群中引导一个新的AWS节点不是一个好主意,因为每次引导一个新节点时,您都会告诉cassandra在集群之间重新分配密钥,并且如果出现任何错误,您将无需执行“计划b”
另一个好的解决方案是在AWS中创建一个分离的群集(不连接它们)并使用SPARK移动数据。仅移动数据而不进行转换非常简单,您就可以“控制”该过程。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。