HBASE基础

1、NoSQL 非关系型数据库
2、hbase是面向列存储结构,即类似于hash map
3、hbase是以hdfs作为基础存储
4、官网http://hbase.apache.org/
5、hbase的逻辑结构是由行与列族构成的,其中的行是由rowkey(行键唯一确定),列族是由多个列构成的
6、hbase中的数据都是以字节的形式存储
7、伪分布式安装Hbase:
(1)将hbase-1.2.0-cdh5.14.2.tar.gz上传到/opt/software
(2)解压:tar -zxf hbase-1.2.0-cdh5.14.2.tar.gz -C /opt/install
(3)创建软连接:ln -s /opt/install/hbase-1.2.0-cdh5.14.2 /opt/install/hbase
(4)修改/etc/profile:
   export HBASE_HOME=/opt/install/hbase
   export PATH=$HBASE_HOME/bin:$PATH
(5)生效/etc/profile:source /etc/profile
(6)修改conf/hbase-env.sh:【可注释第46,47行从而不再看到warning】
   export JAVA_HOME=/opt/install/jdk 大概在第27行
   export HBASE_MANAGES_ZK=false 大概在第129行
(7)修改hbase-site.xml:
<!--设置hbase的工作目录-->
<property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop101:9000/hbase/data</value>
</property>
<!--开启hbase的集群工作模式-->
<property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
</property>
<!--设置zookeeper节点-->
<property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop101</value>
</property>
<!--设置zookeeper的工作目录-->
<property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/opt/install/zookeeper/zkData</value>
</property>
(8)修改 regionservers 文件:
   hadoop101
(9)启动zookeeper:zkServer.sh start
(10)启动namenode和datanode:
    hadoop-daemon.sh start namenode
    hadoop-daemon.sh start datanode
(11)启动master:hbase-daemon.sh start master
(12)启动regionserver:hbase-daemon.sh start regionserver
(13)启动成功后,访问HBase管理页面:http://hadoop101:60010
(14)停止regionserver:hbase-daemon.sh stop regionserver
(15)停止master:hbase-daemon.sh stop master
(16)停止namenode和datanode:
    hadoop-daemon.sh stop namenode
    datanode:hadoop-daemon.sh stop datanode
(17)停止zookeeper:zkServer.sh stop
(18)停机做快照

完全分布式安装Hbase【注意:时间同步】:
(1)-(6)步同上
(7)修改hbase-site.xml:
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop102:9000/hbase/data</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop102:2181,hadoop103:2181,hadoop104:2181</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/install/zookeeper/zkData</value>
</property>

(8)修改 regionservers 文件:
   hadoop102
   hadoop103
   hadoop104
(9)从102机器上复制hbase目录到103,104机器上
   scp -r /opt/install/hbase hadoop103:/opt/install
   scp -r /opt/install/hbase hadoop104:/opt/install
(10)从102机器上复制/etc/profile文件复制103,104机器上并生效:source /etc/profile
(11)启动102,103,104机器上的zookeeper:zkServer.sh start
(12)从102机器启动hdfs集群:start-dfs.sh
(13)从102机器启动hbase集群:start-hbase.sh并通过jps检查
(14)启动成功后,访问HBase管理页面:http://hadoop102:60010
(15)从102机器停止hbase集群:stop-hbase.sh
(16)停止hadoop和zookeeper集群服务
(17)停机做快照

在HBASE客户端操作的命令

0、删除字符时要按住ctrl键和backspace键,del键
1、打开客户端:hbase shell
2、退出客户端:exit
3、查看帮助:help
4、查看命令组帮助:help '命令组名称'
5、查看命令帮助:help '命令'
6、查看hbase版本:version
7、查看当前登录用户:whoami
8、查看命名空间:list_namespace
9、创建命名空间:create_namespace 'myschool'
10、创建表:create 'myschool:info','student','course'
11、查看所有表名:list
12、查看表结构:describe 'myschool:info'
13、插入数据:
put 'myschool:info','1001','student:name','tom'
put 'myschool:info','1001','student:sex','male'
put 'myschool:info','1001','student:age','22'
put 'myschool:info','1001','course:chinese','99'
put 'myschool:info','1001','course:math','88'
14、查看指定行数据:get 'myschool:info','1001'
15、查看表数据:scan 'myschool:info'
16、删除数据:delete 'myschool:info','1001','course:chinese'
17、禁用表:disable 'myschool:info',再删除表:drop 'myschool:info'
18、删除命名空间:drop_namespace 'myschool'(命名空间必须是没有表的,否则需要先删除表)

19、导入文件数据到hbase
(1)建命名空间:create_namespace 'retail'
(2)建表:create 'retail:customer','order'
(3)上传数据文件到/root/data,若此目录不存要则需mkdir /root/data
(4)启动yarn:yarn-daemon.sh start resourcemanager;yarn-daemon.sh start nodemanager
(5)导入数据:【注意在linux中执行】
hbase org.apache.hadoop.hbase.mapreduce.ImportTsv \
-Dimporttsv.separator=","  \
-Dimporttsv.columns="HBASE_ROW_KEY,order:numb,order:date" \
"retail:customer" "file:///root/data/hbase_import_data.csv"
(6)查看数据:scan 'retail:customer'

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值