PolarDB MySQL版8.0.2版本已面向全網正式發布。
- 並行查詢和Hash Join能力增強;
- 分區表能力增強,支援更多的分區表類型、分區鎖和Interval分區;
- 新增支援子查詢解關聯,可以利用Window Function和Group By對子查詢解關聯(即將支援);
- 新增支援OSS外表能力(即將支援)。
並行查詢2.0
- 簡單的執行架構,導致某些重度計算運算元(分組聚集)可能存在單點瓶頸;
- 運算元並行未完全覆蓋,例如Window Function/嵌套derived table無法支援並行;
- 運算元並存執行方式單一,如所有join必須全量下推,分組聚集以2階段執行。
- 多階段的執行架構,SQL語句被拆解為多個計算運算元。每個運算元可以分布到多個worker上並行完成,運算元間以流水線方式高效執行;
- 支援全運算元並行;
- 運算元並行方式多樣化,如shuffle join、一階段group aggregation、基於代價決定並行方式等。更多資訊請參見概述。
Hash Join增強
Hash Join的並行查詢支援簡單並行Hash Join、並行Hash Join和Shuffle Hash Join。更多資訊請參見Hash Join的並行加速。
分區表能力增強
支援更多的分區表類型
組合分區(分區+子分區)支援更多的分區表類型RANGE-RANGE、RANGE-LIST、LIST-RANGE、LIST-LIST、HASH-HASH、HASH-KEY、HASH-RANGE、HASH-LIST、KEY-HASH、KEY-KEY、KEY-RANGE、KEY-LIST、LIST DEFAULT HASH、UNIQUE CHECK IGNORE。更多資訊請參見概述。
線上分區維護
線上分區維護功能增強了分區的DML和特定DDL(增加、刪除分區)的並行能力,更好的讓使用者對分區表進行Roll-In和Roll-Out。更多資訊請參見線上分區維護。
支援Interval分區
Interval分區是RANGE分區的擴充,當新插入的資料超過現有分區的範圍時,該分區允許資料庫自動建立新分區。更多資訊請參見INTERVAL RANGE簡介。
子查詢解關聯
關聯子查詢在分析情境中被廣泛使用,例如在決策支援基準TPC-H的22個查詢中,有超過1/3的查詢包含關聯子查詢。在沒有解關聯的時候,外層查詢的每一行資料,子查詢都會被執行一次。對於外層查詢產生資料量較多、子查詢沒有關聯索引等情況,子查詢多次執行會導致查詢耗時嚴重。子查詢解關聯將關聯子查詢變換為等價的Join語句,可以避免子查詢多次執行,同時最佳化器可以對Join做進一步最佳化。
支援OSS外表能力
OSS引擎可以讓PolarDB直接查詢OSS儲存上的CSV資料,有效地降低儲存的成本。通過OSS外表,您可以把CSV格式的冷資料存放區在OSS引擎上,並對冷資料進行查詢和分析。