HBase不睡觉书

HBase不睡觉书 pdf epub mobi txt 电子书 下载 2025

杨曦 著
图书标签:
  • HBase
  • 大数据
  • NoSQL
  • 数据库
  • 分布式
  • 存储
  • 运维
  • 开发
  • 性能优化
  • 技术
想要找书就要到 静思书屋
立刻按 ctrl+D收藏本页
你会得到大惊喜!!
出版社: 清华大学出版社
ISBN:9787302490555
版次:1
商品编码:12280151
包装:平装
开本:16开
出版时间:2018-01-01
用纸:胶版纸
页数:403
字数:666000
正文语种:中文

具体描述

产品特色

编辑推荐

本书目的是让读者看了不会睡着的HBase技术书。因为我们坚信看一本非常重要,但是一看就想睡的书是一次痛苦的经历。
我们希望这本书能够给读者带来一次愉快而轻松的阅读经历,并在其中顺便学会HBase的安装部署、主要功能、架构设计、性能优化与周边项目。
本书适合HBase的初学者,欲深入了解HBase配置、部署、优化和二次开发的软件工程师,以及任何对云计算或者NoSQL相关技术感兴趣的读者。

内容简介

HBase是Apache旗下一个高可靠性、高性能、面向列、可伸缩的分布式存储系统。利用HBase技术可在廉价的PC服务器上搭建大规模的存储化集群,使用HBase可以对数十亿级别的大数据进行实时性的高性能读写,在满足高性能的同时还保证了数据存取的原子性。
本书共分为9章,由浅入深地讲解HBase概念、安装、配置、部署,让读者对HBase先有一个感性认识,再从应用角度介绍了高级用法、监控和性能调优。既兼顾了初学者,也适用于想要深入学习HBase的读者。
本书适合于以前没有接触过HBase,或者了解HBase,并希望能够深入掌握的读者,适合HBase应用开发人员和系统管理人员学习使用。

作者简介

杨曦,就职于硅谷某上市公司,对大数据、云计算等技术有较深研究以及丰富的项目实践经验。热衷编写开源项目、撰写技术博客以及折腾各种技术项目。

目录


目 录

第1章 初识HBase 1
1.1 海量数据与NoSQL 1
1.1.1 关系型数据库的极限 1
1.1.2 CAP理论 1
1.1.3 NoSQL 2
1.2 HBase是怎么来的 3
1.3 为什么要用HBase 3
1.4 你必须懂的基本概念 4
1.4.1 部署架构 4
1.4.2 存储架构 7
1.4.3 跟关系型数据库的对比 9
第2章 让HBase跑起来 11
2.1 本书测试环境 12
2.2 配置服务器名 12
2.3 配置SSH免密登录 13
2.4 安装Hadoop 15
2.4.1 安装Hadoop单机模式 15
2.4.2 安装Hadoop集群模式 20
2.4.3 ZooKeeper 23
2.4.4 配置Hadoop HA 27
2.4.5 让Hadoop可以开机自启动 35
2.4.6 最终配置文件 41
2.5 安装HBase 43
2.5.1 单机模式 45
2.5.2 伪分布式模式 47
2.5.3 关于ZooKeeper不得不说的事 51
2.5.4 完全分布式模式 52
2.5.5 HBase Web控制台(UI) 58
2.5.6 让HBase可以开机自启动 58
2.5.7 启用数据块编码(可选) 60
2.5.8 启用压缩器(可选) 65
2.5.9 数据块编码还是压缩器(可选) 70
第3章 HBase基本操作 71
3.1 hbase shell的使用 71
3.1.1 用create命令建表 72
3.1.2 用list命令来查看库中有哪些表 73
3.1.3 用describe命令来查看表属性 73
3.1.4 用put命令来插入数据 74
3.1.5 用scan来查看表数据 76
3.1.6 用get来获取单元格数据 77
3.1.7 用delete来删除数据 77
3.1.8 用deleteall删除整行记录 79
3.1.9 用disable来停用表 80
3.1.10 用drop来删除表 80
3.1.11 shell命令列表 81
3.2 使用Hue来查看HBase数据 121
3.2.1 准备工作 121
3.2.2 安装Hue 124
3.2.3 配置Hue 127
3.2.4 使用Hue来查看HBase 132
第4章 客户端API入门 134
4.1 10分钟教程 134
4.2 30分钟教程 141
4.3 CRUD一个也不能少 147
4.3.1 HTable类和Table接口 147
4.3.2 put方法 148
4.3.3 append方法 155
4.3.4 increment方法 157
4.3.5 get方法 158
4.3.6 exists 方法 162
4.3.7 delete方法 162
4.3.8 mutation方法 164
4.4 批量操作 166
4.4.1 批量put操作 167
4.4.2 批量get操作 167
4.4.3 批量delete操作 168
4.5 BufferedMutator(可选) 168
4.6 Scan扫描 170
4.6.1 用法 170
4.6.2 缓存 173
4.7 HBase支持什么数据格式 174
4.8 总结 175
第5章 HBase内部探险 176
5.1 数据模型 176
5.2 HBase是怎么存储数据的 178
5.2.1 宏观架构 178
5.2.2 预写日志 181
5.2.3 MemStore 183
5.2.4 HFile 184
5.2.5 KeyValue类 186
5.2.6 增删查改的真正面目 186
5.2.7 数据单元层次图 187
5.3 一个KeyValue的历险 187
5.3.1 写入 188
5.3.2 读出 188
5.4 Region的定位 189
第6章 客户端API的高阶用法 193
6.1 过滤器 193
6.1.1 过滤器快速入门 194
6.1.2 比较运算快速入门 198
6.1.3 分页过滤器 201
6.1.4 过滤器列表 203
6.1.5 行键过滤器 208
6.1.6 列过滤器 214
6.1.7 单元格过滤器 227
6.1.8 装饰过滤器 228
6.1.9 自定义过滤器 231
6.1.10 如何在hbase shell中使用过滤器 248
6.2 协处理器 249
6.2.1 协处理器家族 249
6.2.2 快速入门 251
6.2.3 如何加载 254
6.2.4 协处理器核心类 256
6.2.5 观察者 259
6.2.6 终端程序 276
第7章 客户端API的管理功能 290
7.1 列族管理 290
7.2 表管理 296
7.3 Region管理 299
7.4 快照管理 304
7.5 维护工具管理 307
7.5.1 均衡器 307
7.5.2 规整器 308
7.5.3 目录管理器 310
7.6 集群状态以及负载(ClusterStatus & ServerLoad) 311
7.7 Admin的其他方法 315
7.8 可见性标签管理 319
7.8.1 快速入门 321
7.8.2 可用标签 328
7.8.3 用户标签 329
7.8.4 单元格标签 329

第8章 再快一点 331
8.1 Master和RegionServer的JVM调优 331
8.1.1 先调大堆内存 331
8.1.2 可怕的Full GC 333
8.1.3 Memstore的专属JVM策略MSLAB 335
8.2 Region的拆分 340
8.2.1 Region的自动拆分 341
8.2.2 Region的预拆分 345
8.2.3 Region的强制拆分 347
8.2.4 推荐方案 347
8.2.5 总结 347
8.3 Region的合并 348
8.3.1 通过Merge类合并Region 348
8.3.2 热合并 348
8.4 WAL的优化 349
8.5 BlockCache的优化 351
8.5.1 LRUBlockCache 352
8.5.2 SlabCache 353
8.5.3 BucketCache 354
8.5.4 组合模式 356
8.5.5 总结 357
8.6 Memstore的优化 357
8.6.1 读写中的Memstore 358
8.6.2 Memstore的刷写 358
8.6.3 总结 361
8.7 HFile的合并 361
8.7.1 合并的策略 361
8.7.2 compaction的吞吐量限制参数 374
8.7.3 合并的时候HBase做了什么 377
8.7.4 Major Compaction 378
8.7.5 总结 380
8.8 诊断手册 380
8.8.1 阻塞急救 380
8.8.2 朱丽叶暂停 381
8.8.3 读取性能调优 384
8.8.4 案例分析 385
第9章 当HBase遇上MapReduce 389
9.1 为什么要用MapReduce 389
9.2 快速入门 389
9.3 慢速入门:编写自己的MapReduce 391
9.3.1 准备数据 391
9.3.2 新建项目 392
9.3.3 建立MapReduce类 393
9.3.4 建立驱动类 396
9.3.5 打包、部署、运行 400
9.4 相关类介绍 402
9.4.1 TableMapper 402
9.4.2 TableReducer 403
9.4.3 TableMapReduceUtil 403

前言/序言

前 言

为什么要叫不睡觉书呢?因为我们发现阻碍人们学习新技术最大的障碍不是技术的难度或者条件的限制,而是学习技术时难以抵挡的困意,所以我们的目标就是写一本让人看了不会睡着的HBase技术书籍。希望大家可以通过这本书成功地入门HBase技术。
为什么要写这本书?
? 目前网上关于HBase的知识比较零碎,缺乏系统性。翻译的作品,语言的组织又不符合国人的习惯。
? 目前的资料都很旧。连英文的资料很多都过时了,比如现在很多的书籍和网上的资料都还在介绍三层查询架构,可是HBase早已经改成二层查询架构了。实际操作到的跟书上的操作不一样,这很让人沮丧。

如何才能不睡着地看本书
作为本书的作者我强烈不建议大家从头按顺序地读到尾,这不是一种好的读书方式,而且极容易睡着。看书应该是非线性的,先扫一遍目录,然后只看适合自己的,最后再发散式地补看别的章节。
? 如果你手头没有合适的环境,或者你想快速了解HBase能干什么,或者你是公司的运维,想知道怎么搭建HBase,“第2章 让HBase跑起来”适合你。
? 如果公司的运维帮你搭好了环境,老板催着你赶紧做出项目,那么请直接看“第4章 客户端API入门”。
? 如果你更关心HBase是如何实现它的数据结构的,建议你直接看“第5章 HBase内部探险”。
? 如果你想知道HBase如何提升性能,建议你直接看“第8章 再快一点”。
如果你还是觉得困,那肯定不是这本书的关系,是你的确缺乏睡眠,请马上去睡觉,有精神了再来看书。看得慢,看得少都没有关系,千万别困着看!

如何才能不睡着地看所有书
为什么我们看技术书籍总是犯困呢?
因为技术书籍必须把方法和知识点都写全面,否则容易误导读者,你可以把技术书籍看成是一本电话黄页。我们总是错误地以为既然要学习,那么每一个知识点、每一个方法都不能错过,所以认真地精读每一本技术书籍。你想象一下,如果你精读一本电话黄页,会不会感到疲劳?会不会忍不住睡去?
其实不光是读本书,学习所有的技术书籍都应该掌握正确的方法。那就是:跳着看,具体地说就是不要针对每一个API方法都精读,这样很容易迷失在一长串的API方法列表中,感到疲劳,导致无法坚持下去;而是针对某个知识点精细地掌握某一个方法,亲自实践这一个方法,然后别的方法快速略读过去,等回头需要用的时候再回来查阅。我们需要把每一本技术书籍都看成入门教程+技术手册,第一遍阅读的时候把每个知识点挑出一个方法作为入门,把其他方法当作技术手册来查阅,你总不会想细读一本电话黄页吧。
本书在很多地方都给出了阅读提示,提醒大家不要精读,该略过的部分就要勇敢地略过。

这本书不是HBase知识大全
这本书的目的只是让你学会HBase。有些知识点并没有涉及,比如集群备份、ACL权限控制、REST客户端等,所以想学习这些知识的同学们可能要失望了。我只能让你们愉快地入门,更深层次的知识就看你们自己的努力了!

技术支持与致谢
如果你在看本书的时候发现了一些问题或者不足之处,请发邮件给alexyang11@qq.com告诉我。
部分彩色图片可以到下面网址(注意数字与字母大小写)下载:
https://pan.baidu.com/s/1slqjJnZ
最后感谢我的家人、朋友、同事对我编写本书的帮助,感谢清华大学出版社的夏毓彦编辑,感谢HBase Team的Ted Yu,没有他们的帮助,我不可能完成本书!



著者
2017年11月于硅谷


《星河织梦》 内容简介 在遥远的未来,人类的足迹早已超越了太阳系的边界,广袤的宇宙成为了我们探索与生存的舞台。然而,这片璀璨的星海并非宁静的乐土,古老的传说、未知的文明以及潜藏的危机,如同织锦般交织在这浩瀚的时空中,构成了《星河织梦》所描绘的宏大画卷。 故事的主角,是年轻而天赋异禀的星际拓荒者——艾莉亚。她出生在一个名为“晨曦”的边陲殖民星球,那里生活着一群勤劳而坚韧的人们,他们依靠着世代相传的技艺,在贫瘠的土地上辛勤耕耘,与严酷的宇宙环境抗争。艾莉亚自幼便对星空充满了好奇,常常在夜晚仰望那片闪烁的星辰,幻想着探索未知世界的奥秘。她的内心深处,埋藏着一个更加宏大的梦想——寻找传说中失落的“伊甸星团”,那里据说蕴藏着能够净化被污染星系的强大力量,也是她故乡人民赖以生存的希望。 然而,艾莉亚的旅程并非一帆风顺。在她踏上征途的那一刻,便卷入了一系列波澜壮阔的事件之中。首先,她遇到了神秘的“星语者”——一个古老种族的后裔,他们拥有能够与宇宙中能量场沟通的独特能力。这位星语者,名叫泽菲尔,他看中了艾莉亚身上潜藏的特殊潜力,并决定引导她去理解宇宙的深层规律,掌握那些超越凡人理解的力量。 与此同时,一股名为“吞噬者”的暗影势力也开始在宇宙中蔓延。吞噬者并非血肉之躯,而是一种能够汲取星球生命力,将其转化为自身能量的奇特存在。他们的出现,使得原本就脆弱的星际生态系统雪上加霜,无数文明因此灭亡,只留下荒芜的星体和绝望的哭泣。吞噬者的首领,被尊称为“寂灭”,他是一个古老而强大的个体,他的目标似乎是吞噬整个宇宙,将一切化为虚无。 艾莉亚的冒险,就这样在寻找“伊甸星团”的使命、泽菲尔的教导以及对抗“吞噬者”的战争中展开。她乘坐着一艘由她父亲亲手打造的,名为“星尘号”的飞船,穿越了色彩斑斓的星云,潜入了黑暗的虫洞,拜访了古老而神秘的异星文明。 在她的旅途中,她结识了形形色色的伙伴。有身经百战的雇佣兵,他们刀口舔血,却有着一颗侠义之心;有来自高度发达文明的学者,他们带来了先进的科技知识,帮助艾莉亚理解宇宙的奥秘;甚至还有一些奇特的生命形式,它们以我们无法想象的方式存在,却给予了艾莉亚意想不到的帮助。 艾莉亚的探索,不仅仅是地理上的跨越,更是心灵上的成长。她需要学会如何信任他人,如何与不同的文明建立联系,如何在绝望中寻找希望,如何在力量与责任之间找到平衡。她逐渐认识到,宇宙的和谐并非自然而然,而是需要无数生灵共同守护。 在寻找“伊甸星团”的过程中,艾莉亚和她的伙伴们逐渐揭开了宇宙深处的秘密。他们发现,“吞噬者”并非单纯的毁灭者,它们的出现,是宇宙自身能量失衡的体现。而“伊甸星团”,也并非一个简单的避难所,它是一种能够引导宇宙能量流动,重塑星际生态的古老智慧。 故事的高潮,发生在“寂灭”集结其力量,准备对宇宙心脏——“创世核心”发起最后攻击之时。这个核心是整个宇宙能量的源头,一旦被摧毁,整个宇宙将陷入永恒的黑暗。艾莉亚和她的同伴们,必须在最后的时刻,赶往“创世核心”,阻止“寂灭”的阴谋。 这是一场关乎宇宙存亡的终极之战。艾莉亚将运用她所学到的一切,包括星语者的教导,以及她从不同文明那里获得的智慧,去对抗“寂灭”那压倒性的力量。这场战斗,不仅仅是力量的较量,更是意志的对抗,是希望与绝望的碰撞。 《星河织梦》描绘了一幅波澜壮阔的星际史诗。它不仅仅是一个关于冒险和战斗的故事,更是一个关于成长、关于希望、关于文明之间联系的深刻寓言。在浩瀚的星辰之下,人类以及其他种族,都在为生存与繁荣而努力,他们用智慧、勇气和爱,在这片无垠的宇宙中,编织着属于自己的壮丽梦想。 故事的结局,并非简单的胜利或失败,而是一种对未来的展望。艾莉亚最终能否成功阻止“寂灭”?“伊甸星团”的力量是否能够拯救濒临灭亡的宇宙?这些问题的答案,将由读者在阅读过程中,随着艾莉亚的脚步,一同去探索和感受。 《星河织梦》将带领读者进入一个充满想象力的宇宙,感受宇宙的壮丽与神秘,体味生命的脆弱与坚韧,理解个体在宏大命运中的意义。这是一个献给所有仰望星空,心怀梦想的探索者的故事。

用户评价

评分

这本书的价值,在于它提供了一种“深度”的学习路径。在阅读《HBase不睡觉书》之前,我对HBase的理解更多停留在“能用”的层面,而这本书让我开始思考“为什么能用”以及“如何能更好地用”。作者在书中并没有回避HBase的一些潜在问题和挑战,比如数据倾斜、热点问题等等,反而深入分析了这些问题的成因,并提供了切实可行的解决方案。我特别喜欢书中关于HBase数据模型设计的探讨,它强调了根据业务场景来设计Row Key的重要性,以及如何避免常见的坑。这本书就像一位经验丰富的“老兵”,用自己多年的实战经验,为我们铺平了学习HBase的道路,让我们少走了很多弯路。即使是遇到一些比较棘手的技术难题,这本书也能为我提供解决问题的思路和方法。

评分

读完这本书,我最大的感受就是“通透”。我一直觉得,对于分布式系统,尤其是像HBase这样强一致性、高可用的数据库,理解其背后的设计哲学和实现原理至关重要。这本书在这方面做得非常出色。它并没有简单地罗列API或者配置项,而是深入浅出地剖析了HBase的架构,比如RegionServer、HMaster、ZooKeeper之间的协同工作,WAL的机制,MemStore和HFile的交互等等。作者的讲解非常细致,通过大量的图示和代码片段,把原本抽象的概念具象化了。我尤其欣赏书中关于HBase性能调优的章节,它不仅给出了通用的建议,还结合了具体的场景,比如如何根据数据访问模式调整Compaction策略,如何优化GC参数来减少延迟,这些都是实实在在能够帮助我们解决线上问题的宝贵经验。这本书就像一把钥匙,为我打开了HBase的“黑箱”,让我能够更自信地去设计、部署和维护HBase集群。

评分

作为一名对技术有着极致追求的开发者,我一直相信“不睡觉”是一种状态,是一种对知识的渴望和探索。《HBase不睡觉书》恰恰契合了我的这种追求。这本书的讲解方式非常独特,它不像传统的教材那样枯燥乏味,而是充满了作者的热情和洞察力。我惊喜地发现,书中对于HBase的一些核心算法和数据结构都有深入的分析,比如Bloom Filter、Skip List等,这些细节的讲解,让我能够更深刻地理解HBase的性能优势。更重要的是,这本书在讲解原理的同时,也提供了大量的实践指导,让我能够快速地将学到的知识应用到实际工作中。我尤其欣赏书中关于HBase集群运维的章节,它详细介绍了如何进行监控、告警、备份恢复等操作,这些都是保证HBase稳定运行的关键。这本书让我真正体验到了“不睡觉”的乐趣,它激发了我对HBase更深层次的探索欲望。

评分

这本书的标题《HBase不睡觉书》实在太吸引人了,我当时就觉得这个名字本身就蕴含着一种技术人的执着和对知识的不懈追求。拿到书的时候,我首先被它的装帧所打动,纸张的质感很好,印刷清晰,即使是深夜阅读,也不会觉得刺眼。我本身是一名从事大数据开发的工程师,平时工作接触HBase的机会不多,但随着业务的深入,对分布式数据库的理解变得越来越迫切。拿到这本书,我并没有立刻翻开,而是把它放在我的案头,有时候只是看着它,就能感受到一种无形的能量。我喜欢这种“养书”的感觉,仿佛在等待一个合适的时机,去深入地探索它所蕴含的奥秘。我期待这本书能带我走出对HBase的浅层认知,进入一个更深邃、更系统的学习阶段。我希望它不仅仅是一本技术手册,更像是一位经验丰富的导师,用一种不厌其烦、循序渐进的方式,带领我领略HBase的精髓。我特别喜欢那种层层递进的讲解方式,从基础概念到高级特性,再到实际应用中的问题排查,都能安排得明明白白。

评分

坦白说,我拿到《HBase不睡觉书》的时候,并没有抱太大的期望。市面上关于HBase的书籍不少,但很多都流于表面,要么过于理论化,要么过于碎片化。然而,这本书彻底颠覆了我的看法。它用一种非常接地气的方式,讲述了HBase从入门到精通的整个过程。我特别喜欢作者在讲解一些复杂概念时,举的那些贴近实际开发场景的例子。比如,在讲解HBase的写流程时,它并没有止步于WAL和MemStore,而是进一步分析了写入过程中可能遇到的性能瓶颈,以及如何通过调整参数来优化。书中对于HBase的容错机制和高可用性设计也有着非常详尽的阐述,这对于构建稳定可靠的分布式系统至关重要。读完这本书,我感觉自己对HBase的理解不再是零散的知识点,而是一个完整的体系,能够融会贯通,灵活运用。

评分

提弄居民的出行需求。你在哪里上班吗。你

评分

讲hbase的书籍,这本比较新,不过书上要求的实验环境比较高!

评分

还没仔细看,至少看大纲还是不错的

评分

HBase 的书籍很多,这本也算是很有特色了~~~~~~~~

评分

提弄居民的出行需求。你在哪里上班吗。你

评分

感觉还行 我觉得可以 可能是能看懂吧

评分

HBase不睡觉书

评分

过年看的,可惜没看完,还是不错,有启迪吧

评分

书还是不错的,但是有个别错别字,且油墨味太重了

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有