`
flyingdutchman
  • 浏览: 360488 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

《Hbase权威指南》深入学习hbase架构(7):缓存策略

阅读更多
    HBase中的缓存只要是指在HRegion server节点之上的cache缓存。一部分用来作为memstore,起作用主要是保存最近更新的部分数据以加快客户端响应;另一部分作为blockcache,主要用于读操作。
    HRegion server会为其维护的每一个region提供一个memstore,用户的所有修改操作,首先将数据append到WAL日志,然后写到内存中的memstore中,然后就会给客户端确认修改成功。在默认情况下memstore的大小是64MB,当写到memstore中的数据大于64MB后,就会将其中的数据刷新到磁盘上持久化数据。
    每一个HRegion server上都只有一个blockcache结构,主要是用于对storefile文件的读操作的优化:storefile文件是有hbase blocks著称的,block是hbase基础的I/O单元——每次读或写数据都是按block的大小操作的(默认64KB);blockcache是基于LRU算法的,服务器每次将读取的一个block数据块保存到blockcache结构,然后在blockcache的数据量达到上线阀值(heapsize * hfile.block.cache.size * 0.85)后启动基于LRU算法的淘汰机制,将最老最不常用的block删除。
    在HRegion server响应可以查询请求的时,首先会在memstore中查询匹配的数据,没有查到的话,再到磁盘上查询storefile中的数据,系统每次读取一个block,并将其放入blockcache如果在当前的block中读到匹配的数据则直接将结果返回给客户端;否则会接着读下一个block,直到将所属region中的数据读完,最后返回结果——查到匹配的数据或返回空。
    另外需要注意的是,N * memstore + blockcache的大小总和不能大于给HRegion server配置的JVM heap堆内存的80%,否则服务器将启动不起来。
分享到:
评论

相关推荐

    hbase权威指南源代码

    《HBase权威指南》是一本深入探讨Apache HBase这一分布式列式数据库的著作。源代码是书中理论知识的实践体现,对于理解HBase的工作原理、实现机制以及如何使用HBase进行数据存储和处理非常有帮助。以下是根据标题和...

    hbase权威指南

    《HBase权威指南》不仅覆盖了HBase的基础知识和核心概念,还深入探讨了高级特性和最佳实践,是HBase学习者和使用者不可或缺的参考书籍。通过阅读本书,读者可以全面掌握HBase的工作原理、部署运维、性能调优等方面的...

    HBase大数据.zip

    《HBase实战+权威指南》这本书很可能详细涵盖了这些知识点,并通过实例和最佳实践来帮助读者深入理解和应用HBase。对于希望在大数据领域中利用HBase解决存储和处理挑战的人来说,这是一份不可多得的学习资料。

    [HBase.The.Definitive.Guide].Lars.George.文字版

    - **实施细节**:书中还深入探讨了HBase的具体实现机制,如数据分布、缓存策略等。 #### 六、安装与配置 本书的第二章详细介绍了HBase的安装过程,包括快速安装指南、配置步骤及常见问题解答等内容。这些信息对于...

    Kylin安装学习教程_KYLIN_

    在《Apache Kylin权威指南》这本书中,你将深入学习到Kylin的架构原理、最佳实践、性能调优以及高级特性,如实时Cube、联合Cube、多源数据集成等。通过本书的学习,你不仅能掌握Kylin的基本操作,还能提升解决实际...

Global site tag (gtag.js) - Google Analytics