【问题标题】:Force a minor compaction in cassandra?强制在 cassandra 中进行轻微压缩?
【发布时间】:2012-04-30 10:27:30
【问题描述】:

有没有办法在 cassandra 中强制进行次要压缩?

我尝试在有待处理任务的节点上使用 nodetool 将压缩阈值设置为 4 4,但没有任何反应。

【问题讨论】:

    标签: nosql cassandra


    【解决方案1】:

    为什么你想要一个小压缩而不是一个大压缩?

    当您将压缩阈值设置为 4 4 时,有多少个 SSTable?如果小于 4,则不会触发小压缩,因为它不符合压缩阈值。

    您可以通过查看其中一个键空间中的文件来检查您的 SSTable 及其大小。它应该看起来像这样:

    andrew@spite:/var/lib/cassandra/data/test_ks $ du -ch *
    4.0K    Users-hc-1-Data.db
    4.0K    Users-hc-1-Digest.sha1
    4.0K    Users-hc-1-Filter.db
    4.0K    Users-hc-1-Index.db
    8.0K    Users-hc-1-Statistics.db
    4.0K    Users.Users_name_idx-hc-1-Data.db
    4.0K    Users.Users_name_idx-hc-1-Digest.sha1
    4.0K    Users.Users_name_idx-hc-1-Filter.db
    4.0K    Users.Users_name_idx-hc-1-Index.db
    8.0K    Users.Users_name_idx-hc-1-Statistics.db
    48K total
    andrew@spite:/var/lib/cassandra/data/test_ks $ 
    

    【讨论】:

    • 我想触发一次次要压缩以能够可预测地维护 cassandra,而不是让它自动触发压缩并以不良方式影响流量。当我将压缩阈值设置为 4 4 时,有 10 个 SSTables(我之前通过将阈值设置为 0 0 来禁用压缩)。
    【解决方案2】:

    不,只能手动触发主要压缩。

    【讨论】:

    • 如果我使用 DataStax Java API,有什么方法可以获取小压缩的警报/事件/数据?我已经发布了我的query。请看一看。
    【解决方案3】:

    Datastax documentation for version 0.7 表示次要紧缩“定期自动执行”,这表明您不能强制次要紧缩,而是必须等待发生。据推测,如果有必要,您只需等待足够长的时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-07
      • 2013-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-02
      • 1970-01-01
      相关资源
      最近更新 更多