HeadlinesBriefing favicon HeadlinesBriefing.com

PostgreSQL 19: Fitur Baru dan Graf Properti

Hacker News •
×

PostgreSQL 19 saat ini berada dalam versi beta, dengan ketersediaan umum diperkirakan sekitar September atau Oktober 2026. Artikel ini menjadi teman praktis dari catatan rilis resmi, dengan mengubah entri yang dipilih menjadi contoh yang dapat dijalankan sehingga pengguna dapat melihat cara kerja fitur baru secara aktual. Fitur-fitur ini didasarkan pada catatan rilis resmi dan kode sumber PostgreSQL di bawah Lisensi PostgreSQL. Sebelum menjelajahi fitur-fitur baru, penting untuk dicatat bahwa ini bukanlah daftar lengkap; catatan rilis resmi harus dikonsultasi untuk ke lengkapan. Semua contoh dijalankan terhadap PostgreSQL 19 beta 3 (dirilis pada 2026-08-13), dan output mencerminkan apa yang sebenarnya dicetak oleh server tersebut.

Kueri graf properti adalah fitur utama dari rilis ini. PostgreSQL 19 menerapkan SQL/PGQ, yaitu bagian graf properti dari SQL:2023. Pengguna dapat mendeklarasikan graf properti atas tabel yang ada dan menguerinya dengan pencocokan pola alih-alih menulis join secara manual. Dua tabel biasa dapat diatur sebagai titik dan tepi, sehingga pencocokan pola dapat dilakukan dengan GRAPH_TABLE tempat tepi berarah dicocokkan menggunakan sintaks -[...]->. Keuntungannya adalah pola multi-hop; menghubungkan dua tepi mendapatkan teman-teman teman tanpa perlu self-join, dan () kosong berarti "sebuah titik yang namanya tidak penting". Satu keterbatasan penting adalah bahwa jalur panjang variabel tidak didukung; kuantifikator seperti -[IS follows]->{1,3} dapat diparse tetapi ditolak, sehingga setiap langkah harus ditulis secara eksplisit. Kueri GRAPH_TABLE ditulis ulang menjadi kueri relasional biasa, yang berarti perencana, statistik, dan pilihan indeks yang sudah dikenal oleh pengguna tetap berlaku.

Pembaruan dan penghapusan temporal memperkenalkan klausul baru FOR PORTION OF pada pernyataan UPDATE dan DELETE. Klausul ini memungkinkan penentuan periode waktu yang valid untuk operasi, memungkinkan manipulasi data yang lebih tepat dalam tabel bitemporal. Fitur ini terintegrasi dengan tabel yang versi-nya dikelola oleh sistem untuk memastikan bahwa pembaruan dan penghapusan hanya memengaruhi baris dalam rentang waktu yang ditentukan, meningkatkan integritas data untuk aplikasi yang memerlukan pelacakan historis.

Rilis ini juga meningkatkan kemampuan JSON dan kueri. Operator dan fungsi baru meningkatkan penanganan tipe data JSON, memungkinkan penguerian dan manipulasi yang lebih efisien. Peningkatan ini mengurangi kebutuhan akan subkueri kompleks atau pemrosesan eksternal saat bekerja dengan data semi-terstruktur, memberikan performa yang lebih baik dan sintaks yang lebih mudah untuk operasi JSON umum.

Entitas Utama: Perusahaan: PostgreSQL | Orang: Peter Eisentraut, Ashutosh Bapat