假设在复制之前,所有密钥空间的总磁盘使用量为100gb。复制因子是3。使总物理磁盘使用率=100gb x 3=300gb。我们使用默认的压缩策略(大小分层),假设最坏的情况是cassandra需要与数据一样多的可用空间来完成压缩。cassandra需要100gb(复制前)还是300gb(100gb x3复制)?换句话说,当cassandra需要空闲磁盘空间来执行压缩时,复制因子是否有任何影响?
imzjd6km1#
因为数据是在节点之间复制的,所以每个节点都需要高达100gb的可用空间——所以总共是300gb,但不是在一个节点上。。。
7xllpg7q2#
cassandra中的压缩是节点的局部压缩。现在假设您有一个3节点的集群,复制因子也是3,原始数据大小是100gb。这意味着每个节点都有100gb的数据。因此,在每个节点上,我需要100gb的可用空间来压缩该节点上的数据。tldr公司;压缩所需的可用空间等于节点上存在的总数据。
2条答案
按热度按时间imzjd6km1#
因为数据是在节点之间复制的,所以每个节点都需要高达100gb的可用空间——所以总共是300gb,但不是在一个节点上。。。
7xllpg7q2#
cassandra中的压缩是节点的局部压缩。
现在假设您有一个3节点的集群,复制因子也是3,原始数据大小是100gb。这意味着每个节点都有100gb的数据。
因此,在每个节点上,我需要100gb的可用空间来压缩该节点上的数据。
tldr公司;压缩所需的可用空间等于节点上存在的总数据。