重磅推荐
【编辑推荐】
“本书由HBase部署的专业团队编写。Jean-Marc和Kevin 了解这其中的一切知识。读这本书并向*出色的工程师学习。” ——Michael StackApacheHBase PMCHBase的提交者和成员亲自为本书作序,三位大数据专家亲自翻译。本书通过手把手的指导和对真实环境中案例的阐释,你将学会如何架构、设计,以及部署你自己的HBase应用程序。除了HBase原理和集群部署指南之外,本书通过对案例的深入研究,展示了大型企业如何利用HBase解决具体问题的用例。
【内容简介】
当对大量数据构建索引的时候,HBase是一个出色的工具,但是从零开始学习分布式数据库及其生态系统是一件让人望而却步的事情。通过手把手的指导和对真实环境中案例的阐释,你将学会如何架构、设计,以及部署你自己的HBase应用程序。除了HBase原理和集群部署指南之外,本书通过对案例的深入研究,展示了大型企业如何利用HBase解决具体问题的用例。本书提供了基本的解决方案和代码示例来帮助你实现自己的用例,包括主数据管理(MDM)和文件系统,以及准实时事件处理。你也能学习使用故障排除的方法来帮你避免部署时出现的一些问题。学习HBase能用来做什么,其生态系统包括哪些组件以及如何搭建你的环境。探索现实世界中HBase实例如何部署并投入生产环境。查验用于追踪监控索赔的记录用例,并诊断数据管理以及产品质量。理解HBase如何和Spark、kafka、MapReduce,以及Java API一起使用。学习如何识别*常见的HBase问题,并理解其结果。
【作者简介】
Jean-Marc Spaggiari,自2012年来是HBase的contributor,作为Cloudera 的HBase精通解决方案架构师,他一直从事着Hadoop和HBase的技术支持和咨询工作。他曾经与北美洲一些*的HBase用户一起工作。Kevin O'Dell,自2012年来是HBase的contributor,作为Rocana的现场工程师,他和客户一起设计并完成大规模的IT运营。此外,他还在HBaseCon、HadoopSummit及一些Hadoop用户组做过分享。
【媒体评论】
专家推荐“本书由HBase部署的专业团队编写。Jean-Marc和Kevin 了解这其中的一切知识。读这本书并向*出色的工程师学习。”——Michael StackApacheHBase PMC
【目录】

序 1

前言 3

*部分 HBase概述

第1章什么是HBase 11

面向列与面向行 13

实现和使用示例 13

第2章 HBase原理 15

表格式列族 15

表的内部操作 22

依赖 27

HBase 角色 27

第3章 HBase生态系统 32

监控工具 32

SQL 40

框架 42

第4章 HBase规模预估和调优概述 45

硬件 46

存储 46

网络 47

操作系统调优 48

Hadoop调优 49

HBase调优 50

负载不均调优 52

第5章环境设置 54

系统要求 55

HBase单机安装 58

虚拟机中的HBase 61

本地与VM 62

故障排除 63

*步 65

伪分布式模式和全分布式模式 73

第二部分 用例

第6章用例:HBase作为一个记录系统 77

摄取/预处理 78

处理/服务 79

用户体验 84

第7章底层存储引擎的实现 87

表设计 87

数据转换 92

HFile校验 98

批量加载 99

数据索引 104

数据检索 107

更进一步 109

第8章用例:近实时事件处理 111

摄取/预处理 114

近实时事件处理 115

处理/服务 116

第9章近实时实现事件处理 119

应用流 121

实施 125

进一步 144

第10章用例:HBase作为主数据管理工具 145

摄取 146

处理 148

第11章主数据管理工具HBase的实现 150

MapReduce与Spark 150

Spark与HBase交互 151

Spark结合HBase实现 152

进一步 162

第12章用例:文档存储 163

数据服务 165

数据摄取 166

清理 168

第13章文档存储的实现 169

MOB 169

数据一致性 174

进一步 175

第三部分疑难问题的定位和排错

第14章 region 过多 179

后果 179

原因 180

解决方案 181

防范 188

第15章列族过多 191

后果 192

原因、解决方案和预防 193

第16章热点 196

后果 196

原因 196

防范和解决方案 200

第17章超时和垃圾回收 201

后果 201

原因 203

解决方案 205

预防 205

第18章 HBCK和不一致 210

HBase文件系统布局 210

查看META 表 211

在HDFS上查看HBase 212

HBCK概述 214

使用HBCK 215


【前言】

【免费在线读】
序在我25年软件从业生涯里,经历了许多颠覆性的变化:互联网、万维网、大型机、 C/S架构模型等。我曾经在一个保障炼油厂安全的软件研发团队工作。我们40人的团队共享*的一台DEC VAX机器,而且性能也远不及我现在使用的手机。我还记得20世纪90年代初的一天,我们被安排接收新的机器。要更换的机器位于三楼,是一个很大很重的像洗衣机大小的庞然大物。我们一群人在“机房”里等着,想看看他们是怎么把新机器搬上楼梯的。我们可以想象一下一个巨大的起重机,外面的街道被封锁的场景……总之,这是一个浩大的工程!但实际上出乎意料。一个男的提着一个小箱子走进房间。他把它放在那台像老式 “洗衣机”的机器的顶部,换了几根电缆,做了一些测试,便离开了。这样,就完成了!这是技术产业带来的喜悦:如果我们愿意学习新事物,并与之同行,我们将永远不会感到厌倦,不断地遇见惊喜。几年前似乎不可能的事情突然会变得司空见惯。大数据就是这样在变化,大数据无处不在。由谷歌公司的Google File System和BigTable引发的技术变革几乎影响了所有的高科技公司、银行和政府。无论是好是坏,这些系统直接或间接地触及了地球上几乎每个人的生活。和它之前的BigTable一样,Apache HBase已经在大数据生态系统中处于独特的地位:它在一个不变的分布式文件系统中支持了一种可更新的、无限扩展的数据集存储。因此,它构建了纯文件存储和OLTP / OLAP数据库之间的桥梁。HBase无处不在:Facebook、苹果、Salesforce.com、Adobe、雅虎、Bloomberg、华为、Gap和许多其他公司都在使用它。谷歌采用了HBase API为其提供公共云Bigtable,这也是HBase受欢迎的一个证据。尽管HBase无处不在,但它也不是即插即用。分布式系统很难,诸如分区容忍性、一致性和可用性等在每个讨论区都变成了大家热议的话题,不久之后更深奥的术语如热点(hotspotting)和数据加盐(salting)存储也出现了。成百上千台机器的水平扩展都需要经历痛苦的数据平衡过程,这些平衡使得我们更加难以有效地使用这些系统,HBase也不例外。在混迹于HBase和Hadoop社区的这段岁月里,我已获得了这些挑战的*手经验。必须仔细设计和构建这些用例,以发挥HBase的优势。这本书由两位内部人士撰写,他们一直在现场做支持。本书是一个非常有帮助的指南,它详细介绍了如何基于HBase架构来设计应用程序,并能够支持数千台机器的集群扩展。如果你正在构建或计划构建高扩展性及高可靠性的新应用程序,那么这本书就是为你设计的。Jean-Marc 和Kevin已经看到这一切:使用案例,人们犯的错误以及单服务器系统的设计臆想。*重要的是,他们知道哪些是运行正常的,如何解决那些运行不正常的情况,以及如何理解这里面的本质。—— Lars Hofhansl,HBase的提交者和成员项目管理委员会Apache基金会成员Salesforce.com副总裁译者序 HBase 是Hadoop Database 的简称, 基于Google Bigtable 实现的开源、分布式、可伸缩的列式存储数据库,自其诞生之日起,就受到业界的追捧, 而今已成为了Hadoop 生态圈和各公司大数据平台不可或缺的组成部分。时间序列数据库Opentsdb 、阿里的HQueue、OLAP分析引擎Kylin 等很多大数据开源项目也都是基于HBase 的。 本书是HBase 应用架构的手册指南,它涵盖了HBase 实践应用的各个方面,从HBase 底层的基本原理到整个生态系统,从*初的应用实例到性能优化,以及后续的疑难问题的定位与排错等方面。同时,作者也列举了大量的实例场景及实现代码,读者都可直接从中获取实际应用原型。 本书主要由陈敏敏(苏宁云商大数据中心总监)、夏锐(奇虎360 技术专家)、陈其生(唯品会技术专家)翻译,由于译者水平所限,翻译难免有疏漏之处,愿广大读者给予批评指正。 译者
返回顶部