HBase特性
自身特性:
1.介於nosql和RDBMS之間;
2.主要儲存結構化和半結構化鬆散資料;
3.使用phoenix實現多表聯查;
4.動態擴容,可加減node
5.資料量大,一個表可以有上十億行;
6.面向列儲存;
7.稀疏,因為空的列不佔用儲存空間;
與行式資料庫的區別:
表結構:
1.行鍵(RowKey):類似於mysql的主鍵,唯一。
2.列族(ColumnFamily):是列的集合,列族在定義表的時候被指定,列在插入的時候動態指定,列族中的資料都是二進位制格式,沒有其他資料型別。在物理結構上,每個表中的列族單獨儲存一個檔案,一個表可以有多個列族。
3.時間戳(TimeStamp):是列的一個屬性,64位數。
4.區域(Region):Hbase自動把表水平切成多個分割槽。
操作:
刪除誤操作鍵: ctrl+backspace
建立表:create 'user','base_info'
顯示錶:list
查表詳情:desc 'user'
插入資料:put 'user‘(表名),'rowkey_10'(行鍵),'base_info:username'(列族下的列名),'張三'(插入的值)
掃描全表:scan 'user'
查詢某個rowkey的資料:get 'user','rowkey_10'查詢到一行資料
查詢某個列族的資料:
按列族查:get 'user','rowkey_10','base_info'
按列族下的一列查:get 'user','rowkey_10','base_info:username'
按列族下的兩列查:get 'user','rowkey_10',{column =>{'base_info:username','base_info:sex'}}
刪除一個列族:alter 'user',
刪除表:先disable 'user' 然後drop 'user'