PostgreSQL 15 已發布!

發表於 2022-10-13 由 PostgreSQL 全球開發團隊
PostgreSQL 專案

2022 年 10 月 13 日 - PostgreSQL 全球開發團隊今天宣布發布 PostgreSQL 15,這是世界上最先進的開放原始碼資料庫的最新版本。

PostgreSQL 15 在近期版本的效能改進基礎上,針對本地和分散式部署中的工作負載管理提供了顯著的效能提升,包括改進的排序。此版本透過新增流行的 MERGE 命令來改善開發人員體驗,並新增了更多觀察資料庫狀態的功能。

「PostgreSQL 開發者社群持續建構簡化執行高效能資料工作負載的功能,同時改善開發人員體驗,」PostgreSQL 核心團隊成員 Jonathan Katz 說道。「PostgreSQL 15 強調了我們如何透過開放軟體開發,為我們的使用者提供一個適用於應用程式開發且對其關鍵資料安全的資料庫。」

PostgreSQL 是一個以其可靠性和穩健性而聞名的創新資料管理系統,受益於來自 全球開發者社群超過 25 年的開放原始碼開發,並已成為各種規模組織首選的開放原始碼關聯式資料庫。

改進的排序效能和壓縮

在此最新版本中,PostgreSQL 改進了其記憶體內和磁碟上的排序演算法,根據排序的資料類型,基準測試顯示速度提升了 25% - 400%。使用 row_number()rank()dense_rank()count() 作為 視窗函數在 PostgreSQL 15 中也具有效能優勢。現在可以並行執行使用 SELECT DISTINCT 的查詢。

先前的 PostgreSQL 版本中允許非同步遠端查詢的基礎上,PostgreSQL 外部資料包裝函式 postgres_fdw 現在支援 非同步提交

PostgreSQL 15 的效能改進擴展到了其歸檔和備份設施。PostgreSQL 15 新增了對 LZ4 和 Zstandard (zstd) 壓縮到預寫日誌 (WAL) 檔案的支援,這可以為某些工作負載帶來空間和效能優勢。在某些作業系統上,PostgreSQL 15 新增了支援 預先提取 WAL 中引用的頁面,以幫助加快恢復時間。PostgreSQL 的內建備份命令 pg_basebackup 現在支援使用 gzip、LZ4 和 zstd 選擇伺服器端壓縮備份檔案。PostgreSQL 15 包含使用 用於歸檔的自定義模組的能力,從而消除了使用 shell 命令的開銷。

富有表現力的開發人員功能

PostgreSQL 15 包含 SQL 標準 MERGE 命令。MERGE 允許您編寫條件 SQL 語句,這些語句可以在單個語句中包含 INSERTUPDATEDELETE 操作。

此最新版本新增了使用正則表達式檢查字串的新函數regexp_count()regexp_instr()regexp_like()regexp_substr()。PostgreSQL 15 還擴展了 range_agg 函數以聚合 multirange 資料類型,這些資料類型是在先前版本中引入的。

PostgreSQL 15 允許使用者 建立使用呼叫者權限 (而不是檢視建立者) 查詢資料的檢視。此選項稱為 security_invoker,它增加了一層額外的保護,以確保檢視呼叫者具有使用基礎資料的正確權限。

邏輯複製的更多選項

PostgreSQL 15 提供了更大的彈性來管理 邏輯複製。此版本針對 發布者引入了 列過濾行清單,讓使用者可以選擇複製表格中的資料子集。PostgreSQL 15 新增了簡化 衝突管理 的功能,包括跳過重播衝突交易以及在偵測到錯誤時自動停用訂閱的功能。此版本還包括支援將兩階段提交 (2PC) 用於邏輯複製。

日誌記錄和配置增強功能

PostgreSQL 15 引入了一種新的日誌記錄格式:jsonlog。此新格式使用定義的 JSON 結構輸出日誌資料,這允許在結構化日誌記錄系統中處理 PostgreSQL 日誌。

此版本使資料庫管理員在使用者如何管理 PostgreSQL 配置方面具有更大的彈性,增加了授予使用者更改伺服器級別配置參數的權限的能力。此外,使用者現在可以使用來自 psql 命令列工具的 \dconfig 命令搜尋有關配置的資訊。

其他值得注意的變更

PostgreSQL 伺服器級別統計資料現在收集在共享記憶體中,從而消除了統計資料收集器處理程序並定期將此資料寫入磁碟。

PostgreSQL 15 允許將 ICU 定序 設定為叢集或個別資料庫的預設定序。

此版本還新增了一個新的內建擴充功能 pg_walinspect,讓使用者可以直接從 SQL 介面檢查預寫日誌檔案的內容。

PostgreSQL 15 也撤銷了除了資料庫擁有者之外,所有使用者在 public (或預設) 綱要中的 CREATE 權限

PostgreSQL 15 移除了長期棄用的「獨佔備份」模式,以及 PL/Python 中對 Python 2 的支援。

關於 PostgreSQL

PostgreSQL 是世界上最先進的開源資料庫,擁有來自全球數千名使用者、貢獻者、公司和組織的社群。PostgreSQL 基於加州大學柏克萊分校開始的 35 年以上工程經驗,並持續以無與倫比的速度發展。 PostgreSQL 成熟的功能集不僅可媲美頂級專有資料庫系統,而且在進階資料庫功能、可擴充性、安全性及穩定性方面超越了它們。

連結