cassandra 1.2 中每个 CF 考虑的默认内存大小是多少?
在以前的版本中,它是 128 MB。它在 cassandra.yaml 文件的 MemtableThroughputInMB 参数中声明。但现在我在 cassandra 1.2 配置文件中找不到它。
谢谢 。
cassandra 1.2 中每个 CF 考虑的默认内存大小是多少?
在以前的版本中,它是 128 MB。它在 cassandra.yaml 文件的 MemtableThroughputInMB 参数中声明。但现在我在 cassandra 1.2 配置文件中找不到它。
谢谢 。
它被 memtable_total_space_in_mb 取代。
(默认值:堆的 1/3**)指定用于节点上所有 memtable 的总内存。这将替换每个表的存储设置 memtable_operations_in_millions 和 memtable_throughput_in_mb。
现在,cassandra 没有为您提供设置每个列族的默认内存大小的范围。相反,您可以使用memtable_total_space_in_mb在配置中定义 memtable 的整个大小,即 .yaml 文件。默认情况下,它的值是 JVM 堆大小的三分之一。
Cassandra 跨所有 ColumnFamilies 管理此空间,并根据需要将内存表刷新到磁盘。请注意,per-memtable arena allocator 使用每个 memtable 至少 1MB,如果您正在考虑从数千个到数万个 ColumnFamilies,请记住这一点。