پوسٹگریس لاگت کی وضاحت کریں۔

Pws Grys Lagt Ky Wdaht Kry



پوسٹگریس ایک طاقتور اور وسیع پیمانے پر استعمال شدہ اوپن سورس ریلیشنل ڈیٹا بیس سسٹم ہے جس کی مضبوطی، فعالیت اور کارکردگی کے لیے ایک مضبوط شہرت ہے۔

ایک ٹول جو پوسٹگریس کو کارکردگی میں بنیادی طور پر مضبوط بناتا ہے اس کی EXPLAIN کمانڈ ہے جو ایس کیو ایل کے استفسار پر عمل درآمد کے منصوبے کی تفصیلات فراہم کرتی ہے۔

وضاحت کا حکم کیا ہے؟

EXPLAIN کمانڈ عمل درآمد کا منصوبہ دکھاتا ہے جسے PostgreSQL پلانر دیئے گئے SQL اسٹیٹمنٹ کے لیے تیار کرتا ہے۔







اس میں استفسار کے ہر قدم کو انجام دینے کے تخمینی اخراجات کے بارے میں معلومات شامل ہیں۔ ان اخراجات کا جائزہ لے کر، ہم سمجھ سکتے ہیں کہ سوال آہستہ کیوں چلتا ہے اور اسے کیسے بہتر بنایا جائے۔



PostgreSQL لاگت کی وضاحت کریں۔

دی گئی استفسار کے بارے میں معلومات حاصل کرنے کے لیے ہم بنیادی طور پر EXPLAIN کمانڈ استعمال کرتے ہیں۔ کمانڈ استفسار کے بارے میں کچھ معلومات فراہم کرتی ہے۔



مثال کے طور پر اس سوال کو لیں جو درج ذیل میں دکھایا گیا ہے:





f.title، c.name منتخب کریں۔
فلم سے ایف
فلم_کیٹیگری fc پر f.film_id = fc.film_id میں شامل ہوں۔
جوائن زمرہ c ON fc.category_id = c.category_id;

اگر ہم پچھلی سادہ شمولیت پر وضاحتی کمانڈ چلاتے ہیں:

وضاحت کریں f.title، c.name منتخب کریں۔
فلم سے ایف
فلم_کیٹیگری fc پر f.film_id = fc.film_id میں شامل ہوں۔
جوائن زمرہ c ON fc.category_id = c.category_id;

ہمیں آؤٹ پٹ حاصل کرنا چاہئے جیسا کہ درج ذیل میں دکھایا گیا ہے:



آپ محسوس کر سکتے ہیں کہ ہر استفسار کے مرحلے کے لیے، PostgreSQL اس استفسار کی تخمینی قیمت واپس کرتا ہے۔

  1. startup_cost - یہ قطاروں کو آؤٹ پٹ کرنا شروع کرنے سے پہلے آپریشن کو شروع کرنے کی تخمینی لاگت کو ظاہر کرتا ہے۔
  2. total_cost - تمام قطاروں کو بازیافت کرنے کی کل لاگت۔
  3. قطاریں - یہ قطاروں کی تخمینی تعداد کا تعین کرتی ہے جو استفسار کے ذریعہ واپس کی جاتی ہیں۔
  4. چوڑائی - یہ ان تمام قطاروں کے بائٹس کی اوسط تعداد کا تعین کرتا ہے جو آپریشن کے ذریعہ واپس آتی ہیں۔

PostgreSQL میں استفسار کے اخراجات صوابدیدی اکائیوں میں ظاہر کیے جاتے ہیں جو لاگت کے پیرامیٹرز سے متعین ہوتے ہیں جو سرور کی ترتیب میں متعین ہوتے ہیں۔

ان پیرامیٹرز کی کلید seq_page_cost ہے جو ڈسک کے صفحے کی بازیافت کی قیمت کا تعین کرتی ہے جو کیشے میں نہیں ہے۔

اگر آپ pgAdmin پر ہیں، تو آپ وضاحت کمانڈ کے لیے زیادہ پڑھنے کے قابل اور اچھی طرح سے پیش کردہ خاکہ حاصل کرنے کے لیے 'explain analyze' فیچر استعمال کر سکتے ہیں۔ مثال کے طور پر:

اس کے بعد آپ اعداد و شمار اور تخمینہ لاگت دیکھنے کے لیے ہر قدم پر کلک کر سکتے ہیں۔

لاگت کی بنیاد پر سوالات کو بہتر بنانا

اپنے سوالات کو بہتر بناتے وقت، یہ سمجھنا ضروری ہے کہ کم لاگت کا مطلب عام طور پر تیزی سے عمل درآمد ہوتا ہے۔ لہذا، آپ کم قیمت پر اپنے سوالات میں ترمیم کر سکتے ہیں۔
یہاں غور کرنے کے لئے کچھ عوامل ہیں:

ٹیبل انڈیکس استعمال کریں۔ - اشاریہ جات تلاش پر مبنی استفسارات کی لاگت کو ڈیٹا کے ڈھانچے کو برقرار رکھتے ہوئے نمایاں طور پر کم کرتے ہیں جو تیزی سے تلاش کرنے کی اجازت دیتا ہے۔

فنکشنز اور آپریٹرز کو سمجھداری سے استعمال کریں۔ - فنکشنز اور آپریٹرز کے لیے لاگت کا تخمینہ ہمیشہ درست نہیں ہوتا ہے، کیونکہ اصل لاگت کا بہت زیادہ انحصار مخصوص ڈیٹا پر ہوتا ہے۔ لہذا، افعال اور پیچیدہ آپریٹرز کے استعمال کو کم سے کم تک محدود رکھیں۔

نتیجہ

ہم نے PostgreSQL ANALYZE کمانڈ میں لاگت کے تصور کو دریافت کیا۔ ہم نے اس بات پر تبادلہ خیال کیا کہ کمانڈ آؤٹ پٹ کا کیا مطلب ہے اور دی گئی استفسار کو چلانے کے انتہائی موثر طریقہ کا تجزیہ کرنے کے لیے لاگت آؤٹ پٹ کو کیسے استعمال کیا جائے۔