HBase原理与实践

HBase原理与实践

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

HBase PMC成员与网易资深工程师倾力打造,深入HBase内核,抽丝剥茧,剖析HBase数据库的底层原理与开发运维。

内容简介

本书系统介绍HBase基本原理与运行机制,融入了作者多年的开发经验与实践技巧。

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

作者简介

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

章节目录

版权信息

前言

第1章 HBase概述

1.1 HBase前生今世

1.2 HBase数据模型

1.2.1 逻辑视图

1.2.2 多维稀疏排序Map

1.2.3 物理视图

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

1.3 HBase体系结构

1.4 HBase系统特性

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

2.1 跳跃表

2.2 LSM树

2.3 布隆过滤器

2.4 设计KV存储引擎MiniBase

第3章 HBase依赖服务

3.1 ZooKeeper简介

3.2 HBase中ZooKeeper核心配置

3.3 HDFS简介

3.4 HBase在HDFS中的文件布局

第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.6 HFile文件查看工具

5.4.7 HFile V3版本

5.5 BlockCache

5.5.1 LRUBlockCache

5.5.2 SlabCache

5.5.3 BucketCache

第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.4 从HFile中读取待查找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.6 Compaction相关注意事项

7.2 Compaction高级策略

第8章 负载均衡实现

8.1 Region迁移

8.2 Region合并

8.3 Region分裂

8.4 HBase的负载均衡应用

第9章 宕机恢复原理

9.1 HBase常见故障分析

9.2 HBase故障恢复基本原理

9.3 HBase故障恢复流程

9.4 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 同步复制和异步复制对比

第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进阶

第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 HBCK

12.6 HBase核心参数配置

12.7 HBase表设计

12.8 Salted Table

第13章 HBase系统调优

13.1 HBase GC调优

13.2 G1GC性能调优

13.3 HBase操作系统调优

13.4 HBase-HDFS调优策略

13.5 HBase读取性能优化

13.5.1 HBase服务器端优化

13.5.2 HBase客户端优化

13.5.3 HBase列簇设计优化

13.6 HBase写入性能调优

13.6.1 HBase服务器端优化

13.6.2 HBase客户端优化

第14章 HBase运维案例分析

14.1 RegionServer宕机

14.2 HBase写入异常

14.3 HBase运维时问题分析思路

第15章 HBase 2.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 项目测试

附录A HBase热门问题集锦

HBase原理与实践是2019年由机械工业出版社出版,作者胡争。

得书感谢您对《HBase原理与实践》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
边缘计算原理与实践 电子书
本书对边缘计算的发展历史与趋势、几种典型的边缘计算技术的基本架构与原理进行了阐述,并对边缘计算涉及的关键技术与最新进展、部署方案、应用场景与实践进行了详细讲解。本书涉及的内容广泛、技术思想凝炼,突出核心原理和关键技术的阐述,同时力图深入讲解边缘计算开源平台的使用过程。本书对从事边缘计算技术研发的专业人士、网络运营管理人员、相关专业高校学生以及对边缘计算技术感兴趣的读者,都具有一定的参考价值。
深度学习原理与 TensorFlow实践 电子书
本书介绍了深度学习原理与TensorFlow实践。着重讲述了当前学术界和工业界的深度学习核心知识:机器学习概论、神经网络、深度学习。着重讲述了深度学习的实现以及深度学习框架TensorFlow:Python编程基础、TensorFlow编程基础、TensorFlow模型、TensorFlow编程实践、TensorFlowLite和TensorFlow.js、TensorFlow案例--医学应用和S
推荐系统技术原理与实践 电子书
本书系统介绍推荐系统的技术理论和实践。首先介绍推荐系统的基础知识;然后介绍推荐系统常用的机器学习和深度学习模型;接着重点介绍推荐系统的4层级联架构,包括召回、粗排、精排和重排,以及谷歌、阿里巴巴等大型互联网公司在4层级联架构中的模型设计和实现原理;紧接其后介绍多目标排序在推荐系统中的应用,具体介绍阿里巴巴、谷歌等大型互联网公司的实践;最后从不同角度审视推荐系统,介绍公平性问题、知识蒸馏、冷启动等各
分布式架构原理与实践 电子书
本书从软件结构的发展历史入手,描述了分布式架构的特性和存在的问题,并围绕这些问题展开了分析和实践。
软件定义网络核心原理与应用实践 电子书
本书分为核心原理和应用实践两大部分,对软件定义网络(SDN)技术进行了全面剖析和深入解读。第一部分首先阐述了SDN的设计思想与体系架构,详细分析了软件定义网络的控制转发分离和可编程性两个突出属性,其次介绍了以OpenFlow为代表的SDN南向接口协议,以及北向和东向接U协议,接下来根据SDN的层次化架构,依次介绍了SDN数据平面、控制平面以及SDN应用案例,最后梳理总结J,SDN标准化进展以及学术