1、OushuDB架構哲學和演進之路偶數科技 陶征霖CONTENTS目目錄錄13傳統MPP數據庫HAWQ2.0HAWQ1.0OushuDB簡介OushuDB3.0OushuDB4.02456PostgreSQL7qApache頂級項目HAWQ企業版本q原生Hadoop并行SQL引擎q面向企業的分析型數據庫q擁有比傳統MPP數據庫更先進的彈性引擎q全新執行器引擎Hornetq原生分布式存儲MAGMAOushuDB簡介2011原型系統2013 HAWQ 1.02015HAWQ2.0 Apache HAWQ孵化2018 正式畢業成為頂級項目OushuDBPostgreSQLServerpostmaste
2、rbackendMemoryShared BuffersWALBuffersWorkMemOtherBuffersWriterWALWriterArchiverDataFilesWALFilesLogFilesArchiveFilesOtherProcess 單機版關系型數據庫 PG9.6以后查詢內部可以并行MPPMaster HostMasterInstanceGlobalCatalogTransactionLogsStandby HostStandbyInstanceGlobalCatalogTransactionLogsSegment Host1Segment 0(Primary)Loc
3、alSystemCatalogLocalTransactionLogsSegment 1(Mirror)LocalTableDataSegment Host2Segment 1(Primary)LocalSystemCatalogLocalTransactionLogsSegment 2(Mirror)LocalTableDataSegment Host3Segment 2(Primary)LocalSystemCatalogLocalTransactionLogsSegment 0(Mirror)LocalTableDataGreenplum Database架構圖(2003年)完全shar
4、e-nothing的架構 高可用通過primary-mirror實現 Segment有狀態 兩階段提交實現分布式事務 計算存儲緊耦合HAWQ1.0Master HostMasterInstanceGlobalCatalogTransactionLogsStandby HostStandbyInstanceGlobalCatalogTransactionLogsSegment Host1Segment 0Local read-only System CatalogHAWQ1.0架構圖 AO表數據放到HDFS上 通過native c+lib訪問HDFS HDFS保證數據高可用 禁掉Non-AO表
5、移除segment上本地事務日志 泳道模式實現HAWQ事務 實現HDFS Truncate功能 移除segment上本地系統表 Metadata Dispatch 無狀態segment 計算存儲物理上解耦合Segment 1Segment Host2Segment 2Local read-only System CatalogSegment 3Segment Host3Segment 4Local read-only System CatalogSegment 5HDFSseg0seg1seg2seg3seg4seg5HAWQ2.0Master HostMasterInstanceGlobal
6、CatalogTransactionLogsStandby HostStandbyInstanceGlobalCatalogTransactionLogsSegment Host1Local read-only System CatalogHAWQ2.0架構圖 每張表在HDFS上一個目錄 虛擬segments 全新Dispatcher模塊 塊級別文件存儲 HDFS元數據緩存 全新的資源管理模塊 全新的容錯服務 全新的管理工具 動態加減節點 計算存儲邏輯上解耦合HDFSPhysical SegmentvsegvsegvsegSegment Host2Local read-only System
7、CatalogPhysical SegmentvsegvsegvsegSegment Host3Local read-only System CatalogPhysical SegmentvsegvsegvsegblockblockblockblockOushuDB3.0Master HostMasterInstanceGlobalCatalogTransactionLogsStandby HostStandbyInstanceGlobalCatalogTransactionLogsSegment Host1Local read-only System CatalogOushuDB3.0架構圖
8、 全新Hornet執行引擎:SIMD/New hardware,性能提升10倍 可插拔存儲:很容易添加外部數據源,并且可以高效訪問External System(through Pluggable Storage)Physical SegmentvsegvsegvsegSegment Host2Local read-only System CatalogPhysical SegmentvsegvsegvsegSegment Host3Local read-only System CatalogPhysical SegmentvsegvsegvsegOushuDB4.0Master HostMa
9、sterInstanceGlobalCatalogTransactionLogsStandby HostStandbyInstanceGlobalCatalogTransactionLogsSegment Host1Local read-only System CatalogOushuDB4.0架構圖 Magma作為OushuDB原生存儲,和HDFS并駕齊驅 分布式存儲模塊Magma和新執行器模塊Hornet的整合External System(through Pluggable Storage)Physical SegmentvsegvsegvsegSegment Host2Local re
10、ad-only System CatalogPhysical SegmentvsegvsegvsegSegment Host3Local read-only System CatalogPhysical SegmentvsegvsegvsegHDFSMAGMAMagmaMagma Host1rg1Leaderrg2Followerrg3FollowerTable 1 P1 Table 1 P2 Table 1 P3 Query ExecutorMagma Host2rg2Leaderrg1Followerrg3FollowerTable 1 P2 Table 1 P1 Table 1 P3 Query ExecutorMagma Host3rg2Followerrg3Leaderrg1FollowerTable 1 P2 Table 1 P3 Table 1 P1 Query ExecutorRaft Log 復制Raft Log 復制 P2P去中心化架構 高可用數據和服務 HLC邏輯時鐘同步服務 Gossip集群動態識別服務 Raft數據復制服務 任意節點接入訪問 高效支持update/delete 支持index 支持分布式事務 結構化數據存儲Magma架構圖