hbase实战研讨.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
hbase实战研讨

Hbase操作实战 Hbase 特点 支撑高并发的读写访问。 数据基于hdfs存放,副本机制可以保证数据可靠 分布式regionserver-region模型,在横向扩展的基础上可以支撑很大的业务表的操作 读写相应速度快 分布式设计策略允许硬件故障 Hbase 关系数据库区别 hbase数据操作只有很简单插入,查询,删除,修改,清空等操作,不能实现表与表关联操作。 hbase基于列式存储,每个列族都有几个文件保存,不同列族的文件是分离的。而关系型数据库基于表格设计和行模式保存。 hbase修改和删除数据是实现上插入带有特殊标记的新记录,而关系型数据库是数据内容的替换和修改读写相应速度快 Hbase分布式,关系型数据库只能用其他方式实现 Hbase支持并发量比关系型数据库大的多,相应时间也比较快 Hbase 使用场景 数据量特别大的表。 读写量比较高。 数据要求比较高 Hbase 方式区别-api Api是hbase最常用的使用方式,通过java api操作hbase 提供线上业务数据查询数据写入等操作,是当前业务系统最常用的访问方式 Hbase 方式区别-hbase shell Hbase shell提供了常用的 管理员命令 ,来满足用户手动创建表删除表,浏览数据 测试写入数据等操作,一般用作集群管理 Hbase 方式区别-MapReducer支持 通过map reducer对hbase的数据写入和导出 1.Api写入导出 2.生成hfile文件加载进去(好处:不用把负载加到regionserver)速度比较快,单纯的mr写入 TableInputFormat对hbase 全表或者部分数据的导出(速度秒杀get ) Hbase 方式区别-phoenix Phoenix查询引擎会将SQL查询转换为一个或多个HBase scan,并编排执行以生成标准的JDBC结果集---后边会单独介绍phoenix Sql方式访问 使用方便 Phoenix scan做了很多分桶多路scan的优化 性能比原生的scan块很多 使用了索引支持sum count group等操作 Hbase Shell介绍 hbase提供了一个shell的终端给用户交互。通过执行 help get 可以看到命令的帮助信息。 使用方式/bin/hbase shell 配置好path之后可以直接使用 hbase shell 命令来使用hbase shell 交互 Hbase Shell常用操作 Table操作 create ,disable,enable ,drop,list ,describe,exists等 数据操作put,get ,scan,delete?等 其他命令:count(获取表行数),balancer命令 负载均衡,split region分离等 注意:不要使用shell scan会对集群造成压力,浏览数据可以加上{ LIMIT = 10} Hbase Api -htable 代码: HTable htable = new HTable(new Configuration(), test_t1); 线程不安全 创建连接需要花费很多时间 实现原理与技术瓶颈解决 自定义代理实现hbase连接池高性能高并发hbase访问 超时参数对于线上业务的优化 hbase.rpc.timeout:rpc的超时时间,默认60s,不建议修改,避免影响正常的业务 ipc.socket.timeout:socket建立链接的超时时间,应该小于或者等于rpc的超时时间,默认为20s 3. hbase.client.retries.number:重试次数,默认为14,可配置为3 4. hbase.client.pause:重试的休眠时间,默认为1s,可减少优化,比如100ms 5.使用异步处理(查询异步提高查询速度,task get自动超时策略) Hbase Api –Get 代码: HTable htable = new HTable(new Configuration(), test_t1); Get get = new Get(aaa.getBytes()); Result res = htable.get(get); 线上最靠谱的查询方式 Blockcache设置优化get查询 分布式(rowkey分布-hash,逆序)对查询的影响 多线程get的用法 获取列对数据查询速度的影响 Hbase Api –Scan 代码: Scan scan = new Scan(Bytes.toBytes(startTime), Bytes.toBytes(endTime)); scan.addFamily(Bytes.toBytes(v)); ResultScanner scanner

文档评论(0)

骨干 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档