cassandra - Cassandra 集群与 cassandra 环
问题描述
如果我有一个跨 5 个数据中心(3 个是私有 DC)和 2 个是公共(Azure DC)的 Cassandra 集群设置,我可以说我有 5 个环还是这是 1 个集群和 1 个环?
有人可以在这种情况下帮助理解“戒指”这个词吗?
解决方案
长答案:
是的,簇和环可以互换使用。“集群”在今天肯定被更多地使用。“Ring”来自 Cassandra 早期的 vNodes 之前的日子,每个节点都被分配了一个单一的、连续的令牌范围。
我们过去必须手动配置每个节点的令牌范围。事实上,我会使用这段代码来完成它(假设一个 5 节点集群):
python -c 'print [str(((2**64 / 5) * i) - 2**63) for i in range(5)]'
['-9223372036854775808', '-5534023222112865485', '-1844674407370955162', '1844674407370955161', '5534023222112865484']
在计算分区键的令牌范围时,每个节点负责下一个顺序范围。一旦它到达集群中的最后一个节点,范围计算就会循环回到第一个节点,有点像制作一个环状图。
总之,现在每个节点上有多个不连续的令牌范围,Cassandra 真的不再形成“环”了。要了解我的意思,请nodetool ring
在具有多个 vNode 的 Cassandra 3 节点上运行 a,您就会明白我的意思。
简短的回答:
出于所有意图和目的,“集群”==“环”。你也可以说,人们会明白你的意思。
推荐阅读
- google-cloud-platform - GKE - 私有云 DNS 地址,如何从办公室访问端点
- hybris - 如何从后台删除 OOTB 属性
- java - 是否可以根据 Json 模式自定义 Json 元素的数据类型?
- javascript - 如何在本机反应中重用 this.setState 和其他组件函数的函数?
- html - 引导轮播上的图像
- android - 打开时对话框片段折叠
- css - 如何从 Reagent 中的节点模块导入 css
- sql-server - 如何使用一个帐户登录并使用另一个帐户访问数据库
- angular - 修改选择器上的状态对象
- java - java.lang.RuntimeException:无法启动活动 android.view.InflateException:二进制 XML 文件第 13 行