24x7 डेटाबेस को बनाए रखना काफी बड़ा विषय है जिसमें बहुत सारे विकल्पों पर विचार किया जाता है। इस व्यापक विषय पर विचार करने के लिए कई आइटम हैं, लेकिन हम कुछ उच्च बिंदुओं पर आधार को छूने की कोशिश कर सकते हैं।
आप सबसे पहले क्या पहचानना चाहेंगे, जबकि कई ऑपरेशन 24x7 हैं, आमतौर पर कम गतिविधि के समय होते हैं। आप अपने रखरखाव को चलाने के लिए इन समय का लाभ उठा सकते हैं ताकि आप डेटाबेस पर आपके द्वारा किए जाने वाले हस्तक्षेप को कम कर सकें। दूसरा यह है कि आपको पूर्ण आउटेज के लिए कुछ समय आरक्षित करना होगा (सर्विस पैक या डेटाबेस माइग्रेशन जैसी चीजों के लिए), इसलिए आपको अपने प्रबंधन के साथ पूर्ण रखरखाव खिड़कियों पर बातचीत करने की आवश्यकता होगी। विशिष्ट वस्तुओं के लिए आपको प्रत्येक के लिए विचार करने और योजना बनाने की आवश्यकता होगी, साथ ही साथ अपने उपकरणों का उचित रूप से लाभ उठाना होगा। महत्वपूर्ण टुकड़ा यह है कि आपको इनमें से प्रत्येक को PLAN करना चाहिए , मेरे द्वारा प्रदान किए गए कोई भी उदाहरण "आपके मील भिन्न हो सकते हैं"।
बैकअप
आमतौर पर बैकअप का वर्कलोड पर बहुत अधिक प्रभाव नहीं होगा, लेकिन इसका हिसाब होना चाहिए क्योंकि वे बहुत सारे I / O का उपभोग कर सकते हैं। आप उचित रूप से इनका शेड्यूल करना चाहेंगे और इसे पूरा होने में लगने वाले समय की निगरानी करेंगे। यहां सबसे बड़ी बाधा यह है कि 24x7 ऑपरेशन में, आप संभवतः सप्ताह के हर रात पूर्ण रात्रि बैकअप का संचालन नहीं कर पाएंगे। जब आप फुल ले सकते हैं, तो जब आप डिफरेंशियल ले रहे हों, और अपने लॉग बैकअप के साथ इन दोनों के लिए रिटेंशन पीरियड लेना चाहते हैं।
एक उदाहरण के रूप में, मैं रविवार रात (सबसे कम गतिविधि), अन्य सभी रातों (सोमवार-शनिवार) पर अंतर के अपने सभी डेटाबेस का पूर्ण बैकअप चलाता हूं। मैं पिछले दो हफ़्ते पूरे रखता हूं और डिस्क पर भिन्न होता है, पिछले दो दिनों के लिए लॉग करता है। यह मुझे पुनर्प्राप्ति के लिए पर्याप्त लचीलापन देता है, लेकिन यदि आवश्यक हो तो मुझे टेप से बैकअप पुनर्प्राप्त करना पड़ सकता है।
सूचकांक / सांख्यिकी रखरखाव
यह सबसे आम प्रकार का सक्रिय रखरखाव है, जिससे आपको निपटना होगा। आप इससे बच नहीं सकते, लेकिन आप प्रभाव को कम कर सकते हैं। अंगूठे का प्रारंभिक नियम यह है कि आपको केवल उन वस्तुओं पर रखरखाव करना चाहिए जिनकी आवश्यकता है। सामान्य दिशानिर्देश केवल अनुक्रमणिका के पुनर्निर्माण के लिए हैं जो 30% से अधिक खंडित और 1000 पृष्ठों से बड़े हैं । यदि आपके पास स्वतः-अपडेट आँकड़े हैं , तो यह आपके अधिकांश आँकड़ों के रख-रखाव को संभाल लेगा, लेकिन सिंक में चीजों को रखने के लिए एक रात का काम एक बुरा विचार नहीं है।
यदि आपके पास एंटरप्राइज़ संस्करण है, तो आपके पास रखरखाव के प्रबंधन के लिए कुछ अन्य विकल्प भी हैं। सबसे महत्वपूर्ण ऑनलाइन इंडेक्स रिबर्ड्स है , जो आपको अनुक्रमणिका को फिर से बनाने की अनुमति देगा, जबकि वे अभी भी उपयोग में हैं (अनिवार्य रूप से, यह अगल-बगल में इंडेक्स बनाता है, फिर इसे स्वैप करता है)। आप आवश्यक पुनर्निर्माण के समय को कम करने के लिए "बड़ी" तालिकाओं के लिए विभाजन का भी लाभ उठा सकते हैं ।
इस प्रकार के रखरखाव के लिए आपकी सबसे अच्छी शर्त है, यदि आपके पास कस्टम स्क्रिप्ट नहीं हैं जो इन सर्वोत्तम प्रथाओं को संभालती हैं, तो ओला हॉलेनग्रैन के रखरखाव स्क्रिप्ट का उपयोग करना है । ये सेटअप और कॉन्फ़िगर करने में काफी आसान हैं और इनमें निर्मित कई दिशानिर्देश हैं।
DBCC संगति जाँच
आपके समग्र कार्यभार के आधार पर, आपको अपने संचालन के लिए विघटनकारी होने के लिए DBCC चेक मिल सकते हैं। आपके डेटाबेस के लिए अपने DBCC प्रभाव को कम करने के दो सामान्य तरीके हैं:
PHYSICAL_ONLY
- इस विकल्प को चलाने से आपके डेटाबेस की भौतिक पृष्ठ स्तर पर जाँच होगी और अधिक आक्रामक पूर्ण जाँच से बचना होगा। यह सबसे अधिक संभावित प्रकार के भ्रष्टाचार की पहचान करेगा।
- एक पुनर्स्थापित प्रतिलिपि की जाँच करना - यदि आपके पास जगह है, तो आप डेटाबेस को किसी अन्य उदाहरण में पुनर्स्थापित कर सकते हैं और पुनर्स्थापित प्रतिलिपि के खिलाफ एक DBCC चेक चला सकते हैं। यह आपके लाइव डेटाबेस के बारे में एक ही कहानी बताएगा, लेकिन आप स्पष्ट रूप से गतिविधि में हस्तक्षेप नहीं करेंगे। यहाँ कुछ अन्य विकल्प लॉग शिप कॉपी या मिरर किए गए db के विरुद्ध DBCC चला रहे हैं।
यह ब्लॉग पोस्ट आपके विकल्पों पर अधिक विवरण प्रदान करती है।
बैच जॉब / ईटीएल
यह वास्तव में नीचे आता है कि आप अपनी प्रक्रियाओं को कैसे डिज़ाइन करते हैं। आपका ईटीएल हमेशा लाइव ओएलटीपी टेबल (किसी भी अन्य एप्लिकेशन के रूप में) के साथ हस्तक्षेप कर सकता है, इसलिए ध्यान में रखने के लिए कुछ चाबियाँ:
- अपने अन्य रखरखाव के आसपास और कम गतिविधि की अवधि में इस तरह के काम का शेड्यूल करें।
- कार्य को सही आकार दें ताकि यह दोनों प्रदर्शन के लिए बैचेन हो और ताकि बैच इतना बड़ा न हो कि यह आपकी तालिका को घंटों के लिए लॉक कर दे। स्पेक्ट्रम के सिरों के उदाहरण: रो-बाय-एगोनिजिंग-पंक्ति (RBAR) बनाम एक मिलियन पंक्ति हटाएं।
- जहां उचित हो, स्टेज टेबल का उपयोग करें और अपनी डाटा प्रोसेसिंग को ऑफलाइन करें। जब आवश्यक हो केवल लाइव सामान को स्पर्श करें।
निष्कर्ष
फिर, यहाँ कवर करने के लिए बहुत जमीन है। यह एक व्यापक मार्गदर्शिका नहीं है, लेकिन कुछ दृष्टिकोणों का एक उच्च स्तरीय अवलोकन है। मैंने उच्च-उपलब्धता विकल्पों (जैसे उपलब्धता समूह और विफलता क्लस्टरिंग) पर भी चर्चा नहीं की है। आपको प्रत्येक आइटम की समीक्षा करने और इसे कैसे संभालना है, इसके लिए एक योजना बनाने की आवश्यकता होगी। कई मायनों में, आपको अपने कार्य को आगे बढ़ाने और परिष्कृत करने की भी आवश्यकता होगी।
अतिरिक्त संसाधन:
SQL कौशल VLDB रखरखाव सर्वोत्तम प्रथाओं