您的位置:首页 > 其它

HBase安装及简单使用

2016-12-12 22:05 183 查看

一、HBase伪分布式安装

依赖

hdfs:启动hdfs

zookeeper:bin/zkServer.sh start

下载解压

tar -zxvf hbase-0.98.6-hadoop2-bin.tar.gz -C /opt/modules/


conf/zoo.cfg

将conf/zoo.cfg 中的dataDir的目录修改为:
dataDir=/opt/modules/zookeeper-3.4.5/data




修改配置文件

hbase-env.sh

export JAVA_HOME=/opt/modules/jdk1.7.0_67
export HBASE_MANAGES_ZK=false


hbase-site.xml

需要创建datas目录

<property >
<name>hbase.tmp.dir</name>
<value>/opt/modules/hbase-0.98.6-hadoop2/datas</value>
</property>
<property >
<name>hbase.rootdir</name>
<value>hdfs://hadoop-senior01.ibeifeng.com:8020/hbase</value>
</property>
<property >
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop-senior01.ibeifeng.com</value>
</property>


regionserver

hadoop-senior01.ibeifeng.com

替换jar包

删掉lib目录下15个hadoop的jar包,1个zookeeper的jar包,重新上传jar包



启动hbase进程

bin/hbase-daemon.sh start master

bin/hbase-daemon.sh start regionserver





http://hadoop-senior01.ibeifeng.com:60010



region的概念

分区,初始的表默认只有一个region

hbase中的存储按照rowkey存储,rowkey存储在region中

hbase的命令行

bin/hbase shell




二、HBase的简单使用

namespace (shell中删除需要按下Ctrl键)

创建:create_namespace ‘ns_name’

查看:list_namespace

描述:describe_namespace ‘student’

删除:drop_namespace ‘ns_name’



table

创建:注意:创建表时必须指定表名及列簇

create ‘t1’, ‘f1’, ‘f2’, ‘f3’ 会直接创建表t1



create ‘student:stu_info’, ‘info’



查看:list,ns_name:tb_name :唯一确定一张表,除默认namespace



描述: 一个大括号表示一个列簇

desc ‘student:stu_info’



desc ‘t1’



删除

企业中规范:删除时必须先禁用表,修改表,先禁用-修改-启用

disable 't2'
—-》后
drop 't2'


表的DML



put 'ns1:t1', 'r1', 'c1', 'value'(ns1:t1'—表名;'r1'—行rowkey;'c1'—列;'value'—列值)
put 'student:stu_info','20161204_1001','info:name','laosi'
put 'student:stu_info','20161204_1001','info:age','18'
put 'student:stu_info','20161204_1001','info:sex','male'
put 'student:stu_info','20161204_1002','info:name','laoer'
put 'student:stu_info','20161204_1002','info:age','20'
put 'student:stu_info','20161204_1003','info:name','laosan'
put 'student:stu_info','20161204_1003','info:age','22'




get :查询最快的方式,必须指定rowkey:

get 'student:stu_info','20161204_1001'




scan:全局扫描,企业中不常用:scan ‘student:stu_info’



scan + 过滤:企业中最常用的方式,速度仅次于get

scan 'student:stu_info',{STARTROW=>'20161204_1002'}




scan 'student:stu_info',{STARTROW=>'20161204_1001',STOPROW=>'20161204_1002'}


STARTROW ,STOPROW包头不包尾



scan 'student:stu_info'{STARTROW=>'20161204_1001',RAW => true, VERSIONS => 10}






delete 'student:stu_info','20161204_1003','info:name




改:hbase中没有改的概念
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hbase