Number one:vacuum速度提高3倍
對于PostgreSQL的新手來說,清理是多版本并發系統的一部分,它負責洗掉每當記錄被更改或洗掉時生成的無效元組或行,autovacuum功能可以清除死掉(已洗掉)的隱藏行,從而消除表膨脹,類似于Java的垃圾收集器,有兩個與vacuum相關的改進:索引的并行清理以及允許對僅追加的資料進行僅索引掃描,

首先,有了并行vacuum,Postgres現在可以使用多個處理器執行緒來更快地執行vacuum操作,我們的測驗結果表明,使用多個并行作業時,vacuum可以提高3倍,其次,在此版本之前,自動vacuum操作僅會在更新和洗掉時觸發,但現在插入操作也同樣會觸發,因此,僅索引掃描將更頻繁地發生,這對于連續流寫入資料庫的物聯網(IoT)應用程式特別有用,
Number two:避免中間人攻擊密碼
Libpq是客戶端應用程式用來查詢資料庫的默認庫函式集,確保這些連接的安全很重要,否則可能會有模擬服務器的機會,這也稱為中間人攻擊,可以使用許多不同的安全協議對客戶端發送的密碼進行編碼,例如SCRAM-SHA-256,新的增強功能使SCRAM可以使用通道系結,該功能可以在不使用證書時通過SSL連接進行相互身份驗證,
易于使用的安全性至關重要,因為難以使用的功能通常根本不會帶來安全性,帶通道系結的SCRAM是密碼身份驗證的一種變體,它易于使用,但更加安全,
Number three:減少生產中的錯誤
當資料庫拋出諸如“無法打開檔案庫/ XXXXX / XXXX”("could not open file base/XXXXX/XXXX”)之類的錯誤時,您會意識到有些嚴重錯誤,在大多數情況下,此類錯誤是在嘗試訪問表或索引時發生的,Pg_catcheck是EDB開發的用于診斷系統目錄損壞的簡單工具,如果您懷疑系統目錄已損壞,則此工具可以幫助您準確找出問題所在以及嚴重程度,Pg_catcheck現在將驗證每個關系的初始檔案是否可用(表或索引),
這個選項不會告訴您為什么會出現這樣的錯誤,它也不會提供如何修復它們的建議——對此,你應該咨詢專家,但是,這個選項提供了一個主動的工具,可以幫助早期檢測用例,而不是在生產中發現錯誤,
Number four:驗證完整備份
這是一個用于創建完全物理備份的改進和新工具的完美結合,Pg_basebackup——對運行中的PostgreSQL集群進行備份的工具——現在提供了一個備份清單,此清單是一個JSON檔案,包含關于備份的元資料:版本號、檔案串列、WAL范圍和校驗和,
Pg_verifybackup是一個新工具,它不僅驗證備份中檔案的完整性,還驗證恢復備份所需的WAL日志記錄是否有效,Pg_verifybackup確保您的備份確實是好的,可以正確恢復,
Number five:輕松連接磁區表
通過磁區,您可以使用范圍,串列或哈希鍵對大型資料集進行分段,從而創建回應速度更快的資料庫,磁區會將一個表拆分為多個表,并以對客戶端應用程式透明的方式完成,從而可以更快地訪問所需的資料,以前,PostgreSQL僅在磁區表具有匹配的磁區邊界時才允許您有效地連接磁區表,
在PostgreSQL 13中,磁區連接允許你高效地連接表,即使它們的磁區邊界不完全匹配,這樣做的好處是,連接磁區表的速度更快,這鼓勵了磁區的使用,從而提高了資料庫的回應速度,
Number six:磁區表的邏輯復制
PostgreSQL的主要功能之一是使您可以通過邏輯復制有選擇地將哪些資料復制到備用資料庫,該功能現在更加強大,因為它可以與磁區表一起使用,以前,必須將磁區分別復制到備用資料庫,現在,可以顯式發布磁區表,從而使其所有磁區自動發布,添加/洗掉磁區會使磁區同樣添加到備用資料庫中或從備用資料庫中洗掉,
此功能的好處在于,它為您提供了極大的靈活性,您現在還可以從磁區表復制到非磁區表,從非磁區表復制到磁區表,當然也可以從磁區表復制到磁區表,邏輯復制不再因磁區而受到限制,
Number seven:B樹索引的重復資料洗掉
現在,B樹索引(PostgreSQL中使用的默認和最常見的索引型別)已默認洗掉重復資料,例如,假設您的索引使用的是墨西哥的“ Estado Unidos Mexicanos”和美國的“ United States of America”,如果有成千上萬條具有相同國家/地區名稱的記錄,則重復的索引鍵現在僅在磁盤上存盤一次,如果您的作業負載使用許多非唯一索引(低基數),這可能意味著可以節省大量磁盤空間和更好的性能,早期測驗顯示索引減小了40%,在某些特定情況下甚至減小了70%,
有趣的是,PostgreSQL 13中默認啟用了此功能,因此您可能會受益甚至不知道!請注意,如果您使用pg_upgrade進行升級,則需要對以前的索引進行重復資料洗掉時重新索引,
Number eight:其他安全性增強
PostgreSQL社區在每個主要版本中繼續增強重要的安全功能,一個重要的默認值已更改:最低TLS版本為1.2,這更加安全,除此之外,還有許多其他改進,使您在安全設定方面有更多選擇和靈活性,其中,外部資料包裝器還具有其他一些便利,例如使用證書進行身份驗證的功能,以及允許非超級用戶無需密碼即可連接到外部服務器,除此之外,還有許多其他功能-包括使用密碼來解鎖客戶端證書的功能-為您提供更多滿足安全需求的選項,
這只是我們認為值得強調的一小部分,但是,PostgreSQL 13具有170多個增強功能-每個人都有一些增強!閱讀發行說明以獲取PostgreSQL 13新增功能的完整串列,
PostgreSQL社區繼續在每個主要版本中增強重要的安全特性,一個重要的默認值發生了變化:TLS的最小版本是1.2,這更安全,除此之外,還有許多其他改進,為您提供了更多的選擇和安全性設定的靈活性,其中,外部資料包裝器(Foreign Data Wrappers,簡稱FDW)有兩個額外的便利,比如使用證書進行身份驗證的能力,以及允許非超級用戶無需密碼即可連接到外部服務器,此外,還有許多其他附加功能——包括使用密碼解鎖客戶證書的能力——為您提供了更多的選擇,以滿足您的安全需求,
這是對我們認為值得強調的東西的簡短描述,PostgreSQL 13有超過170個增強——每個人都有適合的東西! 可以閱讀社區發布說明,了解PostgreSQL 13的新特性,
準備升級了嗎?立即下載PostgreSQL 13
更多精彩內容,請關注以下平臺、網站:
中國Postgre SQL分會官方公眾號(技術文章、技識訓動):
開源軟體聯盟PostgreSQL分會
中國Postgre SQL分會技術問答社區:
www.pgfans.cn
中國Postgre SQL分會官方網站:
www.postgresqlchina.com
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/142111.html
標籤:AI
上一篇:華為20級技術官耗巨資整合出交換機TCP/IP網路協議精髓
下一篇:華為手機
