- PostgreSQL 17 में बड़े performance सुधार, memory management में सुधार, storage access optimization, high-concurrency workloads में सुधार, bulk loading और export की speed में बढ़ोतरी, और index query execution में सुधार शामिल हैं
पूरे सिस्टम में performance सुधार
- सामान्य संचालन के लिए आवश्यक PostgreSQL vacuum process की internal memory structure में सुधार करके memory usage को अधिकतम 20 गुना तक कम किया गया
- vacuum speed बढ़ी और shared resources का उपयोग घटा, जिससे workloads के लिए अधिक resources उपलब्ध होते हैं
- I/O layer की performance में लगातार सुधार किया गया
- Write-Ahead Log(WAL) processing में सुधार से high-concurrency workloads में write throughput अधिकतम 2 गुना तक बेहतर हुआ
- नया streaming I/O interface sequential scan (टेबल से सभी डेटा पढ़ना) की speed और
ANALYZE command द्वारा execution plan statistics update करने की speed बढ़ाता है
- query execution में भी performance सुधार का विस्तार किया गया
- B-tree index (PostgreSQL का default indexing method) का उपयोग करने वाले
IN clause वाली queries की performance में सुधार किया गया
- BRIN index में parallel build का support जोड़ा गया
- query planning के लिए कई सुधार शामिल हैं
NOT NULL constraints के लिए optimization
- common table expression (
WITH query) processing में सुधार
bit_count function में AVX-512 के उपयोग सहित computation acceleration के लिए SIMD(Single Instruction/Multiple Data) support का विस्तार
और मज़बूत developer experience
- PostgreSQL JSON support जोड़ने वाला पहला relational database था (2012)
- PostgreSQL 17 में SQL/JSON standard implementation को और विस्तार दिया गया
JSON_TABLE के जरिए JSON data को standard PostgreSQL tables में बदला जा सकता है
- SQL/JSON constructors (
JSON, JSON_SCALAR, JSON_SERIALIZE) और query functions (JSON_EXISTS, JSON_QUERY, JSON_VALUE) का support
- JSON data को PostgreSQL के native data types (number, boolean, string, date/time) में बदलने पर केंद्रित
jsonpath expressions जोड़े गए
MERGE command में RETURNING clause और view update capability जोड़ी गई
- bulk loading और data export capabilities में सुधार
COPY command का उपयोग करके बड़ी rows export करने पर अधिकतम 2 गुना performance सुधार
- source और target encoding मेल खाने पर
COPY performance में सुधार
- insert errors होने पर भी import जारी रखने के लिए
ON_ERROR option जोड़ा गया
- partitions और remote PostgreSQL instances में distributed data management capabilities का विस्तार
- partitioned tables में ID columns और exclusion constraints के उपयोग का support
postgres_fdw का उपयोग करके EXISTS और IN subqueries को remote server पर push किया जा सकता है
- built-in platform-independent और immutable collation provider शामिल
- C collation जैसी sorting semantics देता है, लेकिन
SQL_ASCII की जगह UTF-8 encoding का उपयोग करता है
- इस नए collation provider का उपयोग करने पर text-based queries PostgreSQL कहीं भी run हो, समान sorting result देती हैं
high availability और major version upgrades के लिए logical replication में सुधार
- logical replication का उपयोग real-time में data streaming के लिए किया जाता है
- पिछले versions में major version upgrade के समय logical replication slots हटाने पड़ते थे, जिससे upgrade के बाद subscribers को data फिर से sync करना पड़ता था
- PostgreSQL 17 से logical replication slots हटाने की ज़रूरत नहीं रही, जिससे upgrade process सरल हो गया
- logical replication के लिए failover control functionality शामिल है, जिससे high availability environments में deployment अधिक resilient हो जाता है
pg_createsubscriber command-line tool पेश किया गया, जिससे physical replica को नए logical replica में बदला जा सकता है
security और operations management के लिए अधिक विकल्प
- PostgreSQL 17 database system के पूरे lifecycle को manage करने के लिए users की capabilities का और विस्तार करता है
- ALPN का उपयोग करते समय direct TLS handshake करने के लिए
sslnegotiation नाम का नया TLS option जोड़ा गया
- maintenance tasks करने की permission देने वाला
pg_maintain predefined role जोड़ा गया
- PostgreSQL में शामिल backup utility
pg_basebackup अब incremental backups को support करती है, और complete backup को reconstruct करने के लिए pg_combinebackup utility जोड़ी गई
pg_dump में dump file बनाते समय शामिल किए जाने वाले objects चुनने के लिए --filter नाम का नया option शामिल है
- monitoring और analysis capabilities में सुधार
EXPLAIN अब local I/O block reads और writes पर लगे समय को दिखाता है
SERIALIZE और MEMORY नाम के दो नए options शामिल हैं: network transmission के लिए data conversion में लगे समय और इस्तेमाल हुई memory की मात्रा देखने में उपयोगी
- index cleanup progress की reporting
pg_wait_events system view जोड़ा गया, जिसे pg_stat_activity के साथ मिलाकर active sessions के wait करने के कारणों पर insight मिलती है
1 टिप्पणियां
Hacker News राय
PostgreSQL 17 की नई रिलीज़ पर बधाई के साथ कई सुधारों का उल्लेख
pg_basebackupमें incremental backup support औरpg_combinebackuputility जोड़ी गईJSON features की उपयोगिता पर राय
JSON_TABLEfeature सीखने की उत्सुकता व्यक्तJSON_TABLE feature के उपयोग का अनुभव साझा
jsonbcolumn में store करके view लिखकर parse करने के तरीके की उपयोगिता पर ज़ोरPostgreSQL 17 के performance improvement और UX feature enhancement का उल्लेख
change log पर प्रतिक्रिया
open source software पर भरोसे की समस्या के कारण Oracle से MSSQL पर migration का अनुभव साझा
Postgres में लगातार हो रहे सुधारों के लिए आभार और Incremental View Maintenance (IVM) extension के official support की उम्मीद
PostgreSQL के major version upgrade support को लेकर उम्मीद
Postgres में system-versioned table आने की उम्मीद
Postgres के JSON integration में सुधार से नए web framework paradigm संभव होने की उम्मीद