标签分类
当前位置:首页 > 网络与数据通信电子书 > HBase电子书网盘下载
HBase权威指南 HBase权威指南
orzbook

orzbook 提供上传

资源
37
粉丝
3
喜欢
186
评论
9

    HBase权威指南 PDF 完整超清版

    HBase电子书
    • 发布时间:

    给大家带来的一篇关于HBase相关的电子书资源,介绍了关于HBase方面的内容,本书是由人民邮电出版社出版,格式为PDF,资源大小10.6 MB,乔治编写,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:8.6,更多相关的学习资源可以参阅 网络与数据通信电子书、等栏目。

  • HBase权威指南 PDF 下载
  • 下载地址:https://pan.baidu.com/s/1Mv4QiNbCD623qFJLCH_3k
  • 分享码:nh53
  • HBase权威指南 PDF

    Apache HBase项目风险管理联合会现任主席Michael Stack作序强烈推荐。

    作者Lars George是HBase Committer,HBase文本文档的关键推动者,Cloudera企业解决方法系统架构师,关键为Hadoop和HBase出示服务支持、资询和业务培训。

    它是一本详细介绍HBase內部体制的书,是*权威的HBase开发设计指南。《HBase权威指南》讨论了怎样根据应用与HBase高度集成的Hadoop将HBase的可伸缩性越来越简易;把大中型uci数据集遍布到相对性便宜的商业服务服务器集群中;应用当地Java手机客户端,或是根据出示了REST、Avro和Thrift运用编写程序插口的网关ip网络服务器来浏览HBase;掌握HBase构架的关键点,包含储存格式、预写日志、后台管理系统进程等;在HBase中集成MapReduce框架结构;掌握怎样调整集群服务器、策略模式、复制表、导进大批量统计数据和删掉连接点等。  《HBase权威指南》合适应用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 存储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

    上一篇:Julia数据科学应用  下一篇:PHP编程入门与应用

    展开 +

    收起 -

    HBase 相关电子书
    关于HBase的学习笔记
    网友NO.876870

    python 调用HBase的简单实例

    新来的一个工程师不懂HBase,java不熟,python还行,我建议他那可以考虑用HBase的thrift调用,完成目前的工作。 首先,安装thrift 下载thrift,这里,我用的是thrift-0.7.0-dev.tar.gz 这个版本 tar xzf thrift-0.7.0-dev.tar.gzcd thrift-0.7.0-devsudo ./configure --with-cpp=no --with-ruby=nosudo makesudo make install 然后,到HBase的源码包里,找到 src/main/resources/org/apache/hadoop/hbase/thrift/ 执行 thrift --gen py Hbase.thrift mv gen-py/hbase/ /usr/lib/python2.4/site-packages/ (根据python版本可能有不同) 我这里写了些调用的脚本,供大家参考 from unittest import TestCase, mainfrom thrift import Thriftfrom thrift.transport import TSocketfrom thrift.transport import TTransportfrom thrift.protocol import TBinaryProtocolfrom hbase import Hbasefrom hbase.ttypes import ColumnDescriptor, Mutation, BatchMutationclass HBaseTester: def __init__(self, netloc, port, table="staftesttable"): self.tableName = table self.transport = TTransport.TBufferedTransport( TSocket.TSocket(netloc, port)) self.protocol = TBinaryProtocol.TBinaryProtocol(self.transport) self.client = Hbase.Client(self.protocol) self.transport.open() tables = self.client.getTableNames() if self.tableName not in tables: self.__createTable() def __del__(self): self.transport.close() def __createTable(self): name = ColumnDescriptor(name='name') foo = ColumnDescriptor(name='foo') self.client.createTable(self.tableName, [name,foo]) def put(self,key……

    网友NO.612786

    python使用phoenixdb操作hbase的方法示例

    今天看看怎样在 python 中使用 phoenixdb 来操作 hbase 安装 phoenixdb 库 pip install phoenixdb 例子 首先启动 queryserver 服务 cd apache-phoenix-4.14.1-HBase-1.4-bin/bin./queryserver.py 然后使用下面代码来建立连接、创建/删除并查询表。代码比较简单,和我们通常查询关系型数据库比较类似,这里就不多说了哈。 import phoenixdbimport phoenixdb.cursorurl = 'http://localhost:8765/'conn = phoenixdb.connect(url, autocommit=True)cursor = conn.cursor()# cursor.execute("DROP TABLE users")cursor.execute("CREATE TABLE users (id INTEGER PRIMARY KEY, username VARCHAR, password VARCHAR)")cursor.execute("UPSERT INTO users VALUES (?, ?, ?)", (1, 'admin', 'Letmein'))cursor.execute("UPSERT INTO users VALUES (?, ?, ?)", (2, 'kongxx', 'Letmein'))cursor.execute("SELECT * FROM users")print cursor.fetchall()cursor = conn.cursor(cursor_factory=phoenixdb.cursor.DictCursor)cursor.execute("SELECT * FROM users WHERE id=1")user = cursor.fetchone()print user['USERNAME']print user['PASSWORD'] 最后运行这个程序看一下效果吧。 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持码农之家。 ……

    网友NO.665988

    hbase访问方式之java api

    Hbase的访问方式 1、Native Java API:最常规和高效的访问方式; 2、HBase Shell:HBase的命令行工具,最简单的接口,适合HBase管理使用; 3、Thrift Gateway:利用Thrift序列化技术,支持C++,PHP,Python等多种语言,适合其他异构系统在线访问HBase表数据; 4、REST Gateway:支持REST 风格的Http API访问HBase, 解除了语言限制; 5、MapReduce:直接使用MapReduce作业处理Hbase数据; 6、使用Pig/hive处理Hbase数据。 常用JavaAPI的用法: 1、加载配置 Configuration config = HBaseConfiguration.create(); //可以自定义配置,也可以从自定义配置文件中读取 /*config.set("hbase.zookeeper.property.clientPort", "4181"); config.set("hbase.zookeeper.quorum", "hadoop.datanode5.com,hadoop.datanode2.com,hadoop.datanode3.com"); config.set("hbase.master", "hadoop.datanode3.com\\:600000");*/ 2、表的创建、表信息修改、表删除 HBaseAdmin admin = new HBaseAdmin(config); //创建表 HTableDescriptor htd = new HTableDescriptor(tableName); htd.addFamily(new HColumnDescriptor("cf1")); htd.addFamily(new HColumnDescriptor("cf2")); admin.createTable(htd); //修改表信息 admin.disableTable(tableName); // modifying existing ColumnFamily admin.modifyColumn(tableName, new HColumnDescriptor("cf1")); admin.enableTable(tableName); //删除表 admin.disableTable(Bytes.toBytes(tableName)); admin.deleteTable(Bytes.toBytes(tableName)); 3、添加记录 /** 在多次使用时,建议用……

    网友NO.685186

    详解hbase与hive数据同步

    hive的表数据是可以同步到impala中去的。一般impala是提供实时查询操作的,像比较耗时的入库操作我们可以使用hive,然后再将数据同步到impala中。另外,我们也可以在hive中创建一张表同时映射hbase中的表,实现数据同步。 下面,笔者依次进行介绍。 一、impala与hive的数据同步 首先,我们在hive命令行执行showdatabases;可以看到有以下几个数据库: 然后,我们在impala同样执行showdatabases;可以看到: 目前的数据库都是一样的。 下面,我们在hive里面执行create databaseqyk_test;创建一个数据库,如下: 然后,我们使用qyk_test这个数据库创建一张表,执行create table user_info(idbigint, account string, name string, age int) row format delimitedfields terminated by ‘\t';如下: 此时,我们已经在hive这边创建好了,然后直接在impala这边执行showdatabases;可以看到: 连qyk_test这个数据库都没有。 接下来,我们在impala执行INVALIDATEMETADATA;然后再查询可以看到: 数据库和表都会同步过来。 好了,笔者来做个总结: 如果在hive里面做了新增、删除数据库、表或者数据等更新操作,需要执行在impala里面执行INVALIDATEMETADATA;命令才能将hive的数据同步impala; 如果直接在impala里面新增、删除数据库、表或者数据,会自动同步到hive,无需执行任何命令。 二、hive与hbase的数据同步 首先,我……

    Copyright 2018-2019 xz577.com 码农之家

    版权责任说明