【问题标题】:Implications of SSTable immutability in Cassandra for disk usageCassandra 中 SSTable 不变性对磁盘使用的影响
【发布时间】:2012-03-01 18:26:00
【问题描述】:

根据:

http://www.datastax.com/docs/1.0/ddl/column_family#about-column-family-compression

RDBMS 看到压缩导致性能降级的原因是,必须在磁盘上查找被覆盖的数据,然后解压缩、覆盖,然后重新压缩。另一方面,Cassandra 可以看到读取 写入的性能增加,因为 SSTable 是不可变的,因此不会覆盖任何记录,因此开销远小于用于压缩的 RDBMS。

我想知道,随着 Cassandra 数据存储的持续增长,从长远来看,这会产生什么影响?似乎唯一的结果是对更多磁盘空间的需求不断增长,这是正确的吗?

【问题讨论】:

    标签: database cassandra


    【解决方案1】:

    Cassandra 会定期在您现有的 SSTables 上运行压缩过程。 Compaction 将多个 SSTable 合并为一个新的更大的 SSTable,丢弃过时的数据。压缩发生后,Cassandra 将(最终)删除旧的 SSTable。

    因此,如果您的数据集大小稳定,您的 SSTable 大小将不会无限增长。 The Cassandra wiki contains more information on compaction.

    【讨论】:

      猜你喜欢
      • 2015-06-21
      • 2018-06-29
      • 2013-11-21
      • 2018-07-09
      • 1970-01-01
      • 1970-01-01
      • 2016-05-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多