欢迎光临
免费的PDF电子书下载网站

HBase原理与实践 PDF下载

编辑推荐

这是一本深入介绍HBase系统的书籍,由HBasePMC成员与网易资深工程师倾力打造,多位技术专家联袂推荐。本书不仅用大量图片详细解剖HBase内核,还用案例展示了HBase的开发运维技巧,是一本不可能多得的高质量图书,值得每一位大数据开发运维人员放在案头深读。

 ;

内容简介

本书系统介绍HBase基本原理与运行机制,融入了作者多年的开发经验与实践技巧。主要内容包括:HBase的体系结构和系统特性,HBase的基础数据结构与算法、依赖服务、客户端,RegionServer的核心模块,HBase的读写流程,Compaction实现原理和使用策略,负载均衡的实现与应用,HBase的宕机恢复原理,复制、备份与恢复原理,HBase的运维方法、系统调优与案例分析,*后介绍了HBase 2.x的核心技术,以及一些高级话题,如二级索引、单行事务、跨行事务、HBase开发与测试等。

作者简介

胡争小米公司HBase工程师,Apache HBase PMC成员,负责Apache HBase项目研发及小米HBase集群维护,对HBase及相关分布式存储系统有很多独到的见解。开源技术爱好者,长期活跃在Apache开源社区,热衷技术分享

 ;

范欣欣现就职于网易杭州研究院数据科学中心,负责HBase以及分布式时序数据库的内核开发运维工作,对HBase的底层工作原理进行了长时间的探索和深入研究,撰写了大量有关HBase和时序数据库相关的技术文章,深受读者好评。此外,对大数据生态以及数据仓库也有深刻而独到的理解。

HBase原理与实践 PDF下载

目录

前言

第1章HBase概述

1.1HBase 前生今世

1.2HBase数据模型

1.2.1逻辑视图

1.2.2多维稀疏排序Map

1.2.3物理视图

1.2.4行式存储、列式存储、列簇式存储

1.3HBase体系结构

1.4 HBase系统特性

第2章基础数据结构与算法

2.1 跳跃表

2.2 LSM树

2.3 布隆过滤器

2.4 设计KV存储引擎Minibase

2.5拓展阅读

第3章HBase依赖服务

3.1ZooKeeper简介

3.2HDFS简介

3.4拓展阅读

第4章HBase客户端

4.1 HBase客户端实现

4.1.1 定位Meta表

4.1.2 Scan的复杂之处

4.2 HBase客户端避坑指南

第5章RegionServer的核心模块

5.1 RegionServer内部结构

5.2 HLog

5.2.1 HLog文件结构

5.2.2 HLog文件存储

5.2.3 HLog生命周期

5.3 MemStore

5.3.1 MemStore内部结构

5.3.2 MemStore的GC问题

5.3.3 MSLAB内存管理方式

5.3.4 MemStore Chunk Pool

5.3.5 MSLAB相关配置

5.4 HFile

5.4.1 HFile逻辑结构

5.4.2 HFile物理结构

5.4.3 HFile的基础Block

5.4.4 HFile中布隆过滤器相关的Block

5.4.5 HFile中索引相关的Block

5.4.6HFile文件查看工具

5.5 BlockCache

5.5.1.LRUBlockCache

5.5.2.SlabCache

5.5.3.BucketCache

5.5.4.不同BlockCache方案性能对比

5.6拓展阅读

第6章HBase读写流程

6.1 HBase写入流程

6.1.1写入流程的三个阶段

6.1.2 Region写入流程

6.1.3 MemStore Flush

6.2 BulkLoad功能

6.2.1 BulkLoad核心流程

6.2.2 BulkLoad基础案例

6.3 HBase读取流程

6.3.1 Client-Server读取交互逻辑

6.3.2 Server端Scan框架体系

6.3.3过滤淘汰不符合查询条件的HFile

6.3.4HFile中读取待查找Key

思考与练习

6.4深入理解Coprocessor

6.4.1 Coprocessor分类

6.4.2 Coprocessor加载

第7章 Compaction实现

7.1 Compaction基本工作原理

7.1.1 Compaction基本流程

7.1.2 Compaction触发时机

7.1.3 待合并HFile集合选择策略

7.1.4 挑选合适的线程池

7.1.5 HFile文件合并执行

思考与练习

7.1.6Compaction相关注意事项

7.2 Compaction高级策略

第8章负载均衡实现

8.1 Region迁移

8.2 Region合并

8.3 Region分裂

8.4 HBase的负载均衡应用

8.5拓展阅读

第9章宕机恢复原理

9.1 HBase常见故障分析

9.2 HBase故障恢复基本原理

9.3 HBase故障恢复流程

 ;

第10章复制

10.1 复制场景及原理

10.1.1管理流程的设计和问题

10.1.2复制原理

10.2 串行复制

10.2.1非串行复制导致的问题

10.2.2串行复制的设计思路

思考与练习

10.3 同步复制

10.3.1设计思路

10.3.2同步复制和异步复制对比

10.4拓展阅读

第11章备份与恢复

11.1 Snapshot概述

11.2 Snapshot创建

11.2.1 Snapshot技术基础原理

11.2.2 在线Snapshot的分布式架构——两阶段提交

11.2.3 Snapshot核心实现

11.3 Snapshot恢复

11.4 Snapshot进阶

11.5拓展阅读

第12章HBase运维

12.1 HBase系统监控

12.1.1 HBase监控指标输出方式

12.1.2 HBase核心监控指标

12.1.3 HBase表级监控

12.2 HBase集群基准性能测试

12.3 HBase YCSB

12.4 HBase业务隔离

12.5 HBase Shell

12.6 HBase HBCK

12.8 HBase核心参数配置

12.8 HBase系统相关日志

12.9 HBase表设计

第13章HBase系统调优

13.1 HBase GC调优

13.2 G1 GC性能调优

13.2.1 CMS和G1 GC的本质区别

13.2.2 测试环境

13.2.3 G1 GC核心参数

13.2.4 初始参数效果

13.3 HBase操作系统调优

13.4 HBase-HDFS调优策略

13.5 HBase读取性能优化

13.5.1HBase服务器端优化

13.5.2 HBase客户端优化

13.5.3 HBase列簇设计优化

13.6 HBase写入性能调优

13.6.1 HBase服务器端优化

13.6.2 HBase客户端优化

第14章HBase运维案例分析

14.1 RegionServer宕机

案例一:长时间GC导致RegionServer宕机

案例二:系统严重Bug导致RegionServer宕机

14.2 HBase写入异常

案例一:MemStore占用内存大小超过设定阈值导致写入阻塞

案例二:RegionServer Active Handler资源被耗尽导致写入阻塞

案例三:HDFS缩容导致部分写入异常

14.3总结: HBase运维时问题分析思路

第15章 HBase2.x核心技术

15.1 Procedure功能

15.2 In Memory Compaction

15.3 MOB对象存储

15.4 Offheap读路径和Offheap写路径

15.5异步化设计

第16章高级话题

16.1 二级索引

16.2 单行事务和跨行事务

16.3 HBase开发与测试

16.3.1 HBase社区运作机制

16.3.2项目测试

16.3.3拓展阅读

附录A ; HBase热门问题集锦

媒体评论

对于之前中文图书界的各种源码和系统解析类图书,我一直都不是很推荐。因为开源项目迭代的速度非常快,等书真正出版,里面的很多内容已经过时了。而本书避开了单纯解读源码,从原理出发对HBase进行讲解,可以做到常看常新,不会轻易过时,自然对于HBase相关从业者和爱好者是不可多得的好书。同时,本书不仅介绍分布式存储系统各种设计原理,而且还介绍在关键设计上如何取舍,对于所有对分布式存储感兴趣的读者,本书也是不可多得的优秀书籍。

----张铎HBase项目主席,HBase PMC成员,小米存储团队负责人

 ;

HBase作为Google BigTable的*开源实现,已经有十多年的历史了,目前依然在国内众多互联网公司和传统公司内应用广泛,颇有种“老当益壮”的风范。但长期以来,深入解析HBase的技术书籍比较匮乏,相信很多人都是靠着多年前的《HBase权威指南》和本书作者范欣欣的博客来入门HBase的,本书算是终于填补了这块空白,不仅有对HBase经典基础知识的详细讲解,也有对HBase 2.0版本新功能的介绍,十分全面,值得所有HBase相关从业者和爱好者入手学习。

----张洸豪HBase PMC成员,小米HBase团队负责人

 ;

HBase系统涉及分布式理论、存储、大数据处理等技术,铺开来写都可单独成书,所以深入掌握HBase难度极大。两位作者同为HBase知名专家,解决过大量疑难杂症,为社区贡献过大量代码,剖析HBase原理能做到深入浅出,更难得的是将相关原理融汇贯通,以运维调优*实践的方式呈现给我们。本书理论性和实操性俱佳,必须入手一读。

----余利华网易数据科学中心部门总监

 ;

目前在开源社区,能被市场广泛接受的分布式持久化KV存储系统不多,HBase就是其中一款优秀产品。Apache社区开放的生态环境,也使HBase得到了健康的发展,全球各数据库大会和大数据会议上,可以频繁地见到HBase的身影。从HBase整个生态链上来看,我们也可以发现像Phoenix、Omid等各种不同框架都可以建立在HBase之上,用来实现业务在SQL和事务上的不同需求。在网易内部,HBase从*初支持单一的日志存储,发展成为同时支撑各业务部门的上百个不同业务。基于HBase SSD的存储系统,在实时推荐、实时风控等场景下都得到了很好的应用,对于一般化的场景则更多,例如日志存储、订单存储、用户画像等等。希望本书能帮助读者更深入、系统地了解HBase。

----蒋鸿翔网易大数据和数据库内核团队负责人

前沿

为什么要写这本书

 ;

Apache HBase是基于Apache Hadoop构建的一个高可用、高性能、多版本的分布式NoSQL数据库,是Google BigTable的开源实现,通过在廉价服务器上搭建起大规模结构化存储集群,提供海量数据高性能的随机读写能力。

 ;

HBase项目自2006年提交第一行代码以来,直到如今,经历了13年的蓬勃发展。现在已经有大量企业采用HBase来存储和分析自身飞速增长的业务数据。从全球范围来看,国内HBase的关注度更是高居榜首,这得益于国内互联网、移动互联网、物联网等方向庞大的数据体量。诸多国内大型科技公司,如阿里巴巴、小米、腾讯、网易、华为、滴滴、快手、中国移动等等都已经把HBase作为极重要的基础依赖,很多公司对HBase社区也有长期的投入。截止到目前为止,HBase全球社区已经拥有了74位HBase Committer,而国内就有20位左右的Committer,占了近1/3的比例。近一两年,HBase在国内更是得到了长足的发展,2018年中国HBase技术社区成立,一年时间里社区在多个城市相继组织了9次线下技术沙龙活动,为HBase更好地在国内各公司茁壮成长做出了卓越的贡献。

 ;

然而,和社区用户多次交流后发现,他们都希望我们能推荐一本HBase的书。当前市面上有关HBase的书籍大部分都集中于如何使用HBase,例如HBase集群部署、客户端API以及协处理器等。诚然,这对快速掌握和使用HBase非常有好处,但是许多HBase使用者并不满足于此,他们更希望能了解和掌握其内部运行原理。因此,当机械工业出版社的编辑吴怡老师,联系到我们是否有想法为HBase写一本书时,我们毫不犹豫地就答应了。

 ;

本书会从设计的角度对HBase的整个体系架构和各核心组件进行系统的分析和讲解。与此同时,还会介绍常用的性能调优策略以及问题诊断的方法和技巧,帮助读者更好的在实际生产环境实践。另外,本书最后章节会集中介绍HBase 2.x版本的核心特性,例如Procedure v2、In Memory Compactions以及MOB等。

 ;

读者对象

本书不是一本教你如何部署HBase集群、使用HBase客户端API进行读写操作的书,本书面向那些使用HBase作为数据库后端存储的应用程序开发者、有一定经验的运维人员和对HBase内核设计感兴趣的技术极客。

如果你想深入了解HBase的每个组件是如何工作的,如果你想更好地运维或者调优你的HBase集群,如果你想了解HBase 2.x版本的核心特性,就请阅读本书。想要更好的学习本书,需要具备如下条件:

了解HBase的基本操作

了解C、Java等高级语言

对一些基本算法有所了解,因为本书会从源代码层面分析HBase的工作机制,如果你能了解这些算法,会对你的理解非常有帮助

 ;

如何阅读本书

本书有16个章节,分为6个主要部分:

第一部分:HBase基础部分,包含1、2章节。其中第1章主要介绍HBase系统的发展历史、数据模型以及体系结构,第1章节主要介绍HBase系统中常用的数据结构以及基础算法。

第二部分:HBase系统相关组件,包含3、4、5三章。其中第3章重点介绍HBase所依赖的核心组件,包括ZooKeeper、HDFS等,第4章介绍HBase客户端组件实现,第5章介绍RegionServer内部组件的实现。

第三部分:HBase核心工作原理,包含6、7、8、9、10、11六章。其中第6章介绍HBase读写流程,第7章介绍HBase Compaction的实现原理,第8章介绍HBase中Region的迁移、合并以及分裂等操作是如何实现的,第9章介绍RegionServer宕机后如何通过HLog进行数据恢复,第10章介绍HBase不同集群之间的复制是如何实现的,第11章介绍HBase如何通过Snapshot机制完成数据的备份以及恢复。

第四部分:HBase运维调优实践,包含12、13、14三章。其中第12章介绍HBase集群常用的运维管理操作,包括集群如何有效监控,基准性能如何测试等,第13章集中介绍HBase集群的常用调优技巧,第14章重点分析几个HBase实际运维案例,通过案例分析介绍HBase集群问题定位处理的方法和技巧。

第五部分:HBase 2.x核心特性,包含第15章,重点介绍HBase最新2.x版本的核心功能特性。

第六部分:HBase高级话题,包含第16章,这个章节重点介绍社区中比较热门的二级索引话题以及如何进行HBase内核的测试以及开发。

 ;

本书的六个部分都可以单独成册,读者完全可以从书中任何一个部分开始阅读。当然,如果你想更加系统的学习HBase,建议你从前往后逐章阅读。

 ;

致谢

在编写本书的过程中,我们非常感谢给予了我们如此多帮助和鼓励的朋友、家人以及同事们。首先感谢HBase官方社区的开发者,是他们极其卓越的工作让我们有机会写这样一本书。另外,还要感谢许许多多中国HBase技术社区的小伙伴,感谢他们提供的对于HBase系统实际问题以及解决方案的深入见解。同时感谢我们的家人,没有他们的鼓励和支持,本书不可能完成。最后,一份特别的感谢要送给本书策划编辑吴怡,感谢她在全书撰写过程中所给予的详细指点及其有用的建议。

HBase原理与实践 pdf下载声明

本pdf资料下载仅供个人学习和研究使用,不能用于商业用途,请在下载后24小时内删除。如果喜欢,请购买正版

pdf下载地址

版权归出版社和作者所有,下载链接已删除。如果喜欢,请购买正版!

链接地址:HBase原理与实践