AnalyticDB PostgreSQL版儲存引擎基於PostgreSQL實現,在繼承了PostgreSQL儲存引擎可擴充、高可用、強事務能力的基礎同時,還具備如下特性:
- 多種表類型:儲存引擎同時支援行存表和列存表,行存表適用於高頻資料增刪改和點查情境,列存表適用於複雜AP分析情境,可根據業務情境靈活選擇表類型。
- 豐富的索引類型:支援Btree(等值查詢/範圍查詢)、Brin(結合排序實現粗糙集過濾)、GIN(倒排索引)等索引類型,在點查和低選擇率情境採用索引可顯著提升資料檢索效能。
- 資料壓縮類型:壓縮演算法支援ZLIB、ZSTD和LZ4等,高壓縮率可顯著降低資料存放區成本,並通過高頻寬解壓縮效能降低IO時間。
- 外表OSS儲存:資料可遠端低成本儲存於OSS上,查詢和寫入行為與本地表完全一致。
- 資料分區:支援資料多級分區,且可按Value或範圍進行分區,常用情境為按時間進行分區,可明顯降低IO資料量,同時分區支援混合儲存,歷史資料和活躍資料可分層冷熱儲存。
- 排序及粗糙集過濾:建表時可指定排序欄位,資料通過排序後,一方面可結合粗糙集Min/Max過濾降低IO資料量,另外排序也將提升資料壓縮率以降低儲存成本。