1.由於Hbase構建在Hadoop HDFS之上,因此Hbase需要Hadoop的支持。
首先下載Hadoop支持文件:https://pan.baidu.com/s/1E8Ct25PqiyAmIhQbP7fUWA 密碼:ztw7
下載完成后解壓,並配置環境變量:
變量名:HADOOP_HOME,變量值:Hadoop的文件夾地址(即剛剛解壓文件夾的地址,例如:D:\hadoop\hadoop-common-2.2.0-bin-master)。
並在Path中添加:%HADOOP_HOME%\bin (不要忘記用分號隔開)
2.下載hbase,下載鏈接:https://pan.baidu.com/s/19beAaW-Xl-WaXghaBevZrw 密碼:kjsr
附官網鏈接,選擇需要的版本下載即可(本文推薦1.2.0):http://archive.apache.org/dist/hbase/
下載完成后,解壓。
解壓完成后,找到hbase-1.2.0文件夾下的conf文件夾,然后找到“hbase-env.cmd”文件,編輯此文件,添加:
set HBASE_MANAGES_ZK=false
set JAVA_HOME=D:\java\jdk1.8.0_77
set HBASE_CLASSPATH=D:\hbase\hbase-1.2.0\conf
其中set JAVA_HOME項將值設為你的jdk安裝目錄。set HBASE_CLASSPATH項將值設為你的hbase的conf文件夾地址。
然后,進行下一項配置,還是在conf文件夾中,找到“hbase-site.xml”文件,編輯此文件,在configuration標簽內添加如下配置:
注意,以上配置的“······hbase-1.2.0請修改為你的hbase-1.2.0目錄地址。
3.測試搭建結果:
打開cmd,進入hbase目錄的bin目錄,然后輸入“start-hbase”如圖:
稍等片刻,在自動出現的另一個cmd窗口可見如下信息:
此時,此窗口不要關閉。在之前的cmd窗口(進入bin目錄的那個)輸入“hbase shell”命令,出現如下圖所示操作指令,則配置成功:
我們建一個表試一下,輸入“ create ‘表名’,‘列族名’ ”指令,如下圖:
我們再來看一下我們剛剛建的表,輸入“list”指令,如下圖:
可以看到我們剛剛建的表“test_table”
至此,Hbase搭建成功。
可參考這個地址配置,https://blog.csdn.net/m0_38075425/article/details/81281960
======================================
hbase一些基本操作命令
exists 'test_table'
省略模式建立列族
hbase> create 't1', 'f1', 'f2', 'f3'
建好表后,查看表結構:describe
清空表:truncate ‘lmj_test’ 刪除表:
刪除表:分兩步,首先disable 'lmj_test',然后drop 'lmj_test'
創建一個新的表,往表里面添加數據,查看表數據
create 'student','info','address'
put 'student','1','info:age','20'
put 'student','1','info:name','wang'
put 'student','1','info:class','1'
put 'student','1','address:city','zhengzhou'
put 'student','1','address:area','High-tech zone'
put 'student','2','info:age','21'
put 'student','2','info:name','yang'
put 'student','2','info:class','1'
put 'student','2','address:city','beijing'
put 'student','2','address:area','CBD'
put 'student','3','info:age','22'
put 'student','3','info:name','zhao'
put 'student','3','info:class','2'
put 'student','3','address:city','shanghai'
put 'student','3','address:area','pudong'
scan 'student'

也可以在bin底下添加一個student.txt文件
首先執行,創建表,增加數據操作,執行腳本 /bin/hbase shell ./student.txt,然后查看內容 scan ‘student'
修改操作 也是用put命令,就是重新添加內容把,把以前的內容覆蓋。
put 'student','1','info:age','18'
刪除單元格,某個列族的屬性 delete 'student','1','info:name'
這里在稍微解釋下hbase的幾個概念
表是行的集合。--->表 student 行-----> 1
行是列族的集合。---> 行 -----> 1 列族 -----> info
列族是列的集合。列族------> info 列---> name,age,class 列族--->address 列------> area,city
列是鍵值對的集合。age=18,name=hjj city=zhengzhou
刪除整行
deleteall 'student','1'
查詢
查詢單行 get 'student','2'
指定列族 ---->COLUMN 大寫
get 'student', '2', {COLUMN => 'info'}
指定列名
get 'student', '2', {COLUMN => 'info:age'}
使用scan,指定startrow
scan 'student',{COLUMN=>['info:age','address:area'],LIMIT=>10,STARTROW=>'2'}
修改表結構:先disable后enable
alter 't1', {NAME => 'f1'}, {NAME => 'f2', METHOD => 'delete'}
例如:修改表test1的cf的TTL為180天
disable 'test1' alter 'test1',{NAME=>'body',TTL=>'15552000'},{NAME=>'meta', TTL=>'15552000'} enable 'test1'
新增列族
disable 'users'
alter 'users' ,'cfInfo','u'
enable 'users'

今天先總結到這里,先學習命令行,后面再來看spring如何整合hbase進行開發