PostgreSQL 17 帶來了巨大的效能改進、新的增量備份等等

PostgreSQL 17

正如它年復一年地在九月到十月期間呈現的那樣, PostgreSQL 17新版本已宣布上線 和之前的所有版本一樣, 首要任務仍然是效能改進和最佳化 資源,尤其是 VACUUM、I/O 和查詢等操作,而此版本最重要的新功能是增量備份。

對於商業用戶來說,更新帶來了一系列改進,簡化了資料庫管理和使用。儘管 PostgreSQL 歷來都是關聯式資料庫,但此版本擴展了其與處理 JSON 文件的高級功能的集成,這是通常與 MongoDB Atlas 相關的功能。

PostgreSQL 17 中的新增功能

在這個新版本的 PostgreSQL 17 中, VACUUM 操作中的新資料結構, 這可將記憶體消耗減少多達 20 倍,使這些操作在共享資源方面更快、更有效率。

效能改進,寫回日誌管理 (WAL) 已最佳化,在具有許多並發查詢的系統上實現高達兩倍的寫入效能。有人提出了一個 流式 I/O 介面可改善順序搜尋 並在執行 ANALYZE 操作後更新統計資料。

除此之外 對帶有“IN”子句的查詢進行了改進 透過使用B樹索引,實現了BRIN索引的並行構建,優化了NOT NULL檢查,加速了公共表表達式(CTE)的處理,並且針對密集計算,合併了SIMD指令,例如AVX-512,加速諸如“ bit_count”函數之類的操作。

另一個引人注目的新穎之處是 JSON 的新功能, 自從 使用者現在可以使用標準 SQL 命令查詢 JSON 資料類型。 由於新的表格功能,這成為可能 json,它將 JSON 資料轉換為表格結構。從那裡,用戶可以使用子句進行查詢 FROM 在 SQL 中,允許以關係格式傳回資料。新增了 `JSON_TABLE` 函數將 JSON 資料轉換為標準 PostgreSQL 表。

新的增量備份功能 在 PostgreSQL 17 中 允許您僅備份自上次備份以來所做的更改 完整或增量,可優化頻寬使用並減少儲存。儘管 PostgreSQL 已經提供了諸如 WAL 歸檔之類的解決方案,該解決方案複製預寫日誌 (WAL) 以維護資料庫的必要部分,但版本 17 首次引入了執行增量副本的本機機制。該系統不僅透過減少對效能的影響來最大限度地減少操作期間的中斷,而且還顯著減少恢復時間,這是一個關鍵方面,因為恢復備份對於用戶來說通常是一個緩慢且令人擔憂的過程。

實施平台獨立引擎 處理區域設定屬性,從而允許查詢結果的排序保持一致的行為。此引擎在對值進行排序時會考慮特殊字元的存在和區分大小寫等因素。邏輯複製機制現在簡化了資料庫升級過程,無需在遷移到新版本時刪除邏輯複製槽或重新同步資料。

其他突出的變化:

  • 使用“COPY”命令導出長字串的速度提高了兩倍。
  • 當來源編碼和目標編碼匹配時優化複製。
  • 新增了“ON_ERROR”選項,以允許在插入資料時發生錯誤的情況下繼續導入。
  • 新增了在分區表中使用具有唯一識別碼的列的功能。
  • 實現了故障轉移功能,以切換到容錯配置中的備份伺服器。
  • 新增了新的 pg_createsubscriber 實用程式以將實體副本轉換為邏輯副本。
  • 引入了「ssnegotiation」選項,可直接使用 ALPN TLS 擴充來協商安全 TLS 連線。
  • 新增預定義角色pg_maintain,賦予使用者執行DBMS維護相關操作的權限

最後,如果你有興趣了解更多,可以諮詢詳情 在下面的鏈接中。


在 Google 中將其新增為首選來源