谁能告诉我memtable_flush_writers用例及其意义。在什么情况下我们应该调整默认值?我已经阅读了datastax文档,但不清楚实际用途和好处。
最佳答案
默认情况下,memtable_cleanup_threshold
的计算公式为:1 /(memtable_flush_writers
+1)
正如Mehul指出的那样,YAML中有一些有关如何设置此值的指南。与此相反,无论您是否使用SSD,我都不会将其设置为内核数。
当memtable_flush_writers
设置得太高时,问题就来了,您的节点可能会因触发刷新的小的刷新而变得不堪重负。不幸的是,这会导致您的提交日志被填满,最终达到无法跟上刷新频率的程度。
如果发生这种情况,您可以使用nodetool flush
手动强制执行刷新。但是,如果您看到提交日志填满了磁盘,则尝试降低memtable_flush_writers
是一件好事。
注意L:与所有“调整”一样,例如Cassandra的更改,我会随着时间的推移进行增量更改,而不是进行急剧更改。只是为了安全起见。
关于cassandra - memtable_flush_writer的意义和用途,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53775626/