美文网首页
Cassandra 读机制

Cassandra 读机制

作者: 伊凡的一天 | 来源:发表于2017-10-31 18:18 被阅读77次

    1. Cassandra 读操作

    Cassandra 读操作主要经过以下几个步骤:

    (1)读memtable

    (2)如果开启了row cache, 读row cache

    (3)读Bloom Filter,Bloom filter用于检查当前查询的partition key位于哪一个SSTable中。

    (4)如果开启了partition key cache,读partition key cache。partition key cache是partition index的缓存。

    (5)如果partition key cache命中了partition key,直接从compression offset map中获取数据的地址。如果partition key cache没有命中,那么读取partition summary,读取partition summary之后从partition index(存储了partition key和其对应的offset)中获得数据的offset。partition summary是一个存储了部分partition index的内存数据结构,它存储了间隔X个的partition index,例如,X=20,那么partition index会存储第一个partition key,第20个partition key,第40个partition key。。。

    (6)通过compression offset map获得数据的地址。

    (7)从磁盘上的SSTable获得数据。

    Read Data

    参考: 深入理解Cassandra中的数据建模 | 领域修炼之路 How is data read?

    相关文章

      网友评论

          本文标题:Cassandra 读机制

          本文链接:https://www.haomeiwen.com/subject/kfgbpxtx.html