在cassandra中,当很多版本的列分散在不同的SSTables中时,需要进行压缩以便更快地进行查询检索.当完成相同列或删除的更新序列时,压缩是最佳策略.但压实是一个繁重的资源利用过程.但在我的应用程序中,我只使用Cassandra插入记录并查看它们.但密钥空间大小可能会以GB为单位增长.它将拥有超过数百万条记录.对我来说,插入只是重要的.我不打算更新列或删除列.我的简单删除将在整个密钥空间.现在我怀疑是否可以禁用压缩?压缩禁用会降低查询性能吗?
1)这取决于您的数据模型.
2)Cassandra的复杂部分是读取性能,压缩改进了它.
3)即使您不打算删除或更新同一列,但如果您计划将新列插入同一行,则禁用压缩肯定会妨碍您的读取性能,因为它会增加磁盘搜索次数.
4)除了压缩完成逻辑删除收集的工作,但删除是整个键空间删除,所以这不是一个问题.
5)压缩将行片段合并在一起,删除过期的逻辑删除并重建索引,在您的情况下不需要这些.所以理论上你可以关闭压实.但是,如果布隆过滤器误报可能会影响您的读取性能,那么更多的sstable和大数据.请参阅这里的bloom过滤器:Cassandra Architecture Overview
| 归档时间: |
|
| 查看次数: |
176 次 |
| 最近记录: |