1. 程式人生 > >HBase(3)-安裝與Shell操作

HBase(3)-安裝與Shell操作

一. 安裝

1. 啟動Zookeeper叢集

2. 啟動Hadoop叢集

3. 上傳並解壓HBase

tar -zxvf hbase-1.3.1-bin.tar.gz -C /opt/module

4. 修改配置檔案

#修改habse-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_144
export HBASE_MANAGES_ZK=false
JDK1.8需要註釋
#export HBASE_MASTER_OPTS。。。。
#export HBASE_REGIONSERVER_OPTS。。。
#修改hbase-site.xml
<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://hadoop102: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>hadoop102:2181,hadoop103:2181,hadoop104:2181</value> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/opt/module/zookeeper-3.4.10/zkData</value> </property> </configuration>
#修改regionservers
hadoop100
hadoop101
hadoop102
#軟連線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

5. 分發HBase

xsync hbase

6. 啟動服務

#cd到hbase目錄下
#啟動
bin/start-hbase.sh

#停止
bin/stop-hbase.sh

7. 檢視HBase頁面

http://hadoop100:16010

 

二. Shell操作

cd到hbase的目錄下

1. 基本操作

進入客戶端

bin/hbase shell

檢視幫助命令

help

 檢視當前庫中的表

list

2. 表操作

-- 建立表
hbase(main):002:0> create 'student','info'

-- 插入資料到表
hbase(main):003:0> put 'student','1001','info:sex','male'
hbase(main):004:0> put 'student','1001','info:age','18'
hbase(main):005:0> put 'student','1002','info:name','Janna'
hbase(main):006:0> put 'student','1002','info:sex','female'
hbase(main):007:0> put 'student','1002','info:age','20'

-- 掃描查看錶資料
hbase(main):008:0> scan 'student'
hbase(main):009:0> scan 'student',{STARTROW => '1001', STOPROW  => '1001'}
hbase(main):010:0> scan 'student',{STARTROW => '1001'}

-- 查看錶結構
hbase(main):011:0> describe 'student'

-- 更新指定欄位的資料
hbase(main):012:0> put 'student','1001','info:name','Nick'
hbase(main):013:0> put 'student','1001','info:age','100'

-- 檢視“指定行”或“指定列族:列”的資料
hbase(main):014:0> get 'student','1001'
hbase(main):015:0> get 'student','1001','info:name'

-- 統計表資料行數
hbase(main):021:0> count 'student'

-- 刪除資料
-- 刪除某rowkey的全部資料:
hbase(main):016:0> deleteall 'student','1001'
-- 刪除某rowkey的某一列資料:
hbase(main):017:0> delete 'student','1002','info:sex'

-- 清空表資料
hbase(main):018:0> truncate 'student'
-- 提示:清空表的操作順序為先disable,然後再truncate

-- 刪除表
-- 首先需要先讓該表為disable狀態:
hbase(main):019:0> disable 'student'
-- 然後才能drop這個表:
hbase(main):020:0> drop 'student'
-- 提示:如果直接drop表,會報錯:ERROR: Table student is enabled. Disable it first.

-- 表更表操作
hbase(main):022:0> alter 'student',{NAME=>'info',VERSIONS=>3}
hbase(main):022:0> get 'student','1001',{COLUMN=>'info:name',VERSIONS=>3}