码迷,mamicode.com
首页 > 其他好文 > 详细

BigTable之SSTable

时间:2014-11-12 21:05:19      阅读:266      评论:0      收藏:0      [点我收藏+]

标签:blog   http   io   ar   os   sp   数据   on   2014   

  在BigTable中,数据的存储及索引被分为了三个层次,其中SSTable是数据最终在磁盘上的存储形式,SSTable的全称叫做Sorted String Table,是一个排好序的kV形式的数据的集合,SSTable的结构如下图所示:

  bubuko.com,布布扣

  左边一个图是SSTable的结构,SSTable由多个DataBlock,多个MetaBlock,一个IndexBlock及一个footer组成,数据的真正存储是在datablock中,其他的block存储的是一些管理数据,比如footer中存的是metaBlock以及indexBlock的位置、SSTable的魔鬼数字等,indexBlock是存的是dataBlock的索引,每个dataBlock的索引是它上一个dataBlock的最后一个数据的key,MetaBlock存储的是FilterBlock的位置信息等。

  右边的图是datablock的结构信息,datablock中包含了格式为key-value-crc的数据信息,包含了压缩字段record以及压缩数量。

  一个数据写入SSTable的流程如下:

                bubuko.com,布布扣

  数据的查询流程如下:

      bubuko.com,布布扣

  针对SSTable的插入和查询流程就到这,至于更新和删除的流程下次分析。

 

BigTable之SSTable

标签:blog   http   io   ar   os   sp   数据   on   2014   

原文地址:http://www.cnblogs.com/byheart/p/4093423.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!