hbase权威指南
《HBase权威指南》探讨了如何通过使用与HBase高度集成的Hadoop将HBase的可伸缩性变得简单;把大型数据集分布到相对廉价的商业服务器集群中;使用本地Java客户端,或者通过提供了REST、Avro和Thrift应用编程接口的网关服务器来访问HBase;了解HBase架构的细节,包括存储格式、预写日志、后台进程等;在HBase中集成MapReduce框架;了解如何调节集群、设计模式、拷贝表、导入批量数据和删除节点等。hbase权威指南
第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存储API21
1.4.5实现22
1.4.6小结25
1.5HBase:Hadoop25
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.3HBase使用的文件系统47
2.3.1本地模式48
2.3.2HDFS49
2.3.3S349
2.3.4其他文件系统50
2.4安装选项50
2.4.1Apache二进制发布包50
2.4.2编译源码52
2.5运行模式53
2.5.1单机模式53
2.5.2分布式模式53
2.6配置57
2.6.1hbase-site.xml与hbase-default.xml58
2.6.2hbase-env.sh59
2.6.3regionserver59
2.6.4log4j.properties59
2.6.5配置示例59
2.6.6客户端配置61
2.7部署61
2.7.1基于脚本62
2.7.2Apache Whirr63
2.7.uppet与Chef63
2.8操作集群64
2.8.1确定安装运行64
2.8.2Web UI介绍65
2.8.3Shell介绍66
2.8.4关闭集群66
第3章客户端API:基础知识68
3.1概述68
3.2CRUD操作69
3.2.1put方法69
3.2.2get方法87
3.2.3删除方法97
3.3批量处理操作107
3.4行锁110
3.5扫描114
3.5.1介绍114
3.5.2ResultScanner类117
3.5.3缓存与批量处理119
3.6各种特性125
3.6.1HTable的实用方法125
3.6.2Bytes类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.5FilterList151
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.2Coprocessor类168
4.3.3协处理器加载171
4.3.4RegionObserver类174
4.3.5MasterObserver类180
4.3.6endpoint184
4.4HTablePool190
4.5连接管理194
第5章客户端API:管理功能197
5.1模式定义197
5.1.1表197
5.1.2表属性199
5.1.3列族202
5.2HBaseAdmin207
5.2.1基本操作208
5.2.2表操作209
5.2.3模式操作217
5.2.4集群管理219
5.2.5集群状态信息222
第6章可用客户端230
6.1REST、Thrift和Avro的介绍230
6.2交互客户端233
6.2.1原生Java233
6.2.2REST233
6.2.3Thrift240
6.2.4Avro244
6.2.5其他客户端245
6.3批处理客户端246
6.3.1MapReduce246
6.3.2Hive246
6.3.ig252
6.3.4Cascading256
6.4Shell257
6.4.1基础257
6.4.2命令259
6.4.3脚本263
6.5基于Web的UI265
6.5.1master的UI265
6.5.2region服务器的UI270
6.5.3共享页面272
第7章与MapReduce集成275
7.1框架275
7.1.1MapReduce介绍275
7.1.2类276
7.1.3支撑类279
7.1.4MapReduce的执行地点279
7.1.5表拆分280
7.2在HBase之上的MapReduce281
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.1B+树299
8.1.2LSM树300
8.2存储302
8.2.1概览303
8.2.2写路径304
8.2.3文件305
8.2.4HFile格式313
8.2.5KeyValue格式316
8.3WAL316
8.3.1概述317
8.3.2HLog类318
8.3.3HLogKey类319
8.3.4WALEdit类319
8.3.5LogSyncer类319
8.3.6LogRoller类320
8.3.7回放321
8.3.8持久性324
8.4读路径325
8.5region查找328
8.6region生命周期330
8.7ZooKeeper330
8.8复制333
8.8.1Log 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.2master监控指标372
10.2.3region服务器监控指标373
10.2.4RPC监控指标375
10.2.5JVM监控指标376
10.2.6info监控指标377
10.3Ganglia378
10.3.1安装379
10.3.2用法383
10.4JMX386
10.4.1JConsole388
10.4.2JMX远程API390
10.5Nagios394
第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.2region热点405
11.4.3预拆分region406
11.5负载均衡407
11.6合并region408
11.7客户端API:最佳实践409
11.8配置411
11.9负载测试414
11.9.1性能评价414
11.9.2YCSB416
第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.2CopyTable工具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.1HBase Fsck443
12.5.2日志分析445
12.5.3常见问题447
附录AHBase配置属性451
附录B计划467
附录C版本升级469
附录D分支471
附录EHush SQL Schema473
附录F对比HBase和BigTable475
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30794-1.html
三是武器落后