【问题标题】:Max. size of wide rows?最大限度。宽行的大小?
【发布时间】:2015-05-07 17:42:49
【问题描述】:

理论上,Cassandra 允许在一个宽行中最多包含 20 亿列。

我听说实际上最多 50.000 cols/50 MB 就可以了; 50.000-100.000 cols/100 MB 是可以的,但需要一些调整;并且每行不应该超过 100.000/100 MB 列。原因是这会给堆带来压力。

这是真的吗?

【问题讨论】:

  • 你在哪里“听说过”?

标签: cassandra datastax cassandra-2.1


【解决方案1】:

在 Cassandra 中,the maximum number of cells (rows x columns) in a single partition is 2 billion

此外,单个列值可能不大于 2GB,但在实践中,“MB 的个位数”是更合理的限制,因为不存在对 blob 值的流式或随机访问。

大于 100Mb 的分区会对堆造成巨大压力。

【讨论】:

    【解决方案2】:

    由于我们遇到了新的写入模式,我们使用 cassandra 1.2 的一个表超过了每行 100 MB 列的限制。我们在压缩和缓存方面都经历了巨大的压力。顺便说一句,我们有数百 MB 的行。

    一种方法是重新设计表格并将其迁移到设计更好的表格,以使您的宽行保持在该限制之下。如果这不是一个选项,那么我建议调整您的 cassandra,以便压缩和缓存配置都可以有效地处理您的宽行。

    一些有趣的链接到要调整的东西:

    Cassandra Performance Tuning

    in_memory_compaction_limit_in_mb

    【讨论】:

      猜你喜欢
      • 2013-05-14
      • 2012-11-13
      • 1970-01-01
      • 2011-01-12
      • 2014-01-24
      • 1970-01-01
      • 1970-01-01
      • 2011-10-18
      • 1970-01-01
      相关资源
      最近更新 更多