描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787115493835
Hadoop生态系统的HDFS和MapReduce分别为大数据提供了存储和分析处理能力,但是对在线实时的数据存取则爱莫能助,而HBase弥补了Hadoop的这一缺陷,满足了在线实时系统低延时的需求。
本书以精炼的语言介绍HBase基础知识,让初学者能够快速上手使用HBase,对HBase 的核心架构思想(如数据读取、数据备份等)有深入的了解,并且剖析HBase源码,介绍HBase 1.X 以及2.0带来的新特性,让有经验的HBase开发人员也能够循序渐进地深入理解HBase源码,以便更好地去调试和解决线上遇到的各种问题。
本书更加专注于HBase在线实时系统的调优,同时不乏企业HBase实际应用场景,理论联系实际,非常适合大数据开发人员、大数据运维人员和Hadoop生态开发人员参考和阅读。
本书适合有一定Java基础的程序员作为HBase入门教程,HBase运维人员可以将本书作为参考手册来部署和监控HBase,正在将HBase应用到在线生产环境中的软件开发人员也可以参考本书来调优HBase在线集群性能。
第1章 HBase简介 1
1.1 背景 1
1.2 NoSQL与传统RDBMS 2
1.3 应用场景 3
1.3.1 Facebook用户交互数据 3
1.3.2 淘宝TLog等 3
1.3.3 小米云服务 4
1.3.4 用户行为数据存储 4
第2章 HBase安装 5
2.1 单机部署 5
2.1.1 前置条件 5
2.1.2 下载HBase 6
2.1.3 配置HBase 6
2.1.4 启动HBase 6
2.1.5 HBase初体验 7
2.2 分布式部署 8
2.2.1 环境准备 9
2.2.2 ZooKeeper安装 11
2.2.3 Hadoop安装 12
2.2.4 HBase安装 23
2.2.5 启动集群 28
2.3 集群增删节点 29
2.3.1 增加节点 29
2.3.2 删除节点 30
第3章 HBase数据模型 33
3.1 逻辑模型 33
3.2 物理模型 35
第4章 HBase shell 39
4.1 数据定义语言 39
4.1.1 创建表 39
4.1.2 查看所有表 40
4.1.3 查看建表 40
4.1.4 修改表 41
4.2 数据操纵语言 41
4.2.1 Put 41
4.2.2 Get 42
4.2.3 Scan 43
4.2.4 删除数据 45
4.3 其他常用shell 46
4.3.1 复制状态查看 46
4.3.2 分区拆分 47
4.3.3 分区主压缩 47
4.3.4 负载均衡开关 48
4.3.5 分区手动迁移 48
第5章 模式设计 49
5.1 行键设计 50
5.2 规避热点区间 52
5.3 高表与宽表 54
5.4 微信朋友圈设计 55
5.4.1 需求定义 55
5.4.2 问题建模 55
第6章 客户端API 61
6.1 Java客户端使用 61
6.2 数据定义语言 64
6.2.1 表管理 64
6.2.2 分区管理 66
6.3 数据操纵语言 68
6.3.1 Put 68
6.3.2 Get 70
6.3.3 Scan 72
6.3.4 Delete 74
6.3.5 Increment 76
6.4 过滤器 78
6.4.1 过滤器简介 78
6.4.2 过滤器使用 81
6.5 事务 94
6.5.1 原子性 95
6.5.2 隔离性 95
第7章 架构实现 101
7.1 存储 101
7.1.1 B 树 101
7.1.2 LSM树 102
7.1.3 WAL 104
7.2 数据写入读取 107
7.2.1 定位分区服务器 107
7.2.2 数据修改流程 108
7.2.3 数据查询流程 113
第8章 协处理器 115
8.1 观察者类型协处理器 115
8.2 端点类型协处理器 132
8.3 装载/卸载协处理器 136
8.3.1 静态装载/卸载 136
8.3.2 动态装载/卸载 137
第9章 HBase性能调优 141
9.1 客户端调优 141
9.1.1 设置客户端写入缓存 141
9.1.2 设置合适的扫描缓存 143
9.1.3 跳过WAL写入 143
9.1.4 设置重试次数与间隔 144
9.1.5 选用合适的过滤器 144
9.2 服务端调优 145
9.2.1 建表DDL优化 145
9.2.2 禁止分区自动拆分与压缩 150
9.2.3 开启机柜感知 151
9.2.4 开启Short Circuit Local Reads 153
9.2.5 开启补偿重试读 154
9.2.6 JVM内存调优 155
第10章 集群间数据复制 163
10.1 复制 164
10.1.1 集群拓扑 165
10.1.2 配置集群复制 166
10.1.3 验证复制数据 169
10.1.4 复制详解 171
10.2 快照 175
10.2.1 配置快照 176
10.2.2 管理快照 176
10.3 导出和导入 178
10.3.1 导出 178
10.3.2 导入 180
10.4 复制表 180
第11章 监控 183
11.1 Hadoop监控 183
11.1.1 Web监控页面 184
11.1.2 JMX监控 185
11.2 HBase监控 188
11.2.1 Web监控页面 188
11.2.2 JMX监控 190
11.2.3 API监控 192
后记 195
附录 常见问题 197
—— 李柯辰,前魅族平台事业部总经理,现卓轩科技CEO
本书在介绍HBase 基础知识的同时融入了作者在魅族云服务团队将存储系统迁移到HBase 的经验和教训,此外还在HBase源码和架构研究上有涉猎,对初学者、Java 相关开发人员和HBase 运维人员等都是一本不错的参考书。
—— 何伟
评论
还没有评论。