|
【作 者】 |
杨曦 |
|
【出 版 社】 |
清华大学出版社 |
|
【索 书 号】 |
TP393.071 Y303 |
|
【馆藏地点】 |
东201书库(工业技术类) |
|
|
|
|
内容提要:
HBase是Apache旗下一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。利用HBase技术可在廉价的PC服务器上搭建大规模的存储化集群,使用HBase可以对数十亿级别的大数据行实时性的高性能读写,在满足高性能的同时还保证了数据存取的原子性。本书共分为9章,由浅深地讲解HBase概念、安装、配置、部署,让读者对HBase先有一个感性认识,再从应用角度介绍了高级用法、监控和性能调优。既兼顾了初学者,也适用于想要深学习HBase的读者。本书适合于以前没有触过HBase,或者了解HBase,并希望能够深掌握的读者,适合HBase应用发人员和系统管理人员学习使用。HBase是Apache旗下一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。利用HBase技术可在廉价的PC服务器上搭建大规模的存储化集群,使用HBase可以对数十亿级别的大数据行实时性的高性能读写,在满足高性能的同时还保证了数据存取的原子性。本书共分为9章,由浅深地讲解HBase概念、安装、配置、部署,让读者对HBase先有一个感性认识,再从应用角度介绍了高级用法、监控和性能调优。既兼顾了初学者,也适用于想要深学习HBase的读者。本书适合于以前没有触过HBase,或者了解HBase,并希望能够深掌握的读者,适合HBase应用发人员和系统管理人员学习使用。
目录:
前言
如何才能不睡着地看本书
如何才能不睡着地看所有书
这本书不是HBase知识大全
技术支持与致谢
第1章初识HBase
1.1海量数据与NoSQL
1.1.1关系型数据库的极限
1.1.2 CAP理论
1.1.3 NoSQL
1.2 HBase是怎么来的
1.3为什么要用HBase
1.4你必须懂的基本概念
1.4.1部署架构
1.4.2存储架构
1.4.3跟关系型数据库的对比
第2章让HBase跑起来
什么是单点故障
2.1本书测试环境
2.2配置服务器名
2.3配置SSH免密登录
2.4安装Hadoop
2.4.1安装Hadoop单机模式
2.4.2安装Hadoop集群模式
2.4.3 ZooKeeper
2.4.4配置Hadoop HA
2.4.5让Hadoop可以开机自启动
2.4.6最终配置文件
2.5安装HBase
2.5.1单机模式
2.5.2伪分布式模式
2.5.3关于ZooKeeper不得不说的事
2.5.4完全分布式模式
2.5.5 HBase Web控制台(UI)
2.5.6让HBase可以开机自启动
2.5.7启用数据块编码(可选)
2.5.8启用压缩器(可选)
2.5.9数据块编码还是压缩器(可选)
第3章HBase基本操作
3.1 hbase shell的使用
3.1.1用create命令建表
3.1.2用list命令来查看库中有哪些表
3.1.3用describe命令来查看表属性
3.1.4用put命令来插入数据
3.1.5用scan来查看表数据
3.1.6用get来获取单元格数据
3.1.7用delete来删除数据
3.1.8用deleteall删除整行记录
3.1.9用disable来停用表
3.1.10用drop来删除表
3.1.11 shell命令列表
3.2使用Hue来查看HBase数据
3.2.1准备工作
3.2.2安装Hue
3.2.3配置Hue
3.2.4使用Hue来查看HBase
第4章客户端API入门
4.1 10分钟教程
4.2 30分钟教程
4.3 CRUD一个也不能少
4.3.1 HTable类和Table接口
4.3.2 put方法
4.3.3 append方法
4.3.4 increment方法
4.3.5 get方法
4.3.6 exists方法
4.3.7 delete方法
4.3.8 mutation方法
4.4批量操作
4.4.1批量put操作
4.4.2批量get操作
4.4.3批量delete操作
4.5 BufferedMutator(可选)
4.6 Scan扫描
4.6.1用法
4.6.2缓存
4.7 HBase支持什么数据格式
4.8总结
第5章HBase内部探险
5.1数据模型
5.2 HBase是怎么存储数据的
5.2.1宏观架构
5.2.2预写日志
5.2.3 MemStore
5.2.4 HFile
5.2.5 KeyValue类
5.2.6增删查改的真正面目
5.2.7数据单元层次图
5.3一个KeyValue的历险
5.3.1写入
5.3.2读出
5.4 Region的定位
第6章客户端API的高阶用法
6.1过滤器
6.1.1过滤器快速入门
6.1.2比较运算快速入门
6.1.3分页过滤器
6.1.4过滤器列表
6.1.5行键过滤器
6.1.6列过滤器
6.1.7单元格过滤器
6.1.8装饰过滤器
6.1.9自定义过滤器
6.1.10如何在hbase shell中使用过滤器
6.2协处理器
6.2.1协处理器家族
6.2.2快速入门
6.2.3如何加载
6.2.4协处理器核心类
6.2.5观察者
6.2.6终端程序
第7章客户端API的管理功能
7.1列族管理
7.2表管理
7.3 Region管理
7.4快照管理
7.5维护工具管理
7.5.1均衡器
7.5.2规整器
7.5.3目录管理器
7.6集群状态以及负载(ClusterStatus & ServerLoad)
7.7 Admin的其他方法
7.8可见性标签管理
7.8.1快速入门
7.8.2可用标签
7.8.3用户标签
7.8.4单元格标签
第8章再快一点
8.1 Master和RegionServer的JVM调优
8.1.1先调大堆内存
8.1.2可怕的Full GC
8.1.3 Memstore的专属JVM策略MSLAB
8.2 Region的拆分
8.2.1 Region的自动拆分
8.2.2 Region的预拆分
8.2.3 Region的强制拆分
8.2.4推荐方案
8.2.5总结
8.3 Region的合并
8.3.1通过Merge类合并Region
8.3.2热合并
8.4 WAL的优化
8.5 BlockCache的优化
8.5.1 LRUBlock Cache
8.5.2 SlabCache
8.5.3 Bucket Cache
8.5.4组合模式
8.5.5总结
8.6 Memstore的优化
8.6.1读写中的Memstore
8.6.2 Memstore的刷写
8.6.3总结
8.7 HFile的合并
8.7.1合并的策略
8.7.2 compaction的吞吐量限制参数
8.7.3合并的时候HBase做了什么
8.7.4 Major Compaction
8.7.5总结
8.8诊断手册
8.8.1阻塞急救
8.8.2朱丽叶暂停
8.8.3读取性能调优
8.8.4案例分析
第9章当HBase遇上MapReduce
9.1为什么要用MapReduce
9.2快速入门
9.3慢速入门:编写自己的MapReduce
9.3.1准备数据
9.3.2新建项目
9.3.3建立MapReduce类
9.3.4建立驱动类
9.3.5打包、部署、运行
9.4相关类介绍
9.4.1 TableMapper
9.4.2 TableReducer
9.4.3 TableMapReduceUtil