新聞中心
HBase 集群部署
安裝 hbase 之前需要先搭建好 hadoop 集群和 zookeeper 集群。

成都創(chuàng)新互聯(lián)是專業(yè)的林甸網(wǎng)站建設(shè)公司,林甸接單;提供成都網(wǎng)站制作、成都做網(wǎng)站,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行林甸網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
- 下載安裝包 http://archive.apache.org/dist/hbase/1.3.1/。
- 解壓到安裝目錄。
tar -zxvf hbase-1.3.1-bin.tar.gz
我解壓到了。
/opt/lagou/servers/hbase-1.3.1 目錄。
- 修改配置文件
- 把 hadoop 中配置的 core-site.xml、hdfs-site.xml 拷貝到 hbase 下的 conf 目錄下
ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/core-site.xml /opt/lagou/servers/hbase-1.3.1/conf/core-site.xml
ln -s /opt/lagou/servers/hadoop-2.9.2/etc/hadoop/hdfs-site.xml /opt/lagou/servers/hbase-1.3.1/conf/hdfs-site.xml
- 修改 hbase-env.sh。
#添加java環(huán)境變量
export JAVA_HOME=/opt/module/jdk1.8.0_231
#指定使用外部的zk集群
export HBASE_MANAGES_ZK=FALSE
- 修改 hbase-site.xml。
hbase.rootdir
hdfs://linux2:9000/hbase
hbase.cluster.distributed
true
hbase.zookeeper.quorum
linux2:2181,linux3:2181,linux4:2181
- 修改 regionservers。
linux2
linux3
linux4
- 在 hbase 的 conf 目錄下創(chuàng)建文件 backup-masters。
內(nèi)容如下:
linux2
- 在每個節(jié)點(diǎn)上配置環(huán)境變量,vi /etc/profile。
export HBASE_HOME=/opt/lagou/servers/hbase-1.3.1
export PATH=$PATH:$HBASE_HOME/bin
執(zhí)行命令使配置生效。
source /etc/profile
- 將 hbase-1.3.1 目錄分發(fā)到其他 2 個節(jié)點(diǎn)。
scp -r hbase-1.3.1 linux3:/opt/lagou/servers/
scp -r hbase-1.3.1 linux4:/opt/lagou/servers/
- 啟動集群。
#啟動命令
start-hbase.sh
#停止命令
stop-hbase.sh
- 啟動完成后,可以訪問地址:
- HMaster 的 ip:16010。
HBase shell 基本操作
- 進(jìn)入 HBase 客戶端命令操作界面。
hbase shell
shell 命令行里如果輸錯了命令,刪除需要使用 Ctrl+Backspace。
- 查看幫助命令。
help
- 查看當(dāng)前數(shù)據(jù)庫里有哪些表
list
- 創(chuàng)建一個 user 表,包含 user_info、extra_info 兩個列族。
create 'user','base_info','extra_info'
#或者指定版本
create 'user2',{NAME => 'base_info',VERSIONS => '3'},{NAME => 'extra_info',VERSIONS => '3'}
- 添加數(shù)據(jù)。
- 向 user 表中 row key 為 rk1,列族 base_info 的 name 列上插入值’xiaowang’。
put 'user','rk1','base_info:name','xiaowang'
- 向 user 表中 row key 為 rk1,列族為 base_info 的 age 列插入值 30。
put 'user','rk1','base_info:age',30
- 向 user 表中 row key 為 rk1,列族為 extra_info 的 address 列插入值’shanghai’。
put 'user','rk1','extra_info:address','shanghai'
- 查詢數(shù)據(jù)。
- 查詢 user 表中 row key 為 rk1 的所有信息。
get 'user','rk1'
- 查詢 user 表中 row key 為 rk1 的 base_info 列族的所有信息。
get 'user','rk1','base_info'
- 查詢 user 表中指定列族,指定字段的值。
get 'user','rk1','base_info:name','base_info:age'
- 查詢 user 表中多個列族的信息。
get 'user','rk1','base_info','extra_info'
- 根據(jù) rowkey 和列值進(jìn)行查詢。
get 'user','rk1',{FILTER => "ValueFilter (=,'binary:shanghai')"}
- 根據(jù) row key 和列名進(jìn)行模糊查詢。
查詢出列名:address。
get 'user','rk1',{FILTER => "QualifierFilter (=,'substring:add')"}
- 查詢表中所有數(shù)據(jù)。
scan 'user'
- 查詢表中列族為 base_info 的信息。
scan 'user',{COLUMNS => 'base_info'}
# Scan時可以設(shè)置是否開啟Raw模式,開啟Raw模式會返回包括已添加刪除標(biāo)記但是未實(shí)際刪除的數(shù)據(jù)
# VERSIONS指定查詢的最大版本數(shù)
scan 'user',{COLUMNS => 'base_info',RAW => true, VERSIONS=> 3}
- 查詢 user 表中列族為 base_info、extra_info,且列名中含 add 字符的數(shù)據(jù)。
scan 'user',{COLUMNS => ['base_info','extra_info'],FILTER => "(QualifierFilter(=,'substring:add'))"}
- rowkey 的范圍值查詢。
scan 'user',{COLUMNS => 'base_info',STARTROW => 'rk1',ENDROW => 'rk3'}
- 指定 rowkey 模糊查詢。
查詢 user 表中 row key 以 rk 開頭的數(shù)據(jù)。
scan 'user' ,{FILTER =>"PrefixFilter('rk')"}
- 更新數(shù)據(jù)。
更新操作同插入操作一模一樣,只不過有數(shù)據(jù)就更新,沒數(shù)據(jù)就添加。
- 更新數(shù)據(jù)值。
將 user 表中 rowkey 為 rk1 的 base_info 列族下的 name 修改為 xiaoliao
put 'user','rk1','base_info:name','xiaoliao'
- 刪除數(shù)據(jù)和表。
- 指定 rowkey 以及列名進(jìn)行刪除。
delete 'user','rk2','base_info:name'
- 指定 rowkey 以及列名、時間戳進(jìn)行刪除。
delete 'user','rk2','base_info:age',1662245345710
- 刪除列族。
alter 'user','delete' => 'extra_info'
- 清空表數(shù)據(jù)
truncate 'user'
- 刪除表。
#先disable,再drop,否則會報錯
disable 'user'
drop 'user'
標(biāo)題名稱:HBase集群部署與基礎(chǔ)命令
路徑分享:http://www.dlmjj.cn/article/dpejdjc.html


咨詢
建站咨詢
