數據倉庫服務(Data Warehouse Service) 是一種基于公有云基礎架構和平臺的在線數據處理數據庫,提供即開即用、可擴展且完全托管的分析型數據庫服務。數據倉庫服務兼容標準ANSI SQL 99和SQL 2003,同時兼容PostgreSQL/Oracle數據庫生態,為各行業PB級海量大數據分析提供有競爭力的解決方案。
產品架構
DWS基于Shared-nothing分布式架構,具備MPP (Massively Parallel Processing)大規模并行處理引擎,由眾多擁有獨立且互不共享的CPU、內存、存儲等系統資源的邏輯節點組成。在這樣的系統架構中,業務數據被分散存儲在多個節點上,數據分析任務被推送到數據所在位置就近執行,并行地完成大規模的數據處理工作,實現對數據處理的快速響應。
產品架構


應用層
數據加載工具、ETL(Extract-Transform-Load)工具、以及商業智能BI工具、數據挖掘和分析工具,均可以通過標準接口與DWS 集成。DWS兼容PostgreSQL生態,且SQL語法進行了兼容Oracle和Teradata的處理。應用只需做少量改動即可向DWS平滑遷移。
接口
支持應用程序通過標準JDBC 4.0和ODBC 3.5連接DWS 。
DWS (MPP大規模并行處理集群)
一個DWS集群由多個在相同子網中的相同規格的節點組成,共同提供服務。集群的每個DN負責存儲數據,其存儲介質是磁盤。協調節點(Coordinator)負責接收來自應用的訪問請求,并向客戶端返回執行結果,此外,協調節點還負責分解任務,并調度任務分片在各DN上并行執行。
自動數據備份
支持將集群快照自動備份到EB級對象存儲服務OBS(Object Storage Service)中,方便利用業務空閑期對集群做周期備份以保證集群異常后的數據恢復。
快照是DWS集群在某一時間點的完整備份,記錄了這一時刻指定集群的所有配置數據和業務數據。
工具鏈
提供了數據并行加載工具GDS(General Data Service)、SQL語法遷移工具DSC(Database Schema Convertor)、SQL開發工具Data Studio,并支持通過控制臺對集群進行運維監控。
集群邏輯架構
DWS集群邏輯架構如下圖所示。實例的詳細介紹請參見下表“集群架構說明”。


集群架構說明
| 名稱 | 描述 | 說明 |
|---|---|---|
| GTM | 全局事務管理器(Global Transaction Manager),負責生成和維護全局事務ID、事務快照、時間戳等全局唯一的信息。 | 整個集群只有一組GTM:主、備GTM各一個。 |
| WLM | 工作負載管理器(Workload Manager)。控制系統資源的分配,防止過量業務負載對系統的沖擊而導致業務擁塞和系統崩潰。 | 不同于集群中的實例(GTM、CM、CN、DN)模塊,不需要在安裝過程中指定主機名稱。安裝程序會自動在各主機上安裝此模塊。 |
| CN | 協調節點(Coordinator)。負責接收來自應用的訪問請求,并向客戶端返回執行結果;負責分解任務,并調度任務分片在各DN上并行執行。 | 集群中,CN有多個并且CN的角色是對等的(執行DML語句時連接到任何一個CN都可以得到一致的結果)。只需要在CN和應用程序之間增加一個負載均衡器,使得CN對應用是透明的。CN故障時,由負載均衡自動路由連接到另外一個CN。 當前分布式事務框架下無法避免CN之間的互連,為了減少GTM上線程過多導致負載過大,建議CN配置數目≤10個。 DWS通過CCN(Central Coordinator)負責集群內的資源全局負載控制,以實現自適應的動態負載管理。CM在第一次集群啟動時,通過集群部署形式,選擇編號最小的CN作為CCN。若CCN故障之后,由CM選擇新的CCN進行替換。 |
| DN | 數據節點(Datanode)。負責存儲業務數據(支持行存、列存、混合存儲)、執行數據查詢任務以及向CN返回執行結果。 | 在集群中,DN有多個。每個DN存儲了一部分數據。集群部署常用方式為主備從高可用模式,若DN故障時導致該實例上的數據無法訪問,可進行集群高可用操作,詳情請參見。 |
| Storage | 服務器的本地存儲資源,持久化存儲數據。 | - |
集群的每個DN上負責存儲數據,其存儲介質也是磁盤。下圖“數據庫邏輯結構圖”從邏輯上介紹了每個DN上都有哪些對象,以及這些對象之間的關系,其中:
-
Database,即數據庫,用于管理各類數據對象,各數據庫間相互隔離。
-
Datafile Segment,即數據文件,通常每張表只對應一個數據文件。如果某張表的數據大于1GB,則會分為多個數據文件存儲。
-
Table,即表,每張表只能屬于一個數據庫。
-
Block,即數據塊,是數據庫管理的基本單位,默認大小為8KB。
數據有三種分布方式,可以在建表的時候指定:REPLICATION、ROUNDROBIN 、HASH。
數據庫邏輯結構圖

