HBase安装

本文详细介绍了如何在Linux环境下配置时间同步服务Chrony,然后部署HBase集群,包括配置HBase环境变量、设置HBase配置文件、同步到各节点,并启动HBase。接着展示了HBase的基本操作,如创建表、插入数据、查询、删除等。最后,演示了删除列簇、关闭HBase及ZooKeeper服务的流程。
摘要由CSDN通过智能技术生成

一、配置时间同步

master

yum -y install chrony

img

vi /etc/chrony.conf
pool time1.aliyun.com iburst

img

systemctl enable --now chronyd 
systemctl status chronyd

img

二、部署HBase

master配置

tar xf software/hbase-1.2.1-bin.tar.gz -C /usr/local/src/ 
cd /usr/local/src/
mv hbase-1.2.1 hbase

img

vi /etc/profile.d/hbase.sh
export HBASE_HOME=/usr/local/src/hbase 
export PATH=${HBASE_HOME}/bin:$PATH

img

source /etc/profile.d/hbase.sh 
echo $PATH

img

cd /usr/local/src/hbase/conf/
vi hbase-env.sh
export JAVA_HOME=/usr/local/src/jdk 
export HBASE_MANAGES_ZK=true
export HBASE_CLASSPATH=/usr/local/src/hadoop/etc/hadoop/

img

vi hbase-site.xml
<property>
		<name>hbase.rootdir</name>
		<value>hdfs://master:9000/hbase</value> # 使用 9000端口
		<description>The directory shared by region servers.</description>
</property>
<property>
		<name>hbase.master.info.port</name>
		<value>60010</value> # 使用 master节点 60010端口
</property>
<property>
		<name>hbase.zookeeper.property.clientPort</name>
		<value>2181</value> # 使用 master节点 2181端口
		<description>Property from ZooKeeper's config zoo.cfg. The port at which the clients will connect.</description>
</property>
<property>
		<name>zookeeper.session.timeout</name>
		<value>120000</value> # ZooKeeper超时时间
</property>
<property>
		<name>hbase.zookeeper.quorum</name>
		<value>master,slave1,slave2</value> # ZooKeeper管理节点
</property>
<property>
		<name>hbase.tmp.dir</name>
		<value>/usr/local/src/hbase/tmp</value> # HBase临时文件路径
</property>
<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value> # 使用分布式 HBase
</property>

img

mkdir -p /usr/local/src/hbase/tmp 
vi regionservers
10.10.10.129
10.10.10.130

img

scp -r /usr/local/src/hbase/ slave1:/usr/local/src/ 
scp -r /usr/local/src/hbase/ slave2:/usr/local/src/ 
scp /etc/profile.d/hbase.sh slave1:/etc/profile.d/ 
scp /etc/profile.d/hbase.sh slave2:/etc/profile.d/ 
chown -R hadoop.hadoop /usr/local/src/
ll /usr/local/src/ 
su - hadoop

img

slave1配置

chown -R hadoop.hadoop /usr/local/src/ 
ll /usr/local/src/
su - hadoop

img

slave2配置

chown -R hadoop.hadoop /usr/local/src/ 
ll /usr/local/src/
su - hadoop

img

三、启动HBase

start-all.sh 
start-hbase.sh

img

C:\windows\system32\drivers\etc\hosts

img

img

四、HBase语法

步骤一:进入 HBase 命令行
[hadoop@master ~]$ hbase shell

步骤二:建立表 scores,两个列簇:grade 和 course
hbase(main):001:0> create 'scores','grade','course'
0 row(s) in 1.4480 seconds
=> Hbase::Table - scores

步骤三:查看数据库状态
hbase (main) :001 :0> status
 1 active master, 0 backup masters, 2 servers, 0 dead, 1.0000 average load
 
步骤四:查看数据库版本
hbase (main) :002:0> version
1.2.1,r8d8a7107dc4ccbf36a92f64675dc60392f85c015,Wed Mar 30 11:19:21 CDT 2016

步骤五:查看表
hbase(main):008:0> list
TABLE 
scores
1 row(s) in 0.0100 seconds
=>["scores"]

步骤六:插入记录 1:jie,grade: 143cloud
hbase(main):003:0> put 'scores','jie','grade:','146cloud'
0 row(s) in 0.2250 seconds

步骤七:插入记录 2:jie,course:math,86
hbase(main):004:0> put 'scores','jie','course:math','86'
0 row(s) in 0.0190 seconds

步骤八:插入记录 3:jie,course:cloud,92
hbase(main):005:0> put 'scores','jie','course:cloud','92'
0 row(s) in 0.0170 seconds

步骤九:插入记录 4:shi,grade:133soft
hbase(main):006:0> put 'scores','shi','grade:','133soft'
0 row(s) in 0.0070 seconds

步骤十:插入记录 5:shi,grade:math,87
hbase(main):007:0> put 'scores','shi','course:math','87'
0 row(s) in 0.0060 seconds

步骤十一:插入记录 6:shi,grade:cloud,96
hbase(main):008:0> put 'scores','shi','course:cloud','96'
0 row(s) in 0.0070 seconds

步骤十二:读取 jie 的记录
hbase(main):009:0> get 'scores','jie'
COLUMN 			CELL
course:cloud 	timestamp=1460479208148, value=92
course:math 	timestamp=1460479163325,value=86
grade: 			timestamp=1460479064086,value=146cloud
3 row(s) in 0.0800 seconds

步骤十三:读取 jie 的班级
hbase(main):012:0> get 'scores','jie','grade'
COLUMN  CELL
grade:  timestamp=1460479064086,value=146cloud
1 row( s) in 0.0150 seconds

步骤十四:查看整个表记录
hbase(main):013:0> scan 'scores'
ROW 	COLUMN+CELL 
jie		column=course:cloud, timestamp=1460479208148,value=92 
jie		column-course:math, timestamp=1460479163325, value=86
jie		column=grade:,timestamp=1460479064086,value=146cloud
shi		column=course:cloud, timestamp=1460479342925,value=96
shi		column=course:math, timestamp=1460479312963,value=87
shi		column=grade:,timestamp=1460479257429,	value=133soft
2 row(s) in 0.0570 seconds

步骤十五:按例查看表记录
hbase(main):014:0> scan 'scores',{COLUMNS=>'course'}
ROW 	COLUMN+CELL
jie 	column=course:cloud, timestamp=1460479208148, value=92
jie 	column=course:math, timestamp=1460479163325, value=86
shi 	column=course:cloud, timestamp=1460479342925, value=96
shi 	column=course:math, times tamp=1460479312963, value=87
2 row(s) in 0. 0230 seconds

步骤十六:删除指定记录
hbase(main):015:0> delete 'scores','shi','grade'
0 row(s) in 0.0390 seconds

步骤十七:删除后,执行scan命令
hbase(main):016:0> scan 'scores'
ROW 	COLUMN+CELL
jie		column=course:cloud, timestamp=1460479208148, value=92
jie		column=course:math, timestamp=1460479163325, value=86
jie 	column=grade:, timestamp=1460479064086, value=146cloud
shi		column=course:cloud, timestamp=1460479342925, value=96 
shi		column=course:math, timestamp=1460479312963, value=87
row( s) in 0. 0350 seconds

步骤十八:增加新的列簇
hbase(main):017:0> alter 'scores',NAME=>'age'
Updating all regions with the new schema...
0/ 1 regions updated.
1/ 1 regions updated.
Done.
0 row(s) in 3.0060 seconds
步骤十九:查看表结构

hbase(main):018:0> describe 'scores'
Table scores is ENABLED
scores
COLUMN FAMIL IES DESCRIPTION
{NAME => age',BL O0MFILTER =>ROW',VERSIONS => '1' ,IN_ MEMORY
=> 'false', KEEP DELETED_ CELLS =>FAL SE',DATA BLOCK ENCODING =>
NONETTL => ' FOREVER', COMPRESSION=>NONE',MIN VERSIONS => '0' ,
BLOCKCACHE => ' true BLOCKSIZE =>65536',REPLICATION_ SCOPE =>
'0'}
{NAME =>course,BLOOMFILTER => ' ROW', VERSIONS =>IN MEMORY =>
false', KEEPDELETED CELLS =>FALSE', DATA BLOCK ENCODING =>
1 NONE',TTL =>FOREVER',COMPRESSION =>NONE',MIN VERSIONS => '0'
BLOCKCACHE => 'true' ,BLOCKSIZE =>65536',REPLICATION SCOPE
=>0'}{NAME => grade BLOOMFILTER => 'ROW' ,VERSIONS =>IN_ MEMORY =>
' false', KEEPDELETED CELLS =>FALSE',DATA BLOCK ENCODING =>1 NONE
'TTL =>FOREVER',COMPRESSION =>NONE',MIN VERSIONS => '0'
BLOCKCACHE => 'true' ,BLOCKSIZE => '65536 ,REPLICATION SCOPE
=> '0'}
3 row(s) in 0.0400 seconds

步骤二十:删除列簇
hbase(main):020:0> alter 'scores',NAME=>'age',METHOD=>'delete'
Updating all regions with the new schema…
1/ 1 regions updated. 
Done.
0 row(s)in 2.1600seconds

步骤二十一:删除表
hbase(main):021:0> disable 'scores'
0 row(s)in 2.2930seconds

hbase(main):022:0> drop 'scores'
0 row(s)in 1.2530seconds

hbase( main) :023:0> list

TABLE
0 row(s)in 0.0150 seconds
 ==>[]
步骤二十二:退出
hbase(main):024:0> quit

[hadoop@master ~]$
步骤二十三:关闭 HBase
#在 master节点关闭 HBase
[hadoop@master ~]$ stop-hbase.sh

#在所有节点关闭 ZooKeeper
[hadoop@master ~]$ zkServer.sh stop
[hadoop@slave1 ~]$ zkServer.sh stop
[hadoop@slave2 ~]$ zkServer.sh stop

#在 master节点关闭 Hadoop
[hadoop@master ~]$ stop-all.sh

img

img

img

img

img

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值