你距離PostgreSQL 14版本只有“一鍵之差”

阿里巴巴資料庫技術發表於2021-12-28

你距離PostgreSQL 14版本只有“一鍵之差”

在StackOverFlow針對開發人員的2021年調研報告中,共有來自全球的72,517位開發人員參與調研,PostgreSQL被全球開發者們評選為“最想擁有的資料庫管理系統”,由此可見開發人員對它的喜愛之情。

你距離PostgreSQL 14版本只有“一鍵之差”
*資料來源:

長久以來,PostgreSQL憑藉其可靠性和健壯性,早已在全球圈粉無數。在 DB-Engines 排名中,PostgreSQL是第一個也是唯一一個斬獲三次 "DBMS of the Year" 獎項的資料庫。伴隨著眾多 PGers 的期盼,9月30日 PostgreSQL全球開發組宣佈“PostgreSQL 14版本正式釋出”。作為雲市場的領導者,阿里雲也在第一時間跟進 PostgreSQL新版本研發和打磨。現在,您已經可以在阿里雲資料庫服務裡選擇PostgreSQL 14版本了。

一鍵大版本升級


如果您已經在使用阿里雲資料庫 RDS PostgreSQL 9.4-13版本,可以便捷地透過阿里雲RDS PostgreSQL控制檯提供的「大版本升級」功能,一鍵將您的PostgreSQL例項升級到14版本,和傳統需要手動按文件操作的升級方式徹底告別。

阿里雲資料庫RDS PostgreSQL完全相容開源的版本,將PostgreSQL 14的新特性帶給您:

效能增強


從業務應用的效能表現上,PostgreSQL 14做了非常大的最佳化提升。

  1. 有大量連線的場景下,大幅提高了事務的吞吐量,在一些測試場景下,最高可達2倍的提升。新版本繼續提升B-tree索引效能,降低頻繁更新的表的B-tree索引膨脹。

  2. 分割槽表效能和功能持續增強,最佳化器分割槽裁剪能力提升,減少子分割槽subplan和重複的cached plans,減少記憶體使用,同時大幅提升只涉及少量分割槽的SQL效能;解綁分割槽新增 CONCURRENTLY 模式,消除鎖表,消除解綁分割槽對線上業務的影響。

  1. 引入管道查詢模式,提高較差網路環境下的資料寫入吞吐,可以達到接近本地網路的資料寫入吞吐效能。在高延遲網路連線或是有頻繁更新操作的負載場景下,可以大幅提升系統效能。尤其適用於跨網段、跨公網或資料庫網路訪問延時較高,同時有較大的寫入吞吐需求的時序、IoT類業務。

  2. TOAST 支援 lz4 壓縮演算法,可以提供更高的壓縮比和更優的壓縮效能,適用於所有業務場景,在有大欄位表的場景中壓縮效能提升明顯,如text型別。

  1. 內建水平可伸縮的功能介面,外部表(FDW)持續增強,可以支援外部非同步平行計算,尤其適用於分庫分表的資料分析場景,多個例項或多個分片的資料需要並行分析的場景,提高多個例項平行計算的效率。支援會話級持久化foreign server 連線,提高分庫分表場景的OLTP效能,而以往的版本每一個遠端事務都需要重新建立一次遠端庫連線,無法支援OLTP高頻小事務。


安全增強


安全的支援上PostgreSQL 14新增兩大亮點特性。

  1. 新增 pg_read_all_data 和 pg_write_all_data 2個預定義角色,可以方便的設定只讀、讀寫許可權,提高DBA管理效率。

  2. 預設使用 SCRAM-SHA-256 認證方法,完全規避md5可能的金鑰洩露和協議攻擊問題,提高認證方式和密碼認證安全性。


更豐富的資料型別和SQL


PostgreSQL一直以來對資料型別都有廣泛的支援,豐富的外掛可以讓PostgreSQL在資料型別的處理上一專多長,PostgreSQL 14在此基礎上持續最佳化。

  1. 時序場景下的型別增強,支援multi range型別,相容range型別已知的所有運算子和索引,適用於物聯網場景下儲存感測器的指標波動範圍。允許在一個value裡面儲存多個範圍區間,同時支援範圍的包含、相交、左、右、相鄰等邏輯查詢,支援索引加速。增加date_bin函式,按時間間隔打點聚合,簡化打點的演算法,適用於時序場景、分析場景。

  2. 遞迴圖式搜尋增加廣度優先、深度優先語法和迴圈語法,簡化廣度優先、深度優先的語法實現,增加迴圈檢測的SQL寫法,適用於社交、風控、圖式資料、圖譜等場景。

  1. 增加了一種新的搜尋演算法,tid range scan掃描方法, 按HEAP表的物理儲存資料塊地址進行搜尋。支援自定義業務層的並行資料掃描邏輯、隨機資料掃描邏輯,允許使用者輸入需要掃描指定資料塊的範圍。結合rr snapshot export支援一致性單表並行匯出,全表並行無鎖衝突的更新。適用於通用場景,尤其是高併發場景以及有大資料吞吐計算場景。

  2. 另外,適用於通用場景下的JSONB下標語法、儲存過程OUT引數均有支援。


更便捷的資料庫管理


PostgreSQL 14在提高DBA工作效能上做足了工作,提升DBA幸福感。

  1. 垃圾回收增強,concurrently模式建立索引不會引起垃圾膨脹,降低OLTP業務的垃圾膨脹機率。

  2. 新增pg_stat_progress_copy檢視,支援copy匯入資料進度監控 ,匯入進度和速度可觀測。

  3. 新增 replication slot 統計資訊檢視 ,資料庫WAL日誌相關的統計資訊以及每個slot的統計資訊可觀測。

  4. pg_locks檢視新增指標 waitstart,可跟蹤鎖等待開始時間,掌握更多鎖等待細節,例如等待時長。

  5. 新增 pg_stat_database 多個統計指標,資料庫級別的活躍時間、空閒時間、會話量等統計資訊可觀測,進而判斷資料庫是否達到瓶頸。

  6. 增加SQL硬解析和軟解析次數統計,便於分析SQL解析層消耗和最佳化。

  1. 支援wal日誌buffer write, fsync IO等待時長統計 , 方便了解IO資源使用情況和WAL瓶頸分析。


流複製與備份


邏輯複製增強,長事務邏輯複製增加streaming介面,邏輯複製支援流式decoder和傳送,無需等待事務結束,大幅度降低大事務、長事務的複製延遲,適用於多機房部署、單元化部署、跨庫同步訂閱資料場景。同時邏輯複製sync table data階段支援多執行緒,允許同步全量資料的同時接收wal邏輯日誌,可以縮短大表首次同步到達最終一致的耗時。alter subscription語法增強,支援add/drop publication,提高訂閱端的操作便捷性。

以上為部分開源版本的重要特性,在相容開源的基礎上,阿里雲資料庫RDS PostgreSQL 14還具備了老版本的自研產品能力。

Ganos時空資訊引擎系列外掛


支援了Ganos時空資訊引擎系列外掛,對空間/時空資料進行高效的儲存、索引、查詢和分析計算。Ganos引擎歷經不同GIS場景磨鍊,使用簡單高效,是地理位置資訊領域最佳實踐之一。

SGX全加密資料庫


支援全加密資料庫外掛,使用全加密資料庫後,資料在使用者側加密後傳入雲資料庫,資料庫中儲存的、網路中傳輸的、記憶體中快取的都是加密後的資料,資料擁有者以外的任何人無法接觸到使用者的明文資料,端到端全鏈路避免資料洩漏的發生。全加密資料庫非常適用於金融、醫療、政務、營銷等隱私、敏感資料加密場景。

邏輯複製槽故障高可用(Logical Replication Slot Failover)


PostgreSQL在主例項建立的Replication Slot,不會透過流複製協議同步到備例項。當例項發生主備切換,會造成Replication Slot丟失,進而導致邏輯訂閱中斷。RDS PostgreSQL邏輯複製槽故障轉移功能可以將所有的邏輯複製槽從主例項同步到備例項,實現邏輯複製槽的故障轉移。

PGers似乎永遠都對新的版本充滿渴望,期待已久的阿里雲 PGers,RDS PostgreSQL 14已經就緒,文末點選“閱讀原文”升級PostgreSQL 14版本吧!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69940574/viewspace-2849804/,如需轉載,請註明出處,否則將追究法律責任。

相關文章