Her yıl Eylül ve Ekim ayları arasında sunulduğu gibi, PostgreSQL 17'nin yeni sürümünün lansmanı duyuruldu ve önceki tüm sürümlerde olduğu gibi, Öncelik, performansın iyileştirilmesi ve optimizasyon olmaya devam ediyor Kaynakların özellikle VAKUM, G/Ç ve sorgu gibi işlemler için kullanılmasına olanak sağlarken, bu sürümün en önemli yeni özelliği artımlı yedeklemedir.
Güncelleme, iş kullanıcıları için veritabanı yönetimini ve kullanımını basitleştiren bir dizi iyileştirme getiriyor. PostgreSQL geçmişte ilişkisel bir veritabanı olmasına rağmen, bu sürüm, MongoDB Atlas ile yaygın olarak ilişkilendirilen bir özellik olan JSON belgeleriyle çalışmaya yönelik gelişmiş işlevsellik ile entegrasyonunu genişletiyor.
PostgreSQL 17'deki yenilikler
PostgreSQL 17'nin sunulan bu yeni sürümünde, VAKUM işleminde yeni veri yapısı, bellek tüketimini 20 kata kadar azaltarak bu işlemlerin paylaşılan kaynaklar açısından daha hızlı ve verimli olmasını sağlar.
kısmında Performans iyileştirmeleri, geri yazma günlüğü yönetimi (WAL), birçok eşzamanlı sorgunun bulunduğu sistemlerde iki kata kadar daha fazla yazma performansı sağlayacak şekilde optimize edilmiştir. Bir teklifte bulunuldu Sıralı aramayı geliştirmek için akış G/Ç arayüzü ve ANALİZ işlemini gerçekleştirdikten sonra istatistiklerin güncellenmesi.
Buna ek olarak, “IN” cümlecikleri içeren sorgularda iyileştirmeler uygulandı B-ağacı indeksleri kullanılarak BRIN indekslerinin paralel yapısı uygulandı, NOT NULL kontrolleri optimize edildi ve ortak tablo ifadelerinin (CTE) işlenmesi hızlandırıldı ve yoğun hesaplamalar için AVX-512 gibi SIMD talimatları dahil edildi. 'bit_count' işlevi gibi işlemleri hızlandırmak için.
Öne çıkan bir diğer yenilik ise JSON için yeni özellikler, beri Kullanıcılar artık standart SQL komutlarını kullanarak JSON veri türlerini sorgulayabilir. Bu, yeni tablo işlevi sayesinde mümkündür jsonJSON verilerini tablo yapısına dönüştürür. Buradan kullanıcılar cümleyi kullanarak sorgu yapabilirler. FROM SQL'de verilerin ilişkisel biçimde döndürülmesine olanak tanır. JSON verilerini standart PostgreSQL tablolarına dönüştürmek için 'JSON_TABLE' işlevi eklendi.
The yeni artımlı yedekleme işlevi PostgreSQL 17'de yalnızca son yedeklemeden bu yana yapılan değişiklikleri yedeklemenizi sağlar bant genişliği kullanımını optimize eden ve depolamayı azaltan tam veya artımlı. PostgreSQL, veritabanının gerekli bölümlerini korumak için yazma öncesi günlüğünü (WAL) kopyalayan WAL Archiving gibi çözümleri zaten sunmuş olsa da, sürüm 17 ilk kez artımlı kopyalar gerçekleştirmek için yerel bir mekanizma sunuyor. Bu sistem, performans üzerinde daha az etki yaratarak yalnızca çalışma sırasındaki kesintileri en aza indirmekle kalmaz, aynı zamanda kurtarma sürelerini de önemli ölçüde azaltır; bu, yedeklemelerin geri yüklenmesinin kullanıcılar için genellikle yavaş ve endişe verici bir süreç olması nedeniyle önemli bir husustur.
Platformdan bağımsız motor uygulandı yerel ayar özelliklerini işleyerek sorgu sonuçlarının sıralamasında tutarlı davranışa olanak tanır. Bu motor, değerleri sıralarken özel karakterlerin varlığı ve büyük/küçük harf duyarlılığı gibi faktörleri dikkate alır. Mantıksal çoğaltma mekanizması artık yeni bir sürüme geçiş sırasında mantıksal çoğaltma yuvalarını silmeye veya verileri yeniden senkronize etmeye gerek kalmadan veritabanı yükseltme işlemini basitleştiriyor.
Of the öne çıkan diğer değişiklikler:
- Uzun dizelerin 'COPY' komutuyla dışa aktarılması iki kata kadar hızlandırıldı.
- Kaynak ve hedef kodlamaları eşleştiğinde optimize edilmiş kopyalama.
- Veri ekleme hatalarına rağmen içe aktarmanın devam etmesine izin vermek için 'ON_ERROR' seçeneği eklendi.
- Bölümlenmiş tablolarda benzersiz tanımlayıcılara sahip sütunları kullanma yeteneği eklendi.
- Hataya dayanıklı yapılandırmalarda bir yedekleme sunucusuna geçiş yapmak için yük devretme özelliği uygulandı.
- Fiziksel bir kopyayı mantıksal bir kopyaya dönüştürmek için yeni bir pg_createsubscriber yardımcı programı eklendi.
- ALPN TLS uzantısını kullanarak doğrudan güvenli TLS bağlantıları üzerinde anlaşmak için "sslnegotiation" seçeneği sunuldu.
- Kullanıcılara DBMS bakımıyla ilgili işlemleri gerçekleştirme hakkı veren önceden tanımlanmış pg_maintain rolü eklendi
Son olarak, bu konuda daha fazla bilgi edinmek istiyorsanız, ayrıntılara başvurabilirsiniz. Aşağıdaki bağlantıda.