标签
内容简介
《HBase不睡觉书》是一本面向中文读者的 HBase 技术书,作者杨曦结合自己在硅谷从事大数据与云计算工作的实践经验,试图用轻松易读的方式,把 Apache HBase 这套分布式存储系统的来龙去脉讲清楚。全书共分 9 章:先从海量数据存储遇到的瓶颈讲起,介绍关系型数据库的极限、CAP 理论与 NoSQL 的定位,说明 HBase 因何而生、适用于哪些场景;接着手把手带领读者配置服务器名与 SSH 免密登录,安装 Hadoop 单机/集群模式、ZooKeeper 与 HBase 的单机、伪分布式和完全分布式模式,并提供 HBase Web 控制台与开机自启动等实操细节。第 3 章起进入使用层面:HBase Shell 的建表、查看、插入、扫描、删除等命令,以及借助 Hue 查看数据;随后是客户端 API 的入门写法、CRUD 与批量操作、Scan 扫描与数据格式支持。进阶部分深入 HBase 内部,讲述 WAL 预写日志、MemStore、HFile、KeyValue 以及 Region 定位,剖析读写请求的真实路径;再介绍过滤器与协处理器的用法、Admin 管理功能,包括列族、表、Region、快照与可见性标签管理。最后两章聚焦性能与生态:JVM 调优、Region 拆分与合并、WAL、BlockCache、Memstore 与 HFile 合并优化,并给出诊断手册;以及 HBase 与 MapReduce 结合的编写与部署方法。书中刻意采用非线性阅读的结构,方便读者按需跳到对应章节。
编辑推荐
书名起得俏皮,内容却相当实在。作者直言写作动机:阻碍人学新技术的往往不是难度,而是看技术书时挡不住的困意,于是立志写一本看下去不会睡着的 HBase 书。全书结构围绕“先上手、再深入、后调优”展开:第 2、3 章先让读者真正把集群跑起来、用 Shell 摸到数据;第 4 至第 7 章围绕 Java 客户端 API 从入门讲到过滤器、协处理器与 Admin 管理;第 5 章“HBase 内部探险”用“一个 KeyValue 的历险”串起写入与读取链路,是理解架构的关键一章;第 8 章给出 JVM、Region、WAL、BlockCache、Memstore、HFile 各环节的优化思路与诊断手册,兼顾运维视角;第 9 章补齐与 MapReduce 的整合。相比译作,本书行文贴近中文读者的表达习惯,并有意纠正网上流传的过时说法(如早已废弃的三层查询架构)。适合想系统性入门 HBase、又不想被英文文档和零散博客拖住节奏的开发者与运维人员。
适合谁读
适合
- 大数据或后端开发工程师,需要在项目中实际使用 HBase 存储海量数据
- 负责 Hadoop/HBase 集群部署与运维的运维工程师、DBA
- 了解 NoSQL 概念、希望系统补齐分布式存储知识的在校学生
- 需要向团队讲解 HBase 架构与调优思路的技术负责人
不适合
- 完全没有 Java、Linux 与 Hadoop 基础,希望从零学编程的读者
- 只想要 HBase 官方文档式 API 速查、不关心架构原理的人
- 寻找 HBase 2.x 之后新特性(如异步客户端、新 Master 机制)深入解析的资深读者
阅读建议
- 作者本人不建议从头读到尾:先翻目录,按当前需求挑章节,如无环境先看第 2 章,赶项目看第 4 章
- 第 5 章“HBase 内部探险”建议至少读两遍,配合自己搭的集群观察 WAL、MemStore、HFile 的实际文件
- 学习时跟着书中步骤在虚拟机或容器中搭一套三节点集群,边敲命令边验证,效果远胜纯阅读
- 第 8 章调优内容可在遇到性能瓶颈时回查,并结合官方文档确认版本差异与参数有效性
出版社简介
清华大学出版社
中国 · 成立于 1980 年
清华大学出版社创立于1980年,库内收录图书57种,涵盖科学科普、医学、健康、法律、哲学读物与社科等方向。代表图书既有菠萝(李治中)的《癌症·真相:医生也在读》《癌症·新知》等医学科普作品,也有《阳光是最好的防腐剂:全球反腐大要案快递》等法律类读物,以及七格的《脑洞大开的哲学简史》、刘云浩的《从互联到新工业革命》等。作者资源包括科普作家、医学研究者、中国人民大学反贪硕士班及高校学者,体现出兼顾学术性与大众阅读的出版特色。因公开资料有限,此处仅依据库内图书归纳其出版方向。
目录
- 第1章 初识HBase
- 1.1 海量数据与NoSQL
- 1.1.1 关系型数据库的极限
- 1.1.2 CAP理论
- 1.1.3 NoSQL
- 1.2 HBase是怎么来的
- 1.3 为什么要用HBase
- 1.4 你必须懂的基本概念:部署架构、存储架构、与关系型数据库的对比
- 第2章 让HBase跑起来
- 2.1 本书测试环境 / 2.2 配置服务器名 / 2.3 配置SSH免密登录
- 2.4 安装Hadoop:单机模式、集群模式、ZooKeeper、Hadoop HA、开机自启动
- 2.5 安装HBase:单机模式、伪分布式模式、完全分布式模式、Web控制台、数据块编码与压缩器
- 第3章 HBase基本操作
- 3.1 hbase shell的使用:create、list、describe、put、scan、get、delete、drop等
- 3.2 使用Hue来查看HBase数据
- 第4章 客户端API入门
- 4.1 10分钟教程 / 4.2 30分钟教程
- 4.3 CRUD一个也不能少:HTable与Table接口、put、append、increment、get、delete
- 4.4 批量操作 / 4.5 BufferedMutator / 4.6 Scan扫描 / 4.7 HBase支持什么数据格式
- 第5章 HBase内部探险
- 5.1 数据模型 / 5.2 HBase是怎么存储数据的:预写日志、MemStore、HFile、KeyValue
- 5.3 一个KeyValue的历险:写入与读出 / 5.4 Region的定位
- 第6章 客户端API的高阶用法
- 6.1 过滤器:快速入门、比较运算、分页过滤器、行键/列/单元格过滤器、自定义过滤器
- 6.2 协处理器:协处理器家族、快速入门、如何加载、观察者与终端程序
- 第7章 客户端API的管理功能
- 7.1 列族管理 / 7.2 表管理 / 7.3 Region管理 / 7.4 快照管理
- 7.5 维护工具管理:均衡器、规整器、目录管理器
- 7.6 集群状态以及负载 / 7.7 Admin的其他方法 / 7.8 可见性标签管理
- 第8章 再快一点
- 8.1 Master和RegionServer的JVM调优
- 8.2 Region的拆分 / 8.3 Region的合并
- 8.4 WAL的优化 / 8.5 BlockCache的优化 / 8.6 Memstore的优化 / 8.7 HFile的合并
- 8.8 诊断手册:阻塞急救、读取性能调优、案例分析
- 第9章 当HBase遇上MapReduce
- 9.1 为什么要用MapReduce / 9.2 快速入门 / 9.3 编写自己的MapReduce
- 9.4 相关类介绍:TableMapper、TableReducer、TableMapReduceUtil
常见问题
这本书适合零基础读者吗?
不完全适合。书中假定读者具备基本的 Java 与 Linux 操作能力,并会安装 Hadoop 环境;若完全没有相关背景,建议先补齐 Linux 命令、Java 基础与 Hadoop 入门,再回来看本书第 1、2 章。
书中的 HBase 版本较老,现在读会过时吗?
本书出版于 2018 年,主要基于当时的 1.x 版本,部分参数与类名在新版本中已变化。但数据模型、Region 拆分合并、WAL/MemStore/HFile 等核心原理变化不大,建议原理部分精读,API 与配置部分对照官方文档核实。
为什么叫“不睡觉书”?
作者在前言中解释:阻碍人们学习新技术的最大障碍往往不是难度,而是难以抵挡的困意,因此希望写一本让人看了不会睡着的 HBase 技术书,用轻松的语言和递进的结构降低阅读门槛。
需要有 Hadoop 基础才能读吗?
第 2 章会手把手带读者安装 Hadoop 与 ZooKeeper,所以零 Hadoop 经验也能跟上部署流程;但理解 HDFS、MapReduce 的基本概念会让第 9 章及集群排错部分顺畅很多。
书里有配套源码或实验环境吗?
书中各章附有命令行示例与 Java 代码片段,第 9 章还完整演示了 MapReduce 项目的建立、打包与部署流程,读者可据此自行搭建实验环境;建议以书中步骤为蓝本在自己的集群上复现。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。
作者简介
杨曦
作者
杨曦,公开资料有限的作者,库内收录其作品两种。从现有书目看,他的写作涉及两个相距较远的方向:一是围绕现代人际关系展开的《友尽:探索现代友谊的潜能与边界》,关注友谊在当代生活中的形态、限度与可能,属于励志成长类;二是《中国式现代化与云南乡村文化振兴:中国乡村社会大调查乡村文化振兴专题调研报告》,以云南乡村为对象,讨论乡村文化振兴的调研成果,归入文化类。两种作品题材差异明显,显示作者既能面向大众读者处理日常情感议题,也能进入社会调查与区域文化研究的领域。由于生平信息暂缺,其身份背景、专业训练与写作立场尚难确认,读者可结合上述两部作品了解其关注方向与表达方式。