2. HBase快速入门

文章目录

HBase快速入门

1. HBase 安装部署

1.1 准备工作

#Zookeeper正常部署 
#首先保证 Zookeeper 集群的正常部署,并启动之:
myzookeeper start
#Hadoop正常部署
#Hadoop集群的正常部署并启动:
sbin/start-all.sh

1.2 安装配置HBase

#解压 Hbase 到指定目录:
tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/module
mv hbase-1.3.1 hbase
##HBase的配置文件
#修改 HBase 对应的配置文件。

#1、hbase-env.sh 修改内容:
export JAVA_HOME=/opt/module/jdk1.8.0_212
export HBASE_MANAGES_ZK=false

#2、hbase-site.xml 修改内容:
<configuration>
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://hadoop:9000/HBase</value>
	</property>
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<!-- 0.98 后的新变动,之前版本没有.port,默认端口为 60000 -->
	<property>
		<name>hbase.master.port</name>
		<value>16000</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>hadoop,hadoop101,hadoop102</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.dataDir</name>
		<value>/opt/module/zookeeper-3.4.10/zkData</value>
	</property>
</configuration>


#3、regionservers:
hadoop
hadoop101
hadoop102



#4、软连接 hadoop 配置文件到 HBase:
ln  -s  /opt/module/hadoop-2.7.2/etc/hadoop/core-site.xml  /opt/module/hbase/conf/core-site.xml
ln  -s  /opt/module/hadoop-2.7.2/etc/hadoop/hdfs-site.xml  /opt/module/hbase/conf/hdfs-site.xml


##HBase 远程发送到其他集群
xsync hbase/

1.3 启动HBase服务

#单节点启动
bin/hbase-daemon.sh start master
bin/hbase-daemon.sh start regionserver
#单节点关闭
bin/hbase-daemon.sh stop master
bin/hbase-daemon.sh stop regionserver
 
#群起和群关
bin/start-hbase.sh
bin/stop-hbase.sh

提示:如果集群之间的节点时间不同步,会导致 regionserver 无法启动,抛出ClockOutOfSyncException 异常。解决方案:

  1. 同步时间服务
  2. 属性:hbase.master.maxclockskew 设置更大的值

1.4 查看HBase 页面

启动成功后,可以通过“host:port”的方式来访问 HBase 管理页面,例如:

http://hadoop:16010/

2. HBase Shell 操作

2.1 基本操作

#进入HBase客户端命令行
bin/hbase shell
#查看帮助命令
help
#查看当前数据库中有哪些表
list

help命令详解

2. HBase快速入门

2.2 表的操作

#1、创建表
create 'student','info'
#2、插入数据到表
put 'student','1001','info:sex','male'
put 'student','1001','info:age','18'
put 'student','1002','info:name','Janna'
put 'student','1002','info:sex','female'
put 'student','1002','info:age','20'

#3、扫描查看表数据
scan 'student'
scan 'student',{STARTROW => '1001', STOPROW =>'1001'}
scan 'student',{STARTROW => '1001'}
#4、查看表结构
describe 'student'
#5、更新指定字段的数据
put 'student','1001','info:name','Nick'
put 'student','1001','info:age','100'
#6、查看“指定行”或“指定列族: : 列”的数据
get 'student','1001'
get 'student','1001','info:name'
#7、统计表数据行数,按rowkey统计
count 'student'
#8、删除数据
#删除某 rowkey 的全部数据:
deleteall 'student','1001'
#删除某 rowkey 的某一列数据:
delete 'student','1002','info:sex'
#9、清空表数据
truncate 'student'
##提示:清空表的操作顺序为先 disable,然后再 truncate。
#10、删除表
#首先需要先让该表为 disable 状态:
disable 'student'
#然后才能 drop 这个表:
drop 'student'
#提示:如果直接 drop 表,会报错:ERROR: Table student is enabled. Disable it first.
#11、变更表信息
#将 info 列族中的数据存放 3 个版本
alter 'student',{NAME=>'info',VERSIONS=>3}
get 'student','1001',{COLUMN=>'info:name',VERSIONS=>3}

上一篇:04:石头剪子布


下一篇:将xml 写到内存中再已string类型读出来