gpt4 book ai didi

mysql - RocksDB 与 Cassandra

转载 作者:行者123 更新时间:2023-11-30 21:21:44 26 4
gpt4 key购买 nike

MyRocks (MySql) 和 Cassandra 都使用 LSM 架构来存储它们的数据。所以我用 MyRocks 作为存储引擎在 MySql 和 Cassandra 中填充了大约 500 万行。在 Cassandra 中它只需要 1.7 GB 的磁盘空间,而在以 MyRocks 作为存储引擎的 MySql 中,它需要 19 GB。

我错过了什么吗?两者使用相同的 LSM 机制。但为什么它们的数据大小不同?

更新:

我猜它与文本列有关。我的表结构是(bigint、bigint、varchar、文本)。

  • 填充的行数:300 000
  • 在 MyRocks 中数据大小为 185MB
  • 在 Cassandra 中 - 13 MB。

但是如果我删除文本列,那么:

  • MyRocks - 21.6 MB
  • Cassandra - 11 MB

对这种行为有什么想法吗?

最佳答案

上述行为的原因是由于 rocksdb_block_size 设置为 4kb。由于数据 block 较小,压缩器发现要压缩的数据量较小。将它设置为 16kb 解决了这个问题。现在我得到了与 cassandra 相似的数据大小。

关于mysql - RocksDB 与 Cassandra ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47075892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com