【发布时间】:2020-07-02 22:15:29
【问题描述】:
背景
我目前正在单节点集群上使用 Apache Cassandra 运行测试。我已经使用 nodetool status 确保集群已启动并运行,我已经完成了大量的读写操作,并且我确信我的集群设置正确。我现在正试图通过将 SSD 安装到 Cassandra 写入数据的目录来加快吞吐量。
我的解决方案
Cassandra 数据的写入位置通常是 /var/lib/cassandra/data,但是我已经使用 cassandra.yaml 切换到另一个位置,我已经安装了我的 SSD。我通过watch du -h 和其他方法检查数据目录内容的大小,确保Cassandra 正在写入该位置。我安装 SSD 的目录包括表数据、提交日志、提示、嵌套数据目录和 saved_caches。
问题
我一直在使用 YCSB 基准测试(请参阅https://github.com/brianfrankcooper/YCSB)来测试 Cassandra 的平均吞吐量和操作/秒。我注意到在 Cassandra 写入数据的位置安装 HDD 和 SSD 时,平均吞吐量没有差异。我通过dstat -cd --disk-util --disk-tps 分析了磁盘访问,发现在多个实例中 HDD 的 CPU 使用率都达到上限,而 SSD 在某些情况下仅飙升至 80% 左右。
问题
如何通过 HDD 使用 SSD 来加快 Cassandra 的吞吐量?我认为这是安装 SSD 的正确位置,但 Cassandra 是否没有利用其额外的处理能力?任何帮助将不胜感激!
【问题讨论】:
-
您是否使用 hdd 和 ssd 监控磁盘活动?
-
刚刚用信息更新了我的问题,感谢您的建议!
标签: cassandra hard-drive throughput solid-state-drive