【小牛学堂】之HBASE快速上手.docxVIP

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

HBASE 快速上手HBASE简介1.1 HBASE是什么HBASE是一个数据库HBASE是一个分布式的数据库(MASTER, REGION SERVER)HBASE的数据存放在HDFS中( hdfs://hdp01:9000/hbase/)1.2 HBASE的特点HBASE是一个nosql数据库(表结构跟关系型数据库不一样/查询语法不支持SQL)HBASE可以在线扩容(增加REGION SERVER即可)HBASE 存储容量巨大无比4、HBASE不支持事务(除了行级事务),只支持单表查询1.3 HBASE应用场景需要存储的数据量很大,而且往往是与日俱增的对数据的查询需求往往比较简单比如: 移动运营商的详单查询系统/淘宝的历史交易记录查询HBASE的表结构2.1 回顾mysql的表结构Id (int)Name (varchar) Age (int) Gender (varchar)01angelababy18female02liyuchun20unknown特点: 1、建表时需要指定表中字段定义(字段个数,字段名称,字段数据类型)插入数据时,就可以不需要指定字段信息Insert into table t_user values(03,”fengjie”,30,”female”)在使用过程中,如果某一行想插入更多字段,需要将整个表结构进行修改,增加一个字段(其他历史数据就会产生的空间浪费)2.2 HBASE的表结构HBASE在建表时只需要指定表名和列簇名即可(系统会内置一个行键字段,名为ROWKEY,但是值由用户插入数据时自己指定,并且必须表内全局唯一)2、插入数据时,每一行的字段定义都可以不一样,只是插入的数据都要指定字段名称t_user行键Base_info :列簇名Extra_info:列簇名Rk01Id:01,Name:angelababy,age:18,gender:femaleHobbies:paonan,boyfriend:laoduanRk02Id:02,nickname:chunge,size:36A/2Zuopin:xxx,girlfriend:zengye从上表可以看出,其实HBASE中存放的数据就是KV对,每一行存的kv对数量和字段名都可以不同Hbase中存放的每一个kv对,叫做一个cell,每一个cell中的v可以被hbase存储多个历史版本 (更正上图)注:默认保存的版本为1个由于HBASE中的一个表中的数据量可能很大很大(几百亿行*几十亿列),所以,这个表的查询/更新等操作会分给多台REGION SERVER来负责,此时,一个表就被逻辑上被按范围切分成了N多个REGIONHBASE中所存放的数据没有类型可言,全部都是byte[] ,数据的类型完全由用户自己来管理。这样也有一个好处:任何东西都可以往HBASE中存/取HABSE的安装 3.1 先安装zookeeper先安装jdk/配网络等系统环境上传zookeeper的安装包修改zk的配置文件 conf/zoo.cfg# The number of milliseconds of each ticktickTime=2000initLimit=10syncLimit=5dataDir=/root/zkdataclientPort=2181server.1=hdp01:2888:3888server.2=hdp02:2888:3888server.3=hdp03:2888:3888创建数据目录及建立myid文件在hdp01的/root/zkdata下创建一个文件myid,内容是:1echo 1 /root/zkdata/myid在hdp02的/root/zkdata下创建一个文件myid,内容是:2echo 2 /root/zkdata/myid在hdp01的/root/zkdata下创建一个文件myid,内容是:3echo 3 /root/zkdata/myid将hdp01上配好的zookeeper安装包复制给其他两台机器scp -r zookeeper/ hdp02:$PWDscp -r zookeeper/ hdp03:$PWD对每一个节点检查防火墙状态,关闭防火墙service iptables statusservice iptables stopchkconfig iptables off启动zookeepera、可以一台一台地去起启动命令: /root/apps/zookeeper/bin/zkServer.sh start检查状态:/root/apps/zookeeper/bin/zkServer.sh statusb、也可以自己写一个批量启动脚本,进行自动化地起:vi startzk.sh#!/bin/bashfor host

文档评论(0)

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

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

1亿VIP精品文档

相关文档