标签
内容简介
《HBase实战》是 Manning 出版社《HBase in Action》的中文译本,由 ChinaHadoop 技术社区发起人谢磊翻译。全书以“边做边学”的方式组织,围绕一个虚构的 Twitter 类应用 TwitBase 展开,把 HBase 的知识点嵌进真实的开发场景中,全书分为四个部分。第一部分“HBase 基础”介绍数据管理系统的演化与 HBase 的由来、典型使用场景(增量数据抓取、内容服务、信息交换),并用 Shell 完成建表与读写;随后讲解数据模型(有序映射的映射集合、面向列族的物理模型)、表扫描、过滤器、原子操作与 ACID 语义,再延伸至 HDFS、MapReduce 与分布式 HBase 的 region 定位机制。第二部分“高级概念”进入表设计:访问模式驱动建模、反规范化、行键设计策略、读写优化与基数问题、从关系型模型到非关系型模型的迁移、列族高级配置(块大小、缓存、布隆过滤器、TTL、压缩、版本数),以及协处理器(Observer 与 Endpoint)的编写与部署,还比较了 Shell 脚本、JRuby、REST、Python Thrift 网关、asynchbase 等多种客户端。第三部分“应用系统实例”剖析 OpenTSDB 时间序列存储和在 HBase 上构建地理空间索引(geohash、最近邻查询、区域查询过滤器)。第四部分“让 HBase 运转起来”讲集群规划(原型集群到大型生产集群)、部署与日常运维。书中案例与代码来自作者多年一线实践,理论只讲到能支撑实操的程度,不要求读者事先掌握 HBase、Hadoop 或 MapReduce。
编辑推荐
很多 HBase 书把 HBase 当作一张 API 清单来讲,这本不是。两位作者都是长年在一线用 HBase 解决实际问题的人,Nick Dimiduk 早在 2008 年就用 HBase 把一批耗时二十多小时的 ETL 作业理顺,Amandeep Khurana 先后在 Amazon Elastic MapReduce 团队和 Cloudera 做方案架构。因此书中处处是“为什么这样设计”的取舍,而非“API 这样调用”。 全书的主线是一个贯穿始终的示例应用 TwitBase,从建表、读写、扫描一路走到行键设计、反规范化、协处理器和 REST/Thrift 多语言客户端,读者能完整看到一张表如何从草稿变成能扛住访问模式的设计。第三部分的 OpenTSDB 与地理空间索引两章尤其难得:前者是真实开源项目的时间序列建模复盘,后者把 geohash 空间索引拆到可动手实现的粒度,这类内容在同期中文书里并不多见。 译者是 ChinaHadoop 技术社区的发起人谢磊,术语与代码注释处理得比较贴地,适合边读边敲。需要提醒的是,本书对应的 HBase 版本较早(写作时仍在使用 -ROOT- 表),集群规模评估、region 定位等细节与当今 2.x 版本已有差异,读的时候要把原理和版本细节分开看。
适合谁读
适合
- 已经会用 Hadoop/HDFS、正准备在生产环境引入 HBase 的后端工程师
- 需要为海量稀疏数据做表结构与行键设计的数据库/数据架构师
- 做日志、时序、地理信息类系统的研发人员,想找可参考的建模案例
- 把英文原版读得吃力、希望有中文术语对照的技术读者
不适合
- 完全没接触过 Java 与分布式系统的零基础读者,前几章会很快失去抓手
- 只想查 HBase 2.x 新版 API 与运维手册的人,本书版本明显偏旧
- 需要大量 SQL 优化技巧的传统关系型数据库管理员
阅读建议
- 准备一个可运行的 HBase 伪分布式环境,边读边执行 Shell 与 Java 示例,比只看代码有效得多
- 把第 4 章行键设计当作全书核心精读,读完后回头用自己手头的业务表重做一遍设计练习
- 第 7、8 章可以当作案例拆解阅读,重点看访问模式如何推导出模式结构,不必逐行抄代码
- 阅读时注意版本差异:书中 -ROOT- 表等内容在 HBase 2.x 已取消,遇到细节请对照官方文档验证
出版社简介
人民邮电出版社
中国 · 成立于 1953 年
人民邮电出版社以科技、计算机与信息通信类图书见长,并由此延伸至摄影、艺术、软件学习与励志成长等门类,形成较为多元的出版方向。库内图书既涵盖《重构与模式(修订版)》《华为交换机学习指南(第二版)》等计算机与通信技术读物,也收录《小王子(中英法彩绘典藏纪念版)》《了不起的盖茨比》《假如给我三天光明》等双语典藏类作品;《北京十年:1980-1990》与《鬼刀 WLOP个人插画作品集》则体现其在摄影与艺术领域的布局。作者资源包括安东尼·圣埃克苏佩里、海伦·凯勒、Joshua Kerievsky、王达、张兆增与WLOP等。
目录
- 第一部分 HBase基础
- 第1章 HBase介绍
- 第2章 入门(创建表、数据操作、读写路径、数据坐标、数据模型、表扫描、过滤器、原子操作、ACID语义)
- 第3章 分布式的HBase、HDFS和MapReduce
- 第二部分 高级概念
- 第4章 HBase表设计(问题建模、反规范化、行键设计策略、IO考虑、从关系型到非关系型、列族高级配置、过滤数据)
- 第5章 使用协处理器扩展HBase(Observer协处理器、Endpoint协处理器)
- 第6章 其他的HBase客户端选择(Shell脚本、JRuby、REST、Python Thrift、asynchbase)
- 第三部分 应用系统实例
- 第7章 通过实例学习HBase:OpenTSDB
- 第8章 在HBase上查询地理信息系统(geohash空间索引、最近邻居查询)
- 第四部分 让HBase运转起来
- 第9章 部署HBase(集群规划、Master、RegionServer、ZooKeeper、云服务)
常见问题
这本书和《HBase权威指南》有什么区别?
《HBase权威指南》偏重体系结构与参考手册式的完整覆盖;《HBase实战》以示例应用为主线,把知识塞进具体开发场景,更侧重如何设计表、选行键、写协处理器和部署上线,适合先动手再看原理的读者。
没有 Hadoop 基础能读懂吗?
官方定位是不要求事先掌握 HBase、Hadoop 或 MapReduce,第 3 章专门补了 MapReduce 与 HDFS 的必要背景。但实际阅读仍然需要 Java 与分布式系统的基本概念,完全零基础会更吃力。
简体中文版是谁翻译的?
简体中文版由人民邮电出版社 2013 年出版,译者是谢磊,他是 ChinaHadoop 技术社区的发起人,长期从事企业级大数据解决方案工作。
书中的版本内容现在还适用吗?
原书写作于 HBase 0.9x 时代,书中讲到的 -ROOT- 表、客户端 API 细节与今天的 HBase 2.x 已有差别。表设计思路、行键策略、反规范化等原理性内容依然成立,但涉及具体命令与配置时应以官方文档为准。
适合用来准备面试吗?
可以用于理解 HBase 的数据模型、读写路径和表设计考量,这些是面试常问的核心。但它不是题库式速查书,仍需要自己总结成要点。
读者评论
查询本书
本站为索引目录:「全网查询」由您发起、在您的浏览器中运行,所列入口均指向第三方站点,请自行判断可用性。