cassandra的提交日志放在SSD上时有写放大问题吗?

ybzsozfc  于 2021-06-10  发布在  Cassandra
关注(0)|答案(1)|浏览(256)

另外,当cassandra执行写操作时,它会写入memtable以及磁盘上的提交日志(追加)。如果commit消息非常小,太小而无法填满ssd页,那么从长远来看,这不会导致一些碎片和写放大吗(磁盘填满后)

cnjp1d6j

cnjp1d6j1#

这篇文章也许能回答你的问题:https://www.datastax.com/dev/blog/updates-to-cassandras-commit-log-in-2-2
明确地:
自从版本1.1以来,cassandra中提交日志基础设施的一个特性就是能够重用段。这样做是为了减少日志记录驱动器上的碎片——数据库将保留一些commitlog段,以便在刷新它们所包含的数据之后进行覆盖,这意味着大部分时间提交日志不需要分配新的空间来进行写操作。这并不能消除日志可能导致的所有碎片,因为在memtable刷新过程中,它将在达到空间配额后继续写入,然后释放过度分配的空间。不过,由于分配和释放的空间较少,因此在驱动器上引入碎片的可能性较低。

相关问题