hbase kv特性 列式存儲 查詢接口
阿新 • • 發佈:2017-09-21
層級 記錄 mes reg ava 索引 col wke 不同
KV數據庫:
只是key有多個層級:
表 + rowkey + column family + column
可以掃一個表的所有記錄,
可以查一個表內,一個rowkey的所有column family + column對應value
可以查一個表內,一個rowkey,一個column family 內所有column對應value
可以查一個表內,一個rowkey,一個column family ,一個column對應的value
列式存儲:
定義hbase表的時候,只需要知道table名和哪幾個列簇就可以,不需要指定列名
列名是可以動態增減
所以hbase叫列數據庫,更應該叫列簇數據庫,因為,所有的rowkey的相同列簇數據是連續存儲的,
同一個列簇中的所有數據都存儲在一個文件裏
同一個rowkey的不同列簇的數據,不存在一起
hbase中是使用rowkey進行partition(索引)找到對應的region的,所以設計Rowkey就決定了未來你的查詢性能
在HBase中,Key-Value是最小的存儲單元。每一個Key-Value對應一個列,Value對應於一個列的列值。
這裏的value,除了值之外,還有一個屬性就是timestamp標識的版本
可以查詢所有版本的值,某個版本的值
查詢接口:
提供了hbase shell,java client,mapreduce等方式的讀寫接口
hbase kv特性 列式存儲 查詢接口