【问题标题】:How to find large partition in cassandra except system.log?如何在 cassandra 中找到除 system.log 之外的大分区?
【发布时间】:2019-05-26 00:23:36
【问题描述】:

在进入 system.log 之前,我们如何在 cassandra 集群上找到大分区?因此,我们面临一些性能问题。谁能帮我。我们有 cassandra 版本 2.0.11 和 2.1.16。

【问题讨论】:

    标签: cassandra cassandra-2.0 cassandra-2.1


    【解决方案1】:

    您可以查看 nodetool tablestats(或旧版本 Cassandra 中的 nodetool cfstats)的输出 - 对于它具有行 Compacted partition maximum bytes 以及其他信息的每个表,例如当最大分区大小约为 268Mb 时的此示例:

        Table: table_name
        SSTable count: 2
        Space used (live): 147638509
        Space used (total): 147638509
        .....
        Compacted partition minimum bytes: 43
        Compacted partition maximum bytes: 268650950
        Compacted partition mean bytes: 430941
        Average live cells per slice (last five minutes): 8256.0
        Maximum live cells per slice (last five minutes): 10239
        Average tombstones per slice (last five minutes): 1.0
        Maximum tombstones per slice (last five minutes): 1
        .....
    

    nodetool tablestats 只为您提供当前节点的信息,因此您需要在集群的每个节点上执行它。

    更新:您可以使用不同的工具找到最大的分区:

    【讨论】:

    • 谢谢。是的,但需要这些分区的密钥?查找任何命令
    • 谢谢亚历克斯,我见过但似乎可用于 3.x,但正如我所提到的,我们有 2.x。此外,我们需要宽或大分区的键,以便我们可以在压缩之前处理。
    • 好的,会的。谢谢
    【解决方案2】:

    Try nodetool tablehistograms -- <keyspace> <table> 命令提供有关表的统计信息,包括读/写延迟、分区大小、列数和 SSTable 数。

    下面是示例输出:

    Percentile  SSTables     Write Latency      Read Latency    Partition Size        Cell Count
                                  (micros)          (micros)           (bytes)                  
    50%             0.00             73.46              0.00         223875792             61214
    75%             0.00             88.15              0.00         668489532            182785
    95%             0.00            152.32              0.00        1996099046            654949
    98%             0.00            785.94              0.00        3449259151           1358102
    99%             0.00            943.13              0.00        3449259151           1358102
    Min             0.00             24.60              0.00              5723                 4
    Max             0.00           5839.59              0.00        5960319812           1955666
    

    这提供了表的正确统计信息,例如 raw_data 表的 95% 的分区大小为 107MB,最大为 3.44GB。

    希望这有助于找出性能问题。

    【讨论】:

    • 谢谢,但我们需要特定分区的键,以便我们可以根据键删除大分区。
    • 你找到方法了吗?我也在尝试找出具有最大分区的键。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-15
    • 2018-10-30
    • 2016-09-17
    • 2021-07-15
    • 2015-02-11
    • 2018-06-18
    • 2017-03-18
    相关资源
    最近更新 更多