14 पॉइंट द्वारा GN⁺ 2023-09-15 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • PostgreSQL 16 में query parallelism, bulk data loading और logical replication में उल्लेखनीय सुधार किए गए हैं, जिससे performance बेहतर हुई है
  • अधिक SQL/JSON syntax, workloads के लिए नए monitoring statistics, और access control rules को परिभाषित करने में अधिक flexibility जोड़ी गई है

प्रदर्शन सुधार

  • query planner अब FULL और RIGHT join को parallelize करता है, DISTINCT या ORDER BY clause का उपयोग करने वाली queries के लिए अधिक optimized plans बनाता है, SELECT DISTINCT queries में incremental sort का उपयोग करता है, और window functions को optimize करता है
  • single और concurrent operations में COPY का उपयोग करके bulk loading में सुधार किया गया है, और कुछ मामलों में performance 300% तक बेहतर हुई है
  • x86 और ARM architectures पर SIMD का उपयोग करते हुए CPU acceleration जोड़ा गया है, जिससे ASCII और JSON string processing, arrays और subtransaction lookup के दौरान performance बेहतर होती है

लॉजिकल रेप्लिकेशन

  • अब standby instances पर logical replication की जा सकती है, जिससे workload distribution के नए विकल्प संभव हुए हैं
    • व्यस्त primary की जगह standby का उपयोग करके changes को downstream में replicate किया जा सकता है
  • logical replication performance में भी सुधार हुआ है
    • subscriber parallel workers का उपयोग करके बड़े transactions apply कर सकता है
    • जिन tables में primary key नहीं है, उनमें sequential scan की जगह B-tree index का उपयोग करके rows को ढूंढा जा सकता है
    • कुछ परिस्थितियों में binary format का उपयोग करके initial table synchronization को तेज किया जा सकता है

डेवलपर अनुभव

  • SQL/JSON standard से और अधिक syntax जोड़ी गई है, जिसमें JSON_ARRAY(), JSON_ARRAYAGG(), IS JSON जैसे constructors और predicates शामिल हैं
  • thousand separators के लिए numbers में underscore का उपयोग किया जा सकता है (5_432_000)
  • psql में \bind जोड़ा गया है, जिससे parameters वाली queries लिखकर उन्हें variables से substitute किया जा सकता है
  • text collation के लिए support में सुधार किया गया है

मॉनिटरिंग

  • I/O access patterns का बारीकी से विश्लेषण करने वाले metrics देने के लिए pg_stat_io जोड़ा गया है
  • pg_stat_all_tables view में timestamp fields जोड़े गए हैं, जो बताते हैं कि table या index को आखिरी बार कब scan किया गया था
  • parameterized statements को दिए गए values को log करके auto_explain को अधिक readable बनाया गया है

एक्सेस कंट्रोल और सुरक्षा

  • access control के लिए और अधिक fine-grained options दिए गए हैं
  • pg_hba.conf और pg_ident.conf files के management, तथा कई security-oriented client connection parameters के अतिरिक्त सहित अन्य security features को बेहतर बनाया गया है

1 टिप्पणियां

 
GN⁺ 2023-09-15
Hacker News राय
  • PostgreSQL 16 का रिलीज़, कई दशकों तक चलने वाले एक बड़े open source प्रोजेक्ट को बनाए रखने में लगने वाले बिना वेतन के श्रम और गहन सोच की मात्रा के कारण, चंद्रमा पर मानव अवतरण जैसी महत्वपूर्ण उपलब्धि से तुलना की जा रही है.
  • टिप्पणी करने वाला PostgreSQL टीम की प्रशंसा करता है और पुलों व सड़कों जैसी भौतिक अवसंरचना से तुलना करते हुए software infrastructure के महत्व पर ज़ोर देता है.
  • PostgreSQL 16 ने नई सुविधा \bind पेश की है, जो applications को वैसे ही parameterized queries चलाने देती है जैसे वे स्वयं करती हैं, और इसी वजह से यह लोकप्रिय हो रही है.
  • SQL/JSON constructors और identity functions को जोड़ना PostgreSQL 16 में quality-of-life improvement माना जा रहा है.
  • direct I/O सुविधा को लेकर उत्साह है, जो फिलहाल debug_io_direct setting के पीछे है.
  • database performance को optimize करने में इस्तेमाल होने वाली "vacuum" सुविधा में किए गए सुधारों के बारे में सवाल है.
  • भविष्य के releases में default रूप से transparent encryption पर विचार किया जा रहा है या नहीं, इस बारे में सवाल है.
  • उपयोगकर्ता नए release को लेकर उत्साह व्यक्त करता है, लेकिन यह भी बताता है कि उसने नवीनतम Debian पर PostgreSQL 15 इंस्टॉल किया है, और उसे शायद उन नई सुविधाओं पर शोध करना पड़े जो उसके लिए उपयोगी हो सकती हैं.