1. 程式人生 > >hbase kv特性 列式存儲 查詢接口

hbase kv特性 列式存儲 查詢接口

層級 記錄 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特性 列式存儲 查詢接口