Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

Oracle RAC परिप्रेक्ष्य से SQL सर्वर क्लस्टरिंग

यह कोई रहस्य नहीं है कि मैं Oracle के डेटाबेस क्लस्टरिंग समाधान को अच्छी तरह से जानता हूं। हाल ही में, मैंने एक SQL सर्वर क्लस्टरिंग, उच्च उपलब्धता समाधान पूरा किया जिसमें प्रारंभिक डिज़ाइन से अंतिम कार्यान्वयन तक दो साल लगे। उस प्रक्रिया में दस्तावेज़ीकरण आवश्यकताएं, विकल्पों का निर्धारण, कार्यान्वयन विवरण के लिए मानचित्रण आवश्यकताओं, बजट, खरीद, स्थापना, कॉन्फ़िगरेशन और परीक्षण शामिल थे।

अब जब मेरा प्रोजेक्ट पूरा हो गया है, मैंने सोचा कि मैं Oracle RAC आदमी के दृष्टिकोण से SQL सर्वर के क्लस्टरिंग के बारे में कुछ आइटम दूंगा। हम सभी जानते हैं कि SQL सर्वर और Oracle दोनों RDBMS इंजन हैं और उनमें कुछ चीजें समान हो सकती हैं। लेकिन वे भी पूरी तरह से अलग जीव हैं। इसलिए यदि आप Oracle के ग्रिड इन्फ्रास्ट्रक्चर और RAC और डेटा गार्ड के साथ सहज हैं, और SQL सर्वर HA समाधान को लागू करने की सोच रहे हैं, तो शायद यह आपके लिए कुछ अच्छी जानकारी प्रदान करेगा।

हमारी वर्तमान उत्पादन प्रणाली एक 4-नोड Oracle RAC प्राथमिक डेटाबेस है। यह हमारे प्राथमिक डेटा केंद्र के भीतर उच्च उपलब्धता (और उच्च प्रदर्शन) प्रदान करता है। हम डेटा गार्ड का उपयोग 3-नोड आरएसी भौतिक स्टैंडबाय डेटाबेस में फिर से करने के लिए करते हैं। भले ही SQL सर्वर <> Oracle, मैं प्रशासन को आसान बनाने के लिए अपने कॉन्फ़िगरेशन को यथासंभव समान रखना चाहता था। इसलिए हमने अपनी प्राथमिक साइट पर 2-नोड SQL सर्वर फ़ेलओवर क्लस्टर और हमारी DR साइट पर 1-नोड "स्टैंडबाय" डेटाबेस तैनात किया।

अब मेरी टिप्पणियों पर, किसी विशेष क्रम में नहीं।

  • SQL सर्वर का HA क्लस्टरिंग समाधान सक्रिय/निष्क्रिय है। ओरेकल सक्रिय / सक्रिय है जो मेरे लिए "बेहतर" है, और हाँ ... यह एक व्यक्तिपरक शब्द है। हमारे सक्रिय/निष्क्रिय कार्यान्वयन के लिए, मुझे वहां बैठे दो भौतिक सर्वरों का विचार पसंद नहीं आया जिनमें एक अनिवार्य रूप से निष्क्रिय था। तो हमारे पास एक भौतिक सर्वर है जो 'पसंदीदा' नोड और एक वर्चुअल सर्वर है। यदि भौतिक सर्वर विफल हो जाता है, तो क्लस्टरिंग स्वचालित रूप से SQL सर्वर इंस्टेंस को वर्चुअल सर्वर पर विफल कर देगी और हम फिर से चालू हो जाएंगे। यह सक्रिय/निष्क्रिय क्लस्टर स्केलेबिलिटी को संबोधित करने के लिए ओरेकल आरएसी की तरह नहीं है, लेकिन यह मुझे हमारे प्राथमिक वातावरण में उच्च उपलब्धता देता है।
  • क्लस्टरिंग को लागू करना बहुत आसान है। OS स्तर पर क्लस्टरिंग चालू करें। चूंकि यह पूरी तरह से माइक्रोसॉफ्ट स्टैक है, इसलिए उन्होंने ओएस में क्लस्टरिंग का निर्माण किया। यह आपके लिए पहले से ही है। आपको बस इसे ऑन करना है। फिर एडमिनिस्ट्रेटिव टूल्स को फायर करें -> फेलओवर क्लस्टर मैनेजर और विजार्ड्स आपको सेटअप के बारे में बताते हैं। ग्रिड इन्फ्रास्ट्रक्चर स्थापित करने की तुलना में यह बहुत आसान है। लेकिन ओरेकल को अलग-अलग ओएस प्लेटफॉर्म से जूझना पड़ता है जिससे वहां मुश्किल हो जाती है। यह देखना दिलचस्प होगा कि कैसे Linux पर SQL Server 2016 फ़ेलओवर क्लस्टरिंग को संभालता है।
  • Oracle एक साझा डिस्क मॉडल का उपयोग करता है जबकि SQL सर्वर साझा कुछ भी नहीं है। लेकिन आपको एक तरह से "साझा डिस्क" का उपयोग करने की आवश्यकता है क्योंकि डिस्क को दोनों नोड्स पर उपलब्ध होना चाहिए। हालाँकि, MS फ़ेलओवर क्लस्टरिंग (MSFC) क्लस्टर डिस्क को सक्रिय नोड पर माउंट करता है। जब SQL सर्वर को दूसरे नोड में ले जाया जाता है, या तो स्वचालित रूप से या मैन्युअल रूप से, MSFC डिस्क को एक नोड पर अनमाउंट करेगा और फिर इसे दूसरे पर माउंट करेगा। Windows Explorer विंडो खोलना और इस संक्रमण के दौरान डिस्क को या तो प्रकट या गायब होते देखना अजीब है।
  • ग्रिड इंफ्रास्ट्रक्चर कोरम संचालन के लिए वोटिंग डिस्क का उपयोग करता है। MSFC में, आप एक कोरम डिस्क रख सकते हैं, एक फ़ाइल साझा का उपयोग कर सकते हैं, या बिना कोरम के कॉन्फ़िगर कर सकते हैं। यदि आप बाद वाले के साथ जाते हैं, तो आप अपनी स्वचालित विफलता क्षमता में बाधा डालते हैं।
  • मैं अपने प्राथमिक क्लस्टर के लिए अभ्यस्त हूं और इसका अपना क्लस्टर स्टैंडबाय है। SQL सर्वर के साथ, प्राथमिक नोड्स और स्टैंडबाय नोड्स को एक ही क्लस्टर का हिस्सा होना चाहिए। शुक्र है, क्लस्टर सबनेट को पार कर सकता है  जो कि Oracle GI से अलग है। स्टैंडबाय नोड जोड़ना बहुत आसान था, हमने अभी इसके वोटिंग अधिकार हटा दिए हैं और हमने स्टैंडबाय नोड के लिए कोरम डिस्क को कॉन्फ़िगर नहीं किया है। यह हमारे लिए ठीक था क्योंकि हम चाहते हैं कि स्टैंडबाय में विफलता मैन्युअल ऑपरेशन हो।
  • एक स्टैंडबाय डेटाबेस के लिए, आप डेटाबेस मिररिंग, लॉग शिपिंग या ऑलवेजऑन अवेलेबिलिटी ग्रुप्स (AGs) का उपयोग कर सकते हैं। पहले दो अपने रास्ते पर हैं इसलिए मैं एजी के साथ गया। AGs को प्राथमिक नोड के समान क्लस्टर का हिस्सा होने के लिए स्टैंडबाय नोड की आवश्यकता होती है। एजी में भाग लेने के लिए डेटाबेस स्थापित करने के माध्यम से आपका मार्गदर्शन करने के लिए एक जादूगर है। यह Oracle फिजिकल स्टैंडबाय सेट करने की तुलना में बहुत आसान है।
  • आपमें से जो Oracle दस्तावेज़ीकरण से घृणा करते हैं, उनके लिए आभारी होने का समय आ गया है। इस प्रक्रिया के दौरान कई बार मैंने पाया कि एमएस दस्तावेज बहुत बड़े टुकड़े गायब हैं। उदाहरण के लिए, मुझे कभी पता नहीं चला कि मेरे स्टैंडबाय नोड को कैसे कॉन्फ़िगर किया जाए ताकि कोई वोटिंग अधिकार न हो। सौभाग्य से हम इसके माध्यम से अपना रास्ता बनाने में सक्षम थे।

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle REGEXP_LIKE और शब्द सीमाएँ

  2. Oracle plsql में Google अनुवाद URL का उपयोग कैसे करें?

  3. Oracle जॉब शेड्यूलर के साथ IRI डेटा इंटीग्रेशन जॉब्स को स्वचालित करें

  4. Oracle डाटाबेस क्लाइंट स्टेप बाय स्टेप स्थापित करें

  5. Oracle.DataAccess.Client निर्भरताएँ: