PostgreSQL 12 buraxılışı

PostgreSQL komandası açıq mənbə relational verilənlər bazası idarəetmə sisteminin ən son versiyası olan PostgreSQL 12-nin buraxıldığını elan etdi.
PostgreSQL 12 sorğu performansını əhəmiyyətli dərəcədə yaxşılaşdırdı - xüsusilə böyük həcmli məlumatlarla işləyərkən, həmçinin ümumiyyətlə disk sahəsindən istifadəni optimallaşdırdı.

Yeni xüsusiyyətlərə aşağıdakılar daxildir:

  • JSON Path sorğu dilinin tətbiqi (SQL/JSON standartının ən vacib hissəsi);
  • ümumi cədvəl ifadələrinin icrasının optimallaşdırılması (WITH);
  • yaradılan sütunlar üçün dəstək

İcma həmçinin PostgreSQL-in genişlənməsi və etibarlılığı üzərində işləməyə davam edir, beynəlmiləlləşdirmə, autentifikasiya imkanları üçün dəstəyi inkişaf etdirir və sistemi idarə etməyin daha asan yollarını təqdim edir.

Bu buraxılışa qoşula bilən yaddaş mühərrikləri üçün interfeysin tətbiqi daxildir ki, bu da indi tərtibatçılara öz məlumat saxlama üsullarını yaratmağa imkan verir.

Performans təkmilləşdirmələri

PostgreSQL 12 indeksləşdirmə və bölmə sistemləri üçün əhəmiyyətli performans və texniki xidmət təkmilləşdirmələrini ehtiva edir.

PostgreSQL-də standart indeksləşdirmə növü olan B-ağacı indeksləri tez-tez indeks dəyişikliklərini əhatə edən iş yükləri üçün 12-ci versiyada optimallaşdırılıb. PostgreSQL 12 üçün TPC-C etalonundan istifadə məkandan istifadədə orta hesabla 40% azalma və sorğu performansında ümumi artım nümayiş etdirdi.

Bölünmüş cədvəllərə qarşı sorğular, xüsusən məlumat massivlərinin yalnız məhdud hissələri ilə işləməyi tələb edən minlərlə bölmədən ibarət cədvəllər üçün nəzərəçarpacaq təkmilləşdirmələr əldə etmişdir. INSERT və COPY istifadə edərək bölmələrə ayrılmış cədvəllərə məlumatların əlavə edilməsi performansı, həmçinin sorğuları bloklamadan yeni bölmə əlavə etmək imkanı yaxşılaşdırılıb.

PostgreSQL 12 ümumi performansa təsir edən indeksləşdirmə üçün əlavə təkmilləşdirmələr etdi, o cümlədən:

  • GiST, GIN və SP-GiST indeks növləri üçün WAL yaradan zaman azaldılmış əlavə xərclər;
  • GiST indekslərində sözdə əhatə edən indeksləri (INCLUDE bəndi) yaratmaq imkanı;
  • məsafə operatorundan (<->) və SP-GiST indekslərindən istifadə edərək "ən yaxın qonşu" sorğularını (k-NN axtarışı) yerinə yetirmək imkanı;
  • Dəyərləri qeyri-bərabər paylanmış sütunlardan istifadə edərkən daha yaxşı sorğu planları əldə etməyə kömək edən CREATE STATISTICS istifadə edərək ən ümumi dəyər (MCV) statistikasının toplanması dəstəyi.

PostgreSQL 11-də təqdim edilmiş LLVM-dən istifadə edərək JIT kompilyasiyası indi defolt olaraq aktivdir. JIT kompilyasiyası WHERE bəndlərində, hədəf siyahılarında, aqreqatlarda və bəzi daxili əməliyyatlarda ifadələrlə işləyərkən performansı yaxşılaşdırır. PostgreSQL-i LLVM ilə tərtib etmisinizsə və ya LLVM aktivləşdirilərək qurulmuş PostgreSQL paketindən istifadə edirsinizsə, o, mövcuddur.

SQL dili imkanlarına və standart uyğunluğa təkmilləşdirmələr

PostgreSQL 12, SQL/JSON standartında müəyyən edilmiş JSON yol ifadələrindən istifadə edərək JSON sənədlərini sorğulamaq imkanı təqdim etdi. Bu cür sorğular məlumatları səmərəli şəkildə əldə etmək üçün JSONB formatında saxlanılan sənədlər üçün mövcud indeksləşdirmə mexanizmlərindən istifadə edə bilər.

WITH sorğuları kimi tanınan ümumi cədvəl ifadələri indi PostgreSQL 12-də əvəzetmədən istifadə etməklə avtomatik icra edilə bilər ki, bu da öz növbəsində bir çox mövcud sorğuların performansını yaxşılaşdırmağa kömək edə bilər. Yeni versiyada WITH sorğusunun əvəzedici hissəsi yalnız rekursiv olmadıqda, heç bir yan təsir göstərmədikdə və sorğunun sonrakı hissəsində yalnız bir dəfə istinad edildikdə yerinə yetirilə bilər.

PostgreSQL 12 "yaradılmış sütunlar" üçün dəstək təqdim edir. SQL standartında təsvir edilən bu sütun növü eyni cədvəldəki digər sütunların məzmunu əsasında dəyəri hesablayır. Bu versiyada PostgreSQL hesablanmış dəyərin diskdə saxlandığı "saxlanmış yaradılan sütunları" dəstəkləyir.

İnternasiya

PostgreSQL 12 istifadəçilərə, məsələn, böyük hərflərə həssas olmayan və ya vurğuya həssas olmayan müqayisələrə icazə verə bilən "qeyri-deterministik harmanlamaları" müəyyən etməyə imkan verməklə ICU kollasiyaları üçün dəstəyi genişləndirir.

İdentifikasiyası

PostgreSQL əlavə təhlükəsizlik və funksionallıq təmin edən bir neçə təkmilləşdirmə ilə güclü autentifikasiya metodlarına dəstəyini genişləndirir. Bu buraxılış GSSAPI interfeysləri üzərindən autentifikasiya üçün müştəri tərəfi və server tərəfi şifrləməni, həmçinin PostgreSQL OpenLDAP ilə tərtib edildikdə PostgreSQL-in LDAP serverlərini kəşf etmək qabiliyyətini təqdim edir.

Bundan əlavə, PostgreSQL 12 indi çoxfaktorlu autentifikasiya seçimini dəstəkləyir. PostgreSQL serveri indi müştəridən clientcert=verify-full istifadə edərək müvafiq istifadəçi adı ilə etibarlı SSL sertifikatı təqdim etməyi tələb edə bilər və bunu ayrıca autentifikasiya metodu tələbi ilə birləşdirə bilər (məsələn, scram-sha-256).

İdarə

PostgreSQL 12, REINDEX CONCURRENTLY əmrindən istifadə edərək bloklanmayan indekslərin yenidən qurulmasını yerinə yetirmək qabiliyyətini təqdim etdi. Bu, istifadəçilərə uzun müddətli indekslərin yenidən qurulması zamanı DBMS-nin dayanma vaxtının qarşısını almağa imkan verir.

Bundan əlavə, PostgreSQL 12-də siz pg_checksums əmrindən istifadə edərək bağlanma klasterində səhifə yoxlamalarını aktivləşdirə və ya söndürə bilərsiniz. Əvvəllər diskdə saxlanılan məlumatların bütövlüyünü yoxlamağa kömək edən bir xüsusiyyət olan səhifə yoxlamaları yalnız PostgreSQL klasteri initdb istifadə edərək işə salındıqda aktivləşdirilə bilərdi.

Mənbə: linux.org.ru

Добавить комментарий