早在2月份,PostgreSQL就開(kāi)始了對(duì)Zstd壓縮的支持,現(xiàn)在隨著過(guò)去一周的最新代碼變化,這種由Facebook開(kāi)發(fā)的現(xiàn)代壓縮算法現(xiàn)在能夠在這個(gè)領(lǐng)先的開(kāi)源數(shù)據(jù)庫(kù)服務(wù)器中發(fā)揮更大的作用。
上個(gè)月,PostgreSQL的開(kāi)發(fā)者開(kāi)始圍繞處理Zstd壓縮作為其LZ4壓縮的替代方案進(jìn)行基礎(chǔ)設(shè)施的改變。最近幾天落地的代碼工作包括支持Zstd基礎(chǔ)備份壓縮,現(xiàn)在PostgreSQL客戶端和服務(wù)器端的壓縮都支持使用Zstd。
另一個(gè)大的補(bǔ)充是這個(gè)提交提供了Zstd對(duì)WAL中全頁(yè)寫(xiě)操作的壓縮。PostgreSQL的超前寫(xiě)入日志現(xiàn)在支持使用Zstd對(duì)全頁(yè)鏡像進(jìn)行Zstd壓縮,目前這是在默認(rèn)的Zstd壓縮級(jí)別3下進(jìn)行的。
至于Zstd的WAL性能優(yōu)勢(shì),開(kāi)發(fā)人員是這樣解釋的:"zstd很容易超越pglz,而且比LZ4更好,因?yàn)槿藗兿M灶~外的CPU為代價(jià)獲得更多的壓縮率,但兩者在各自的情況下都足夠好,所以在其中一個(gè)或另一個(gè)之間的選擇主要是對(duì)工作負(fù)載模式和涉及的模式的研究。"
在最終的PostgreSQL 15版本中,我們可以看到這個(gè)Zstd壓縮工作和更多的內(nèi)容。
了解更多:
https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=7cf085f077df8dd9b80cf1f5964b5b8c142be496
(舉報(bào))