ترقی کے ایک سال بعد PostgreSQL 12 کی ایک نئی مستحکم شاخ۔ نئی برانچ کے لیے اپ ڈیٹس نومبر 2024 تک پانچ سال کے لیے۔
اہم :
- کے لیے شامل کردہ حمایت"جنریٹڈ کالمز جن کی قدر کا حساب ایک ہی ٹیبل میں دوسرے کالموں کی قدروں کو شامل کرنے والے ایکسپریشن کی بنیاد پر کیا جاتا ہے (ملاحظہ کی طرح، لیکن انفرادی کالموں کے لیے)۔ تخلیق شدہ کالم دو قسم کے ہو سکتے ہیں: ذخیرہ شدہ اور ورچوئل۔ سابقہ صورت میں، قدر کا حساب اس وقت کیا جاتا ہے جب ڈیٹا کو شامل یا تبدیل کیا جاتا ہے، جب کہ ہر ایک موجودہ کیلٹر کی حالت کی بنیاد پر قدر کو پڑھا جاتا ہے۔ کالم فی الحال، پوسٹگری ایس کیو ایل میں صرف ذخیرہ شدہ کالم سپورٹ ہیں۔
- استعمال کرتے ہوئے JSON دستاویزات سے ڈیٹا استفسار کرنے کی اہلیت شامل کی گئی۔ کی یاد دلانے والا اور SQL/JSON معیار میں بیان کیا گیا ہے۔ JSONB فارمیٹ میں ذخیرہ شدہ دستاویزات کے لیے اس طرح کے تاثرات پر کارروائی کی کارکردگی کو بہتر بنانے کے لیے، موجودہ اشاریہ سازی کے طریقہ کار کا استعمال کیا جاتا ہے۔
- جسٹ ان ٹائم (جے آئی ٹی) کمپائلر، ایل ایل وی ایم ڈیولپمنٹس پر مبنی، ایس کیو ایل استفسار کی کارروائی کے دوران بعض اظہارات کے عمل کو تیز کرنے کے لیے بطور ڈیفالٹ فعال ہوتا ہے۔ مثال کے طور پر، JIT کو "WHERE" بلاکس، ہدف کی فہرستوں، مجموعی اظہارات، اور بعض داخلی کارروائیوں کے اندر اظہار کی رفتار کو تیز کرنے کے لیے استعمال کیا جا سکتا ہے۔
- اشاریہ سازی کی کارکردگی میں نمایاں بہتری آئی ہے۔ بی ٹری اشاریہ جات کو انڈیکس کی بار بار تبدیلیوں کے لیے بہتر بنایا گیا ہے — TPC بینچ مارک مجموعی کارکردگی میں بہتری اور ڈسک کی جگہ کے استعمال میں اوسطاً 40% کمی کو ظاہر کرتے ہیں۔ GIS، GIN، اور SP-GiST انڈیکس کی اقسام کے لیے رائٹ-ایڈ لاگ (WAL) جنریشن اوور ہیڈ کو کم کر دیا گیا ہے۔ جی ایس ٹی کے لیے، ریپر انڈیکس بنانے کی صلاحیت (انکلوڈ اسٹیٹمنٹ کے ذریعے) جس میں اضافی کالم شامل ہیں شامل کیے گئے ہیں۔ زیادہ تر عام اقدار (MCV) کے اعدادوشمار کے لیے تعاون فراہم کیا گیا ہے، جس سے غیر مساوی طور پر تقسیم شدہ کالموں کا استعمال کرتے ہوئے زیادہ سے زیادہ استفسار کے منصوبے تیار کیے جا سکتے ہیں۔
- تقسیم کاری کے نفاذ کو ہزاروں پارٹیشنز کے ساتھ ٹیبل پر پھیلے سوالات کے لیے بہتر بنایا گیا ہے لیکن ڈیٹا کے ایک محدود ذیلی سیٹ کو منتخب کرنے تک محدود ہے۔ INSERT اور COPY آپریشنز کا استعمال کرتے ہوئے تقسیم شدہ جدولوں میں ڈیٹا شامل کرنے کی کارکردگی کو بہتر بنایا گیا ہے، اور استفسار کے عمل کو بلاک کیے بغیر "ALTER TABLE ATTACH PARTITION" کا استعمال کرتے ہوئے نئے پارٹیشنز شامل کرنے کی صلاحیت اب دستیاب ہے۔
- عام ٹیبل کے اظہار کے خودکار ان لائن توسیع کے لئے شامل کردہ تعاون (, CTEs)، جو کہ WITH شق کا استعمال کرتے ہوئے بیان کردہ عارضی نامزد نتائج کے سیٹ کے استعمال کی اجازت دیتے ہیں۔ ان لائن انرولنگ زیادہ تر سوالات کی کارکردگی کو بہتر بناتی ہے، لیکن فی الحال صرف غیر تکراری CTEs کے لیے استعمال ہوتی ہے۔
- سپورٹ شامل کر دی گئی۔ "کولیشن" مقامی خصوصیات، جو آپ کو چھانٹنے کے قواعد اور موازنہ کے طریقے ترتیب دینے کی اجازت دیتی ہیں جو علامتوں کے معنی کو مدنظر رکھتے ہیں (مثال کے طور پر، ڈیجیٹل اقدار کو چھانٹتے وقت، مائنس سائن کی موجودگی اور تعداد سے پہلے کی مدت اور مختلف قسم کی تحریر کو مدنظر رکھا جاتا ہے، اور موازنہ کرتے وقت، علامتوں کی صورت اور تلفظ کے نشان کی موجودگی کو مدنظر نہیں رکھا جاتا ہے)؛
- ملٹی فیکٹر کلائنٹ کی توثیق کے لیے شامل کیا گیا تعاون، جو آپ کو Pg_hba.conf میں scram-sha-256 جیسے اضافی تصدیقی طریقہ کے ساتھ SSL سرٹیفکیٹ کی تصدیق (clientcert=verify-full) کو یکجا کرنے کی اجازت دیتا ہے۔
- کے ذریعے تصدیق کرتے وقت مواصلاتی چینل کی خفیہ کاری کے لیے معاونت شامل کی گئی۔ ، کلائنٹ کی طرف اور سرور دونوں طرف؛
- اگر PostgreSQL OpenLDAP کے ساتھ بنایا گیا ہے تو DNS SRV ریکارڈز کی بنیاد پر LDAP سرورز کا پتہ لگانے کے لیے معاونت شامل کی گئی ہے۔
- آپریشن " شامل کیا گیا ہے۔» انڈیکس میں تحریری کارروائیوں کو مسدود کیے بغیر انڈیکس کو دوبارہ بنانا؛
- شامل کردہ کمانڈ ، جو آپ کو موجودہ ڈیٹا بیس کے لیے ڈیٹا پیجز کی چیکسم تصدیق کو فعال اور غیر فعال کرنے کی اجازت دیتا ہے (پہلے، یہ آپریشن صرف ڈیٹا بیس کی شروعات کے دوران سپورٹ کیا جاتا تھا)؛
- کریٹ انڈیکس، ری انڈیکس، کلسٹر، ویکیوم فل اور pg_checksums آپریشنز کے لیے پیش رفت کا اشارہ اب ظاہر ہوتا ہے۔
- کمانڈ شامل کیا گیا ""مختلف مخصوص کاموں کے لیے موزوں نئے ٹیبل سٹوریج کے طریقوں کے لیے ہینڈلرز کو جوڑنے کے لیے۔ فی الحال، صرف بلٹ ان ٹیبل تک رسائی کا طریقہ "ہیپ" ہے۔
- recovery.conf کنفیگریشن فائل کو postgresql.conf کے ساتھ ملا دیا گیا ہے۔ حادثے کے بعد بحالی کی حالت میں منتقلی کی نشاندہی کرنے کے لیے اب درج ذیل اشارے استعمال کیے جاتے ہیں: recovery.signal اور standby.signal فائلیں استعمال کریں۔
ماخذ: opennet.ru
