【问题标题】:How to disable compaction in cassandra and kick start again at end?如何在 cassandra 中禁用压缩并在最后重新开始?
【发布时间】:2012-12-05 07:11:21
【问题描述】:

我同时将数十亿条记录插入到 cassandra 中。因此,要利用资源,我需要在插入过程中禁用压缩。插入完成后,我应该能够手动启动压缩。我使用 hector-core-1.0-5 作为 API 连接到 cassandra。任何人都可以帮助我如何做到这一点。

【问题讨论】:

  • 你考虑过sstableloader吗?

标签: cassandra hector


【解决方案1】:

您可以通过管理控制台 (JMX) 控制列族的压缩。您可以在加载前禁用,然后在加载数据后强制进行主要压缩。

【讨论】:

    【解决方案2】:

    我使用的方法是使用 cassandra-cli 更新列族压缩选项。

    开启

    use myks;
    update column family mycf with compression_options={sstable_compression:SnappyCompressor, chunk_length_kb:64};
    

    然后关闭:

    use myks;
    update column family mycf with compression_options=null;
    

    如果您想立即更新,则必须在此更新后使用 nodetool (scrub) 强制重建 sstables,否则可能会在意外情况下发生。

    我只是在测试中这样做,以比较压缩和非压缩列族的大小。但我发现启用压缩然后进行批量加载会更好,否则 sstable 重建需要很长时间。

    【讨论】:

    • @libjack ..我想了解压缩。你的答案与压缩有关。同时我不能不使用节点工具或cli,因为我正在使用与java集成的cassandra ..
    猜你喜欢
    • 2015-03-05
    • 2020-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-03
    • 2018-10-06
    • 2018-05-31
    • 1970-01-01
    相关资源
    最近更新 更多