1. 進入hbase 的控制端(可以在任意一台機器上啟動,只要其配置和hmaster 的配置一樣): hbase shell
進入後,出現類似下面的提示符: hbase(main):002:0>
2. 輸入 help , 可以列出所有的命令。
得到某個命令的詳細用法: help "create"
注: 在 shell 中如果輸錯不能通過 』backspace『 撤消,需要同時按 』ctrl『 才可以
名稱命令表示式
檢視存在哪些表
list
建立表create '表名稱', '列簇名稱1','列簇名稱2','列簇名稱3'
新增記錄
put '表名稱', 'row_key', '列簇名稱1:列名稱', '值'
檢視記錄
get '表名稱', '行名稱'
檢視表中的記錄總數
count '表名稱'
刪除記錄
delete '表名' ,'行名稱' , '列名稱'
刪除一張表
先要遮蔽該錶,才能對該錶進行刪除,第一步 disable '表名稱' 第二步 drop '表名稱'
檢視所有記錄
scan "表名稱"
檢視某個表某個列中所有資料
scan "表名稱" , ['列名稱:']
檢視表的資訊
desc '表名'
更新記錄
就是重寫一遍進行覆蓋
注意: 建立表的時候,可以只指定列簇名稱,官方建議最多3個列簇。列名在新增記錄的時候可以動態新增。
示例:建立表: create 'tablename', 'columnfamilyname'
e.g. create 'student', 'baseinfo' -- 建立一張名為'student'的表,'baseinfo'是列族名, 乙個列族包含多個列
插入資料: put 'student', 'myrow-1', 'baseinfo:name', 'shj' --'myrow-1' 是行鍵,全表唯一
put 'student', 'myrow-2', 'baseinfo:name', 'rose'
put 'student', 'myrow-2', 'baseinfo:age', '18'
查詢表記錄: scan 'student'
get 'student', 'myrow-2'
刪除某單元格: delete 'student','myrow-2','baseinfo:age'
刪除表: disable 'student' -- 需要先disable表
drop 'student'
3. 建立一張表: create 't_student', 'cf1'
從下圖中,我們可以看到在 hdfs 上,會在 /hbase/data/default/ (/hbase 是在配置檔案裡指定的)下面建立乙個資料夾。
上面的一長串的字元的資料夾,對應 的就是這個 table 中的乙個 region
4. 點選進入hdfs 中的那個資料夾後,裡面有乙個 cf1 的資料夾,這是我們建立表時定義的列簇的名稱。
5. 在 hbase shell 中往表裡插入資料
put 't_student', '007', 'cf1:name', 'bangde'
此時,在 cf1 資料夾下還是看不到資料,因為資料是先存在 memstore 中的,可以通過下面的命令,使其寫到 hdfs
flush 't_student'
6. 再次插入一些資料,然後 flush,會看到 cf1 下會多出檔案,而不是修改原來的檔案。
7. 執行下面的命令,可以合併多個小檔案。
major_compact 't_student'
8. 退出 shell: exit
9. 檢視如下檔案中的內容 。直接輸入 hbase (bin 目錄已加入到環境變數下), 會提示相關的命令。其中有個 hfile 的命令。 輸入 hbase hfile,會得到 hfile 這個命令的幫助。最終可以知道檢視檔案中的記錄的命令是:
Hbase 入門簡介
hbase是apache hadoop中的乙個子專案,hbase依託於hadoop的hdfs作為最基本儲存基礎單元,通過使用hadoop的dfs工具就可以看到這些這些資料 儲存資料夾的結構,還可以通過map reduce的框架 演算法 對hbase進行操作,如下圖所示 hbase在產品中還包含了je...
HBase學習筆記(一) 《HBase簡介》
hbase簡介 1 hbase表的結構 hbase以表 table 的形式儲存資料 row key 行鍵 與nosql資料庫們一樣,row key是用來檢索記錄的主鍵。row key行鍵 row key 可以是任意字串 最大長度是 64kb,實際應用中長度一般為 10 100bytes 在hbase...
HBase 筆記 1 簡介
1 列式儲存資料庫 不同於傳統關聯式資料庫的行式儲存。其優勢為 1 對於特定查詢,不是所有值都是必需的,可減少io。2 列的資料型別相似,有利於壓縮,返回結果時降低頻寬消耗。2 hbase 的region 和regionserver 每乙個region 只能由一台region server 載入,每...