【发布时间】:2018-11-02 06:49:36
【问题描述】:
我有一台机器,提交日志一直增加到 7.8 GB,并且还在增长,我检查了一个属性 commitlog_total_space_in_mb: 8192,它在 cassandra.yaml 中被注释。我怀疑它必须是默认值。
1) 增加提交日志大小的问题是什么?
2)是不是说我的memtable阈值没有达到?
已编辑:
memtable_cleanup_threshold = 1/(memtable_flush_writers + 1) * (memtable_offheap_space_in_mb + memtable_heap_space_in_mb)
推荐值在哪里,
memtable_flush_writers - Smaller of number of disks or number of cores with a minimum of 2 and a maximum of 8, so in our case it is '8'
memtable_offheap_space_in_mb - 1/4 of the heap size, so in our case it is 2GB
memtable_heap_space_in_mb - 1/4 of the heap size, so in our case it is 2GB
所以计算会,
memtable_cleanup_threshold = 1/(8 + 1) * 4096
memtable_cleanup_threshold = 455MB
为什么它没有刷新到 455 MB 并删除提交日志?
【问题讨论】:
-
提交日志可以大于你的内存表空间。 8GB的磁盘有问题吗?为什么要调整它?
-
@ChrisLohfink 这是正确的'我目前有 7.8 GB 的提交日志,这是否意味着内存中当前有 7.8 GB 的 mem 表数据可用'?因为据我所知,一旦 Mem 表刷新到 SSTable 中,就需要删除提交日志
-
@ChrisLohfink 我知道提交日志是多个内存表的组合,那么何时会删除提交日志?