HBase权威指南

当前位置:首页 > 计算机网络 > 网络与数据通信 > HBase权威指南

出版社:人民邮电出版社
出版日期:2012-4
ISBN:9787564133924
作者:[美] Lars George
页数:522页

章节摘录

版权页:   The Result class When you retrieve data using the get ( ) calls,you receive an instance of the Result class that contains all the matching cells.It provides you with the means to access everything that was returned from the server for the given row and matching the specified query,such as column family,column qualifier,timestamp,and so on.There are utility methods you can use to ask for specific results-just as Example 3-8 used earlier-using more concrete dimensions.If you have,for example,asked the server to return all columns of one specific column family,you can now ask for specific columns within that family.In other words,you need to call get( ) with just enough concrete information to be able to process the matching data on the client side.The functions provided are: byte[] getValue(byte[] family,byte[] qualifier) byte[] value( ) byte[] getRow( ) int size( ) boolean isEmpty( ) KeyValue[ ] raw( ) List list( ) The getValue( ) call allows you to get the data for a specific cell stored in HBase.As you cannot specify what timestamp-in other words,version-you want,you get the new—est one.The value( ) call makes this even easier by returning the data for the newest cell in the first column found.Since columns are also sorted lexicographically on the server,this would return the value of the column with the column name (including family and qualifier) sorted first.You saw getRow( ) before: it returns the row key,as specified when creating the current instance of the Get class,size ( ) is returning the number of KeyValue instances the server has returned.You may use this call-or isEmpty( ),which checks if size( ) returns a number greater than zero-to check in your own client code if the retrieval call returned any matches.

内容概要

Lars George,HBase项目组成员,他是cloudera的解决方案架构师,提供了关于Hadoop和HBase的技术支持、咨询服务和培训工作。他曾经在多个不同的Hadoop用户组会议发言,并且在如布鲁塞尔的自由及开源软件开发者欧洲会议(FOSDEM)这样的大型会议中发言。

书籍目录

第1章 简介 1
1.1 海量数据的黎明 1
1.2 关系数据库系统的问题 5
1.3 非关系型数据库系统Not-Only-SQL(简称NoSQL) 7
1.3.1 维度 9
1.3.2 可扩展性 12
1.3.3 数据库的范式化和反范式化 12
1.4 结构 15
1.4.1 背景 15
1.4.2 表、行、列和单元格 16
1.4.3 自动分区 20
1.4.4 存储API 21
1.4.5 实现 22
1.4.6 小结 25
1.5 HBase:Hadoop数据库 25
1.5.1 历史 26
1.5.2 命名 27
1.5.3 小结 27
第2章 安装 28
2.1 快速启动指南 28
2.2 必备条件 31
2.2.1 硬件 31
2.2.2 软件 37
2.3 HBase使用的文件系统 47
2.3.1 本地模式 48
2.3.2 HDFS 49
2.3.3 S3 49
2.3.4 其他文件系统 50
2.4 安装选项 50
2.4.1 Apache二进制发布包 50
2.4.2 编译源码 52
2.5 运行模式 53
2.5.1 单机模式 53
2.5.2 分布式模式 53
2.6 配置 57
2.6.1 hbase-site.xml与hbase-default.xml 58
2.6.2 hbase-env.sh 59
2.6.3 regionserver 59
2.6.4 log4j.properties 59
2.6.5 配置示例 59
2.6.6 客户端配置 61
2.7 部署 61
2.7.1 基于脚本 62
2.7.2 Apache Whirr 63
2.7.3 Puppet与Chef 63
2.8 操作集群 64
2.8.1 确定安装运行 64
2.8.2 Web UI介绍 65
2.8.3 Shell介绍 66
2.8.4 关闭集群 66
第3章 客户端API:基础知识 68
3.1 概述 68
3.2 CRUD操作 69
3.2.1 put方法 69
3.2.2 get方法 87
3.2.3 删除方法 97
3.3 批量处理操作 107
3.4 行锁 110
3.5 扫描 114
3.5.1 介绍 114
3.5.2 ResultScanner类 117
3.5.3 缓存与批量处理 119
3.6 各种特性 125
3.6.1 HTable的实用方法 125
3.6.2 Bytes类 127
第4章 客户端API:高级特性 129
4.1 过滤器 129
4.1.1 过滤器简介 129
4.1.2 比较过滤器 132
4.1.3 专用过滤器 139
4.1.4 附加过滤器 147
4.1.5 FilterList 151
4.1.6 自定义过滤器 153
4.1.7 过滤器总结 159
4.2 计数器 160
4.2.1 计数器简介 160
4.2.2 单计数器 163
4.2.3 多计数器 164
4.3 协处理器 166
4.3.1 协处理器简介 167
4.3.2 Coprocessor类 168
4.3.3 协处理器加载 171
4.3.4 RegionObserver类 174
4.3.5 MasterObserver类 180
4.3.6 endpoint 184
4.4 HTablePool 190
4.5 连接管理 194
第5章 客户端API:管理功能 197
5.1 模式定义 197
5.1.1 表 197
5.1.2 表属性 199
5.1.3 列族 202
5.2 HBaseAdmin 207
5.2.1 基本操作 208
5.2.2 表操作 209
5.2.3 模式操作 217
5.2.4 集群管理 219
5.2.5 集群状态信息 222
第6章 可用客户端 230
6.1 REST、Thrift和Avro的介绍 230
6.2 交互客户端 233
6.2.1 原生Java 233
6.2.2 REST 233
6.2.3 Thrift 240
6.2.4 Avro 244
6.2.5 其他客户端 245
6.3 批处理客户端 246
6.3.1 MapReduce 246
6.3.2 Hive 246
6.3.3 Pig 252
6.3.4 Cascading 256
6.4 Shell 257
6.4.1 基础 257
6.4.2 命令 259
6.4.3 脚本 263
6.5 基于Web的UI 265
6.5.1 master的UI 265
6.5.2 region服务器的UI 270
6.5.3 共享页面 272
第7章 与MapReduce集成 275
7.1 框架 275
7.1.1 MapReduce介绍 275
7.1.2 类 276
7.1.3 支撑类 279
7.1.4 MapReduce的执行地点 279
7.1.5 表拆分 280
7.2 在HBase之上的MapReduce 281
7.2.1 准备 281
7.2.2 数据流向 286
7.2.3 数据源 291
7.2.4 数据源与数据流向 293
7.2.5 自定义处理 296
第8章 架构 299
8.1 数据查找和传输 299
8.1.1 B+树 299
8.1.2 LSM树 300
8.2 存储 302
8.2.1 概览 303
8.2.2 写路径 304
8.2.3 文件 305
8.2.4 HFile格式 313
8.2.5 KeyValue格式 316
8.3 WAL 316
8.3.1 概述 317
8.3.2 HLog类 318
8.3.3 HLogKey类 319
8.3.4 WALEdit类 319
8.3.5 LogSyncer类 319
8.3.6 LogRoller类 320
8.3.7 回放 321
8.3.8 持久性 324
8.4 读路径 325
8.5 region查找 328
8.6 region生命周期 330
8.7 ZooKeeper 330
8.8 复制 333
8.8.1 Log Edit的生命周期 334
8.8.2 内部机制 335
第9章 高级用法 339
9.1 行键设计 339
9.1.1 概念 339
9.1.2 高表与宽表 341
9.1.3 部分键扫描 342
9.1.4 分页 343
9.1.5 时间序列 344
9.1.6 时间顺序关系 348
9.2 高级模式 350
9.3 辅助索引 350
9.4 搜索集成 354
9.5 事务 357
9.6 布隆过滤器 358
9.7 版本管理 361
9.7.1 隐式版本控制 361
9.7.2 自定义版本控制 364
第10章 集群监控 366
10.1 介绍 366
10.2 监控框架 367
10.2.1 上下文、记录和监控指标 367
10.2.2 master监控指标 372
10.2.3 region服务器监控指标 373
10.2.4 RPC监控指标 375
10.2.5 JVM监控指标 376
10.2.6 info监控指标 377
10.3 Ganglia 378
10.3.1 安装 379
10.3.2 用法 383
10.4 JMX 386
10.4.1 JConsole 388
10.4.2 JMX远程API 390
10.5 Nagios 394
第11章 性能优化 395
11.1 垃圾回收优化 395
11.2 本地memstore分配缓冲区 398
11.3 压缩 399
11.3.1 可用的编解码器 400
11.3.2 验证安装 401
11.3.3 启用压缩 403
11.4 优化拆分和合并 404
11.4.1 管理拆分 404
11.4.2 region热点 405
11.4.3 预拆分region 406
11.5 负载均衡 407
11.6 合并region 408
11.7 客户端API:最佳实践 409
11.8 配置 411
11.9 负载测试 414
11.9.1 性能评价 414
11.9.2 YCSB 416
第12章 集群管理 421
12.1 运维任务 421
12.1.1 减少节点 421
12.1.2 滚动重启 423
12.1.3 新增服务器 424
12.2 数据任务 428
12.2.1 导入/导出 428
12.2.2 CopyTable工具 433
12.2.3 批量导入 435
12.2.4 复制 438
12.3 额外的任务 440
12.3.1 集群共存 440
12.3.2 端口要求 442
12.4 改变日志级别 442
12.5 故障处理 443
12.5.1 HBase Fsck 443
12.5.2 日志分析 445
12.5.3 常见问题 447
附录A HBase配置属性 451
附录B 计划 467
附录C 版本升级 469
附录D 分支 471
附录E Hush SQL Schema 473
附录F 对比HBase和BigTable 475

编辑推荐

《HBase权威指南(影印版)(英文版)》提供了很多有意义的答案,无论你是否正在评估这种非关系型数据库或者正试图立刻把它付诸实践。

作者简介

《HBase权威指南》探讨了如何通过使用与HBase高度集成的Hadoop将HBase的可伸缩性变得简单;把大型数据集分布到相对廉价的商业服务器集群中;使用本地Java客户端,或者通过提供了REST、Avro和Thrift应用编程接口的网关服务器来访问HBase;了解HBase架构的细节,包括存储格式、预写日志、后台进程等;在HBase中集成MapReduce框架;了解如何调节集群、设计模式、拷贝表、导入批量数据和删除节点等。
《HBase权威指南》适合使用HBase进行数据库开发的高级数据库研发人员阅读。

图书封面


 HBase权威指南下载



发布书评

 
 


精彩短评 (总计38条)

  •     内容翔实 实例丰富 好像是第4章 略显拖沓
  •     系统的读一遍还是有很多的好处的。
  •     很不错,值得收藏的书之一。
  •     很不错,英文原版,这个HBase 列式数据,本来就是很新的技术,在大的业界巨头使用,是开源的处理海量数据的不错的解决方案,很符合国情。好好学习,对数据挖掘和数据分析来说是个不错的选择的
  •     HBase的权威指南
  •     还在努力学习中,希望能吸收别人的精华
  •     一方面继承了XXX Definitive Guide冗长没人味的传统,另一方面继承了汉译技术书语死早的传统
  •     可惜hbase的中文书籍太少了
  •     這本書講得很細,很全面。技術深度也夠。
  •     还不错。nosql应用到企业领域一直没有成功的经验!我一直在探索一条道路。
  •     书不错挺喜欢的
  •     对hbase的原理有详细描述,不错的一本书~
  •     hbase的必读书
  •     可以,帮学生买的
  •     hbase国内就那三本书,作为入门书籍不错,有些地方还需要细化,讲的粗点
  •     质量不错的原版
  •     应该是正版,就是书背后有点折痕,不过书本来就是用来阅读的 也无所谓了
  •     对java api有详细的介绍。更多的时候是看hbase官网的帮助手册。
  •     HBASE的最权威的书籍,
  •     英文版的,很好的一本书。
  •     走马观花过了一遍,了解了大概脉络,留待以后有需要时细翻。
  •     书不错,算是有关HBase入门级教材吧,不过是英文版的,对那些英语不好的同学来说就有点吃力了,不过网上有HBase的官方温文档的中文翻译,先看完那个,再来看这本书就容易不少了,不过有关HBase的实验确实有点难做,尤其是搭建集群!
  •     前面偏基础用法,后面讲原理,实际应用方面偏少,总的来说挺全面的,用时作参考是挺好的
  •     书虽好书,不过 the definitive guide 系列有一个通病——章节前后关系不是很合理,新手看完会觉得莫名其妙。如果一定要看,还是先读一遍 XX in action 比较好。
  •     非常值得一读的hbase经典之作,不只囊括了hbase基本应用,架构方面的内容,难得的是作者结合了自身的经验给出了设计和优化方面的内容,这些内容通常是hbase初学者困惑的地方。遗憾是书中内容的hbase版本比较旧,新版的hbase在架构上有了很多变化,希望可以再版
  •     书有很多折痕,看起来不像新书
  •     感觉很一般,内容有些讲不清···
  •     hbase必看,仅有的几本书,不过覆盖还是挺全,但不深,有些地方还要看源码确认,翻译的有些地方前后不通,不知讲啥,需要查看原版,版本有点旧了,希望出新版了
  •     很好读,带你入门HBase世界。
  •     因为公司与省气象局合作的项目而看了一些基本API的介绍,项目结项就没有看了。HBase 开发用的CRUD API 还是挺简单的,就是管理与运维比较坑。
  •     内容是全英文的,当初没太注意,英文水平有待提高哦
  •     hadoop看完后需要看看这匹马
  •     发货快,书的质量很好,对我帮助很大。
  •     得看第二遍,把笔记做下来。
  •     讲解了hbase的方法面面,从部署到编程到架构到底层存储到行键设计,受益匪浅
  •     比HBase in Action强
  •     全面讲述HBase, 使用、运行原理。从使用开始,贴近实际
  •     当当网现在买书的配货速度越来越慢了,是不是该换买书的地方了?
 

外国儿童文学,篆刻,百科,生物科学,科普,初中通用,育儿亲子,美容护肤PDF图书下载,。 零度图书网 

零度图书网 @ 2024