您好,登錄后才能下訂單哦!
魯春利的工作筆記,誰說程序員不能有文藝范?
NoSQL Database的介紹參見:http://www.nosql-database.org/
主要分類包括:
a、Wide Column Store / Column Families 如HBase、Cassandra、Cloudata、Apache Flink、IBM Informix等。 b、Document Store 如Elasticsearch、MongoDB等。 c、Key Value / Tuple Store 如Redis、Oracle NoSQL Database、Berkeley DB等。 d、Graph Databases 如Neo4J、Sparksee等。 e、others 略
HBase – Hadoop Database,是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統,利用HBase技術可在廉價PC Server上搭建起大規模結構化存儲集群。
HBase利用Hadoop HDFS作為其文件存儲系統,利用Hadoop MapReduce來處理HBase中的海量數據,利用Zookeeper作為協調工具。此外,Pig和Hive為HBase提供了高層語言支持,使在HBase上進行數據統計處理變得非常簡單。Sqoop為HBase提供了RDBMS數據導入功能,使得傳統數據庫數據向HBase遷移變得非常簡單。
HBase訪問接口
HBase shell:HBase的命令行工具,最簡單的接口,適合HBase管理使用。
Native Java API:常規和高效的訪問方式,適合通過MR并行批處理HBase表數據。
Hive:通過類似SQL方式訪問HBase,簡化了HBase的訪問。
Pig:類似于Hive,最終也是解析為MR處理HBase表數據,適合進行數據統計。
1、邏輯模型
1.1 表
table,HBase數據的邏輯組織形式,在HBase中沒有數據類型的概念,所有的數據都以字節數組的形式進行存儲。在HDFS中,每個表的表名都被作為獨立的目錄結構。
HBase提供了命令行創建表,創建表時需指定表名和至少一個列族。不像關系型數據庫那樣創建表時必須指定列及列定義,HBase中沒有列定義,沒有數據類型。訪問HBase時也不需要用戶名和密碼,沒有Schema。
1.2 行
row key,唯一的標識一行,以字節數組形式存儲。
表中的行根據Row Key的字典序進行排序,即1、10、2、3的方式。
訪問HBase table中的行只有三種方式,通過單個row key,通過row key的range掃描和全表掃描。
1.3 列族
Column Family,在建表時必須至少指定一個列族。
create table 'test', 'cf'; # 注意在hbase shell操作時,表名及列族、列需要加單引號
1.4 列限定符
1.5 單元
1.6 時間版本
2、物理模型
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。