Amazon web services 卡桑德拉磁盘空间开销

Amazon web services 卡桑德拉磁盘空间开销,amazon-web-services,cassandra-2.0,Amazon Web Services,Cassandra 2.0,我们正在运行一个6节点的Cassandra 2.0.11集群,其RF=3,位于AWS的一个数据中心,跨越3个AZ 我们的平均数据大小约为110GB,每个节点有2个80GB磁盘,使用raid0创建一个160GB磁盘 我们开始看到,每当进行修复或后续压实时,磁碟就会充满,并且不再能够重新平衡磁环 现在是水平缩放并从6个节点移动到9个节点的时候了吗 160GB中的50GB似乎是正常cassandra操作所需的大量开销。如果可以,请获取更多磁盘空间。 否则,请考虑使用水平压缩,以防磁盘空间较低,只有少量

我们正在运行一个6节点的Cassandra 2.0.11集群,其RF=3,位于AWS的一个数据中心,跨越3个AZ

我们的平均数据大小约为110GB,每个节点有2个80GB磁盘,使用raid0创建一个160GB磁盘

我们开始看到,每当进行修复或后续压实时,磁碟就会充满,并且不再能够重新平衡磁环

现在是水平缩放并从6个节点移动到9个节点的时候了吗


160GB中的50GB似乎是正常cassandra操作所需的大量开销。

如果可以,请获取更多磁盘空间。 否则,请考虑使用水平压缩,以防磁盘空间较低,只有少量或中度的写入负载。与大小压缩相比,LCS在压缩过程中可以节省大量磁盘空间。
还要检查是否可以删除一些旧快照。

首先,找出导致磁盘填满的根本原因

从您所写的内容来看,我觉得集群上的负载太高,导致压缩落后。这反过来会导致磁盘填满

检查nodetool tpstats以查看是否有压缩积压,并检查您的列族中有多少SSTABLE。如果是这种情况,可以水平缩放以处理负载,也可以调整当前集群以使其能够处理正在推送的负载

原因还可能来自数据驱动器中的大量压缩。我假设您使用大小分层压缩策略。这方面的开销始终占当前数据的50%。作为一个大的压缩可以临时添加那么多的数据


一种选择是切换到分层压缩策略,因为这只需要10%的开销。但是请注意,LCS在磁盘上要难得多。

我想补充一点,我们已经在使用LCS,并且已经检查过我们没有任何快照。我们发现有一件事很有帮助,那就是将压缩吞吐量从每秒16 mb提高到每秒32 mb。由于压实工作已经完成,我们再也没有进行任何维修作业,现在的吊环安静了。我们决定尝试从6个节点扩展到9个节点。