我有一个复制因子设置为 3 的键空间,但我只有一个节点。那么磁盘空间会被使用 3 倍的数据大小吗?由于副本尚未分配给任何其他节点,除非有新节点加入集群,否则 cassandra 会停止创建副本吗?
1682 次
2 回答
4
不,使用的磁盘空间不会是原来的三倍。单个节点将拥有整个令牌范围,并且所有写入都将写入该单个节点一次。
其他两个副本的写入会发生什么取决于这些节点以前是否存在于集群中并且当前处于关闭状态,或者它们是否从未添加到集群中。如果它们从未被添加,那么 C* 将跳过尝试写入它们。
如果它们已被添加但当前处于关闭状态,并且如果您已启用提示切换并且仍在提示切换窗口内,则 C* 将在单个向上节点上存储向下节点的提示。
于 2015-09-28T17:24:35.263 回答
1
这取决于您使用的复制策略。假设您的查询正在工作,您可能已经使用过 SimpleStrategy ,如果您尝试写入这样的配置,您的写入应该会失败,因为它需要写入 2 个额外的副本节点,然后才能向客户端发出确认,在 SimpleStratagy 的情况下是环中接下来的两个顺时针节点。
于 2015-09-27T18:40:12.193 回答