PostgreSQL प्रदर्शन और क्वेरी अनुकूलन · पाठ

Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग

सर्वोत्तम प्रदर्शन और रखरखाव के लिए autovacuum डेमन को कॉन्फ़िगर और ट्यून करना सीखें।

पाठ 2, कुल 4 में से11 चरण

Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग, CoddyKit पर PostgreSQL प्रदर्शन और क्वेरी अनुकूलन का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह PostgreSQL प्रदर्शन और क्वेरी अनुकूलन सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। PostgreSQL प्रदर्शन और क्वेरी अनुकूलन पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

ऑटोवैक्यूम से अपना डेटाबेस बेहतर बनाएँ

PostgreSQL के ऑटोवैक्यूम को समायोजित करने के इस पाठ में आपका स्वागत है! MVCC और VACUUM सीखने के बाद, आइए इस महत्वपूर्ण पृष्ठभूमि प्रक्रिया को प्रबंधित करने का तरीका समझें।

ऑटोवैक्यूम अपने-आप जगह वापस प्राप्त करता है और आँकड़े अपडेट करता है, जिससे तालिका फैलाव और धीमी क्वेरी जैसी प्रदर्शन समस्याएँ रुकती हैं।

ऑटोवैक्यूम के स्वचालित कार्य

ऑटोवैक्यूम डेमन पृष्ठभूमि में चलता है और उन तालिकाओं के लिए आपके डेटाबेस की लगातार निगरानी करता है जिन्हें ध्यान देने की आवश्यकता है। यह दो मुख्य कार्य करता है:

  • VACUUM: "डेड" पंक्तियों द्वारा घेरी गई जगह वापस प्राप्त करता है, ताकि वह नए डेटा के लिए उपलब्ध हो सके।
  • ANALYZE: तालिका के आँकड़े अपडेट करता है, जिससे क्वेरी योजनाकार सबसे प्रभावी निष्पादन योजनाएँ चुन सके।

ऑटोवैक्यूम की सेटिंग कहाँ मिलती हैं

अधिकांश ऑटोवैक्यूम सेटिंग आपकी PostgreSQL कॉन्फ़िगरेशन फ़ाइल में मिलती हैं, जिसका सामान्य नाम postgresql.conf होता है। आप इन्हें डेटाबेस या तालिका स्तर पर भी बदल सकते हैं।

याद रखें कि बदलाव लागू होने के लिए PostgreSQL को पुनः आरंभ करें या कॉन्फ़िगरेशन को फिर से लोड करें!

SHOW config_file;

ऑटोवैक्यूम चालू या बंद करना

सबसे मूलभूत सेटिंग autovacuum है। यह सामान्यतः डिफ़ॉल्ट रूप से सक्षम होती है और अधिकांश उत्पादन प्रणालियों के लिए आपको इसे ऐसे ही रखना चाहिए!

इसे बंद करने पर मैन्युअल रूप से वैक्यूम करना पड़ता है, जो आसानी से छूट सकता है और गंभीर प्रदर्शन समस्याएँ पैदा कर सकता है।

ALTER SYSTEM SET autovacuum = on;

ऑटोवैक्यूम तालिकाओं को कब वैक्यूम करता है

जब डेड पंक्तियों की एक निश्चित संख्या जमा हो जाती है, तब ऑटोवैक्यूम VACUUM शुरू करता है। इसे दो पैरामीटर नियंत्रित करते हैं:

  • autovacuum_vacuum_scale_factor: तालिका के आकार का एक प्रतिशत (जैसे, 20% के लिए 0.2)।
  • autovacuum_vacuum_threshold: डेड पंक्तियों की एक निश्चित न्यूनतम संख्या।

वैक्यूम तब शुरू होता है जब (dead_rows > autovacuum_vacuum_threshold + table_rows * autovacuum_vacuum_scale_factor) हो।

वैक्यूम ट्रिगर की गणना

मान लीजिए कि autovacuum_vacuum_threshold का मान 50 है और autovacuum_vacuum_scale_factor का मान 0.2 (20%) है। 1000 पंक्तियों वाली तालिका के लिए वैक्यूम तब शुरू होगा जब:

  • dead_rows > 50 + (1000 * 0.2)
  • dead_rows > 50 + 200
  • dead_rows > 250

आप बहुत सक्रिय या बहुत कम बदलने वाली तालिकाओं के लिए इन मानों को समायोजित कर सकते हैं।

ऑटोवैक्यूम तालिकाओं का विश्लेषण कब करता है

वैक्यूम करने की तरह, ऑटोवैक्यूम भी एक सीमा के आधार पर ANALYZE कार्य शुरू करता है:

  • autovacuum_analyze_scale_factor: तालिका के आकार का एक प्रतिशत।
  • autovacuum_analyze_threshold: बदली हुई पंक्तियों की एक निश्चित न्यूनतम संख्या।

विश्लेषण यह सुनिश्चित करता है कि क्वेरी योजनाकार के पास बेहतर क्वेरी योजनाओं के लिए अद्यतन आँकड़े हों और धीमी क्वेरी रुकें।

ऑटोवैक्यूम की आवृत्ति और समवर्तीता

दो और महत्वपूर्ण पैरामीटर हैं:

  • autovacuum_naptime: डेटाबेस की जाँच के बीच ऑटोवैक्यूम कितनी देर प्रतीक्षा करता है (जैसे, '1min')। कम प्रतीक्षा-अंतराल का अर्थ है अधिक बार जाँच।
  • autovacuum_max_workers: सभी डेटाबेस में एक साथ चल सकने वाली ऑटोवैक्यूम प्रक्रियाओं की अधिकतम संख्या। अधिक कार्यकर्ता होने पर एक साथ अधिक वैक्यूम और विश्लेषण हो सकते हैं।

प्रत्येक तालिका के लिए ऑटोवैक्यूम को अनुकूलित करना

कभी-कभी किसी तालिका को वैश्विक डिफ़ॉल्ट से अलग ऑटोवैक्यूम सेटिंग की आवश्यकता हो सकती है। उदाहरण के लिए, बहुत बड़ी और बार-बार अपडेट होने वाली तालिका को अधिक आक्रामक वैक्यूम से लाभ मिल सकता है।

आप ALTER TABLE का उपयोग करके अलग-अलग तालिकाओं के लिए अधिकांश ऑटोवैक्यूम पैरामीटर को ओवरराइड कर सकते हैं।

ALTER TABLE my_large_table SET (autovacuum_vacuum_scale_factor = 0.05);

ऑटोवैक्यूम की त्वरित जाँच

ऑटोवैक्यूम आपके डेटाबेस को स्वस्थ रखने में मदद करता है। आइए जाँचते हैं कि यह तालिका को कब वैक्यूम करना है, यह कैसे तय करता है।

ऑटोवैक्यूम समायोजन का पुनरावलोकन

बहुत अच्छा! आपने PostgreSQL के ऑटोवैक्यूम डेमन को कॉन्फ़िगर और समायोजित करना सीख लिया है।

  • ऑटोवैक्यूम स्वचालित रूप से VACUUM और ANALYZE करता है।
  • मुख्य पैरामीटर यह नियंत्रित करते हैं कि यह कब (स्केल फ़ैक्टर, थ्रेशोल्ड) और कितनी बार (नैप-टाइम) चलता है।
  • आप postgresql.conf में वैश्विक रूप से या ALTER TABLE का उपयोग करके प्रत्येक तालिका के लिए सेटिंग अनुकूलित कर सकते हैं।

डेटाबेस के प्रदर्शन को बनाए रखने और फैलाव रोकने के लिए ऑटोवैक्यूम का उचित समायोजन आवश्यक है।

शुरुआत निःशुल्क

एआई शिक्षक के साथ SQL सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
22
पाठ
88

अक्सर पूछे जाने वाले प्रश्न

क्या “Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग” पाठ निःशुल्क है?

हाँ — PostgreSQL प्रदर्शन और क्वेरी अनुकूलन अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। PostgreSQL प्रदर्शन और क्वेरी अनुकूलन पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग” में मैं क्या सीखूँगा?

सर्वोत्तम प्रदर्शन और रखरखाव के लिए autovacuum डेमन को कॉन्फ़िगर और ट्यून करना सीखें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ PostgreSQL प्रदर्शन और क्वेरी अनुकूलन का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या PostgreSQL प्रदर्शन और क्वेरी अनुकूलन शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर PostgreSQL प्रदर्शन और क्वेरी अनुकूलन शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस PostgreSQL प्रदर्शन और क्वेरी अनुकूलन पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर PostgreSQL प्रदर्शन और क्वेरी अनुकूलन पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. MVCC और VACUUM को समझना
  2. Autovacuum कॉन्फ़िगरेशन और ट्यूनिंग
  3. ट्रांज़ैक्शन आइसोलेशन स्तरों का प्रभाव
  4. Transaction ID wraparound को रोकना
← PostgreSQL प्रदर्शन और क्वेरी अनुकूलन पर वापस जाएँ