實驗3 ?HBase的安裝和基本操作
實驗環(huán)境:
Ubuntu |
22.04.3 |
Jdk |
1.8.0_341 |
Hadoop |
3.2.3 |
Hbase |
2.4.17 |
一、安裝HBase
- HBase偽分布式安裝的配置
1. 配置hbase-env.sh文件
3. 啟動運行HBase
4. 停止運行HBase
- HBase常用的Shell命令
- 打開hbase
- 在HBase中創(chuàng)建表
create 'template','f1','f2','f3'
- 添加數(shù)據(jù)
put 'template','r1','f1:c1','hello'
scan 'template'
- 查看數(shù)據(jù)
get:通過表名、行、列、時間戳獲得相應(yīng)單元格的值
例:
- 從tempTable中,獲取第r1行、第“f1:c1”列的值
COLUMN不能小寫
get 'template','r1',{COLUMN=>'f1:c1'}
(2)從tempTable中,獲取第r1行、第“f1:c3”列的值
- 刪除數(shù)據(jù)
delete 'template','r1','f1:c2'
- 刪除表
disable 'template'
drop 'template'
?
- 退出HBase數(shù)據(jù)庫
- HBase實驗
1、創(chuàng)建一個表student,該表包含兩個列族Sinfo和Course,其中Sinfo包含
name、sex、age、class四個列,Course包含math和computer兩個列。在
關(guān)系型數(shù)據(jù)庫(比如MySQL)中,需要首先創(chuàng)建數(shù)據(jù)庫,然后再創(chuàng)建表,但
是,在HBase數(shù)據(jù)庫中,不需要創(chuàng)建數(shù)據(jù)庫,只要直接創(chuàng)建表就可以。將同
寢室同學(xué)信息添加至student表中,行鍵值為小組成員編號(如:001)
create 'student','sinfo','course'
put 'student','001','sinfo:name','prx'
2、創(chuàng)建完“student”表后,可通過describe命令查看“student”表的基本
信息
describe 'student'
- 使用list命令查看當(dāng)前HBase數(shù)據(jù)庫中已經(jīng)創(chuàng)建了哪些表
- 查看student表的數(shù)據(jù)(get、scan)
5、為student表增加“STel”列族,添加每位同學(xué)的聯(lián)系方式(電話列和郵
箱列)
alter 'student','stel'
put 'student','002','stel:phone','123'
6刪除student表中本人的年齡信息
- 刪除student表中本人所在行的所有信息
deleteall 'student','002'
8、查詢表歷史數(shù)據(jù),創(chuàng)建一個teacher表,在創(chuàng)建表的時候,需要指定保存
的版本數(shù)(假設(shè)指定為3),命令如下:
hbase> create 'teacher',{NAME=>'username',VERSIONS=>3}
插入并更新數(shù)據(jù),使其產(chǎn)生歷史版本數(shù)據(jù),插入和更新數(shù)據(jù)都使用put命令:
hbase> put 'teacher','91001','username','Mary'
hbase> put 'teacher','91001','username','Mary1'
hbase> put 'teacher','91001','username','Mary2'
hbase> put 'teacher','91001','username','Mary3'
hbase> put 'teacher','91001','username','Mary4'
查詢時,默認(rèn)情況回顯示當(dāng)前最新版本的數(shù)據(jù),如果要查詢歷史數(shù)據(jù),需要
指定查詢的歷史版本數(shù),由于上面設(shè)置了保存版本數(shù)為3,所以,在查詢時
指定的歷史版本數(shù)的有效取值為1到3。分別查詢版本號為1和3的數(shù)據(jù)。
get 'teacher','91001',{COLUMN=>'username',VERSIONS=>3}
- 刪除“teacher”表
- 查看當(dāng)前HBase數(shù)據(jù)庫中已經(jīng)創(chuàng)建了哪些表
- 退出HBase數(shù)據(jù)庫操作(exit)
- 關(guān)閉HBase
13、關(guān)閉Hadoop
問題:
問題一:
第一次啟動時發(fā)現(xiàn)沒有hregionsever
重啟得到解決
問題二:
關(guān)閉hbase一直未停,因為master仍在運行
運行hbase-daemon.sh stop master
再關(guān)閉得到解決
問題三:
建表一直報錯,是因為時間未同步,hadoop內(nèi)容過多
解決過程如下:
- hadoop清除hbase
./bin/hdfs dfs -rm -r /hbase
2.時間同步文章來源:http://www.zghlxwxcb.cn/news/detail-851830.html
sudo ntpdate time.nist.gov文章來源地址http://www.zghlxwxcb.cn/news/detail-851830.html
- 重啟虛擬機(jī)
到了這里,關(guān)于【大數(shù)據(jù)存儲】實驗3 HBase的安裝和基本操作的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!