热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

读取路径和压缩偏移图

如何解决《读取路径和压缩偏移图》经验,为你挑选了1个好方法。

我试图了解Cassandra的读取路径,但无法理解为什么我们需要压缩偏移量映射。

https://docs.datastax.com/zh-CN/cassandra/3.0/cassandra/dml/dmlAboutReads.html

分区索引位于磁盘上,并存储所有映射到其偏移量的分区键的索引。

压缩偏移量映射将指针存储到磁盘上可以找到所需分区数据的确切位置。

为什么我们都需要它们?为什么分区索引不能将指针存储到磁盘上的确切位置?

很抱歉,我有一个愚蠢的标题,但这就是stackoverflow要求我的,我不能使用“如果有分区索引,为什么我们需要压缩偏移量映射?”



1> Chris Lohfin..:

该文件被压缩为块。默认情况下,将压缩64k的数据,然后再压缩64k等。索引文件中写入的偏移量是未压缩数据的偏移量。这是因为在写入时,它知道到目前为止已写入了多少字节,因此每当启动新分区时都使用它来标记。压缩偏移量映射了压缩偏移量及其未压缩位置,因此它知道要开始解压缩的块,以到达索引的某个未压缩偏移量到达分区。

如果一个分区存在于64k压缩块的中间,则需要对整个块进行解压缩。由于压缩算法的工作原理,您无法开始阅读其中的内容。这就是为什么在某些情况下减小块大小的原因,因为这会减少读取微小分区的开销。


推荐阅读
author-avatar
东cz莞痴
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有