cassandra中每个节点适合多少个分区

how many partition is suitable per each node in cassandra

我正在测试卡桑德拉。 在服务器上设置我的 cassandra 节点之前。

我想知道每个节点有多少个分区是合适的。

    如果不存在则创建 TABLE access_log
 ( time_boundary int, --yyyymmddhh
    user_id 文本,--user01
    时间戳 bigint,--yyyymmddhhmmssms
    url 文本,-- /file/file/blabla~~
    menu_id 文字,
    ip文本,
    参数映射,--
    主键((time_boundary),user_id,时间戳)
 );

我认为一个安全的经验法则(在很大程度上取决于模式和写入速率)是 table(每个节点)内的大约 1-40 亿个分区,你开始遇到修复问题而不是流式传输2^20 最大 merkle 树深度。

如果您使用的是 LeveledCompactionStrategy,则通过增量修复,您可以做得更高(仅在最新的 3.11.x 上推荐,甚至在那里进行了大量测试)。使用 SizeTieredCompactionStrategy ALTER TABLE yourtable WITH min_index_interval = 4096 and max_index_interval = 4096(或更高,如果您发现问题)以防止压缩预分配索引摘要时出现 OOM。