恒華分布式數據庫系統
一、概述
恒華分布式數據庫系統是業內首創的無共享、大規模并行處理(massivelyparallel processing (MPP))的數據庫軟件產品,它包含大規模并行計算技術和數據庫技術最新的研發成果:包括無共享/MPP,按列存儲數據庫,SQL LLVM JIT編譯運行,數據庫內壓縮,永不停機擴容,多級容錯,JSON類型等等。該數據庫軟件被業界認可為擴展能力最大的分析型(OLAP)數據庫軟件。
二、恒華分布式數據庫系統分布式數據倉庫軟件特性介紹
恒華分布式數據庫系統是業界首創將大規模并行計算技術,應用到了數據庫軟件領域。該類技術同樣應用在Google搜索引擎的中。
1、恒華分布式數據庫系統數據倉庫軟件功能:
無共享/MPP核心架構
恒華分布式數據庫系統將數據平均分布到系統的所有節點服務器上,所以節點存儲每張表或表分區的部分行,所有數據加載和查詢都是自動在各個節點服務器上并行運行,并且該架構支持擴展到上萬個節點。
SQL LLVM JIT編譯運行
恒華分布式數據庫系統發明SQL使用LLVM編譯器即時編譯運行(LLVM JIT),這樣的SQL編譯運行大大加快復雜SQL的運行速度,它比GPDB和其他傳統關系數據庫的準解釋執行速度快20-2倍。
混合的存儲和執行(按列或按行)
恒華分布式數據庫系統發明支持混合按列或按行存儲數據,每張表或表分區可以由管理員根據應用需要,分別指定存儲和壓縮方式。
基于這個功能,用戶可以對任何表或表分區選擇按行或按列存儲數據和處理方式。這些是在建表或表分區的DDL語句中配置的,只需在建表或表分區時指定:這個功能基于多態維數據存儲技術。
多層次的容錯能力
恒華分布式數據庫系統自己包含多層次容錯和冗余能力,這是云計算架構軟件的一個重要特征。該功能保證整個數據倉庫系統在遇到硬件、軟件的故障的情況下,仍然自動繼續運行。
在線系統擴容(永不停機)
在系統中增加節點服務器即可增加存儲容量,處理性能和加載性能。當系統擴展時,數據倉庫保持在線,并且完全可用,擴展進程在后臺運行。增加節點服務器,性能和容量線性增加。
負載管理(Workload Management)
具有系統資源管控能力,并且可控制給各個查詢分配各自系統資源。允許管理員指派資源隊列,從而管理數據倉庫的隊列進入執行情況。在運行的查詢的優先級可以隨時調整。
并行數據裝載能力
基于MPP Scatter/Gather流技術的高性能并行加載功能。加載速度隨著節點線性增加,實際超過100MB/節點機/秒。
靈活的外部數據訪問
數據倉庫軟件可在任意外部數據源上并行運行常規SQL,不論外部數據源的位置,格式或存儲介質。并且支持Hadoop HDFS文件系統的直接讀寫訪問。
數據庫內壓縮
利用業界領先的lz4壓縮技術,進一步提高性能,并極大地節省了數據存儲空間。用戶可獲得3-30倍的空間節省,并且同時獲得相應有效I/O性能提升。
多層次表分區能力
允許靈活地按照時間、范圍、值域劃分表分區。表分區由DDL設定,分區層級不限。數據倉庫軟件的查詢優化器自動從查詢執行計劃中略去不涉及的表分區。
索引功能
恒華分布式數據庫系統支持各種數據庫索引技術,包括B-Tree,Bitmap等等。按列存儲、按行存儲數據庫表都支持索引。
支持JSON及完全遵從SQL最新標準
恒華分布式數據庫系統支持JSON格式。它還遵從SQL-92 , SQL-99 ,至SQL 2008標準,并包括SQL 2008 OLAP擴展項,如Cube, Window, Cursor, CTE。所有SQL及PL/SQL查詢都是在系統上并行執行。
支持SQL 2008 OLAP 擴展標準及Oracle SQL特性兼容
對SQL語言包括其OLAP擴展標準,都是在恒華分布式數據庫系統實現并行執行。全面支持SQL 2008 OLAP標準,包括Window 函數,Rollup,Cube等等。支持兼容Oracle的SQL特性。
客戶端訪問及第三方工具支持
完全支持數據庫技術接口標準,例如: SQL, ODBC, JDBC, OLEDB,SAS,MATLab,R語言,MADLib等。同時,廣泛地支持各個BI和ETL軟件工具,如Cognos, SAS, Pentaho, Tableau, SAP BO。
2、與Hadoop HDFS 協同工作
X Drive:恒華分布式數據庫系統與外部數據接口
•恒華分布式數據庫系統 MPP 可通過 X Drive 讀取外部數據
•可無縫外接 NFS, HDFS, 等
• 部分執行計劃的下推
• 減少網絡數據傳輸,提高性能
• 與恒華分布式數據庫系統優化器緊密結合,統一考慮 X Drive 中的數據和恒華分布式數據庫系統中的數據。
• 可分離獨立擴展
• 通過 HDFS 增加存儲容量
• 通過增加 X Drive 來擴展網絡帶寬
• 增加恒華分布式數據庫系統集群或集群中的結點來增加復雜分析過程中的計算能力
X Drive 應用場景一
• EDW 數據一次抽取到 Xdrive 中,易管理,存儲開銷小。
• X Drive 中的數據無需 ETL 進入沙箱。 查詢時計算下推至 X Drive。
• 多個數據科學家使用不同的小集群或沙箱,自由度高,無干擾。共享 X Drive 中的數據。
• 完成試驗后,新的模型仍可以直接返回到 EDW 中,研發成本可控。
X Drive 應用場景二
• DW 運行生產環境。
• 非/半結構化數據存在 HDFS 中。
• 常見問題:
• EDW 無法同時查詢數倉和 HDFS 中的數據,或性能低
• 若 ETL 過程,將數據導入 EDW, 比較慢,開銷大。
X Drive 應用場景三
• 恒華分布式數據庫系統運行生產環境。
• 非/半結構化數據存在 HDFS 中。
• 恒華分布式數據庫系統通過 Xdrive 讀取 HDFS 數據
• 存儲,網絡,和計算獨立擴展
• 技術關鍵在恒華分布式數據庫系統與 X Drive 緊密結合,保證高性能和擴展性
X Drive 應用場景四
• 恒華分布式數據庫系統通過 X Drive,將數據存放在 NFS 或 HDFS 中。恒華分布式數據庫系統中僅有 meta data。
• 由于恒華分布式數據庫系統輕量, 可在云上快速部署,遷移。
• 有些部署,生產環境在云下,但數據科學家的沙箱在云上。 可以通過 X Drive 實現云上云下的數據交換。
綜上所述,恒華分布式數據庫系統數據倉庫軟件技術構成如下圖: