क्या उपलब्धता समूह में द्वितीयक डेटाबेस पर एक बड़ी क्वेरी चलाने से प्राथमिक डेटाबेस में लेनदेन का प्रदर्शन प्रभावित होगा?


17

मुझे SSRS और झांकी रिपोर्टिंग के लिए वास्तविक समय, या लगभग वास्तविक समय, डेटा प्रदान करने की आवश्यकता है। मैं नहीं चाहता कि लंबे समय तक चलने वाले प्रश्नों से उत्पादन ओएलटीपी प्रणाली नकारात्मक रूप से प्रभावित हो। क्या उपलब्धता समूह में द्वितीयक डेटाबेस पर एक बड़ी क्वेरी चलाने से प्राथमिक डेटाबेस में लेनदेन का प्रदर्शन प्रभावित होगा?

जवाबों:


14

क्या उपलब्धता समूह में द्वितीयक डेटाबेस पर एक बड़ी क्वेरी चलाने से प्राथमिक डेटाबेस में लेनदेन का प्रदर्शन प्रभावित होगा?

यह उपलब्धता समूह को कॉन्फ़िगर करते समय आपके द्वारा उपयोग किए गए सिंक मोड पर निर्भर करता है - सिंक या Async!

पर माध्यमिक प्रतिकृति , सभी लेनदेन केवल स्नैपशॉट अलगाव स्तर का उपयोग करें और सभी लॉकिंग संकेत के रूप में अच्छी तरह से ध्यान नहीं दिया जाता। यही कारण है कि हमेशा काम करते समय अपने कार्यभार का परीक्षण करना महत्वपूर्ण है।

से: द्वितीयक प्रतिकृति पर रिपोर्टिंग कार्यभार चलाते समय REDO थ्रेड को अवरुद्ध करना

स्नैपशॉट अलगाव में रिपोर्टिंग वर्कलोड की मैपिंग करते समय, डीएमएल वर्कलोड के बीच माध्यमिक प्रतिकृति पर REDO थ्रेड द्वारा लागू किए गए और रीड या रिपोर्टिंग वर्कलोड के बीच अवरुद्ध को समाप्त करता है , यह DDL ऑपरेशन को निष्पादित करते समय REDO थ्रेड के संभावित अवरोध को समाप्त नहीं करता है

अगर उपयोग कर रहे हैं

  • सिंक्रोनस मोड

    • आपकी द्वितीयक प्रतिकृति पर समस्या को रोकना प्राथमिक प्रतिकृति पर आपके प्रश्नों के प्रदर्शन को प्रभावित करेगा। तो एक पढ़ा हुआ कार्यभार (चुनिंदा) द्वितीयक पर चला गया हो सकता है कि प्राथमिक प्रतिकृति से आए परिवर्तनों को लागू करने से पुनः थ्रेड को अवरुद्ध कर दिया जाए। इसका मतलब यह है कि प्राथमिक प्रतिकृति को स्थानीय स्तर पर शुरू होने से पहले सभी माध्यमिक SYNC प्रतिकृति पर लागू होने वाले परिवर्तनों के लिए इंतजार करना पड़ता है और समय समाप्त या अवरुद्ध या गतिरोध में समाप्त हो सकता है।

      REDO थ्रेड को पढ़ने योग्य माध्यमिक पर DB STARTUPकमांड के रूप में देखा जा सकता है sys.dm_exec_requests। यदि उस धागे को अवरुद्ध किया जा रहा है, तो माध्यमिक पर आपका पढ़ा हुआ कार्यभार प्राथमिक पर प्रभाव पैदा कर सकता है।

      अधिक विवरणों की जांच के लिए - परिदृश्य 1: द्वितीयक प्रतिकृति पर बड़ी क्वेरी के कारण अवरुद्ध REDO

  • अतुल्यकालिक मोड

    • प्राथमिक माध्यमिक से पावती के लिए इंतजार नहीं करता है। सेकेंडरी पर एक ब्लॉकिंग इशू सिर्फ सेकेंडरी में अलग-थलग होता है, जिसमें लॉक क्लियर होने तक रेडो कतार सेकेंडरी में बढ़ेगी और रीडो थ्रेड लॉग ब्लॉक को लागू करने में सक्षम है। यह प्राथमिक प्रतिकृति को प्रभावित नहीं करेगा।

"वास्तविक-समय या लगभग वास्तविक-समय" की आपकी परिभाषा के लिए उपयोग की जाने वाली सिंक विधि, नेटवर्क विलंबता और कितनी व्यस्त है प्राथमिक प्रतिकृति और लॉग गतिविधि को ध्यान में रखते हुए और अधिक विचार की आवश्यकता है जिसे माध्यमिक में ले जाने की आवश्यकता है।

एसक्यूएल सर्वर 2016 ने ऑल्वोन दायरे में कुछ प्रमुख वृद्धि की है


2
एक अवरुद्ध REDO थ्रेड "प्राथमिक प्रतिकृति पर आपके प्रश्नों के प्रदर्शन को प्रभावित नहीं करता है"। द्वितीयक पर IO विवाद माध्यमिक पर लॉग रिकॉर्ड को बचाने में देरी कर सकता है, जो प्राथमिक पर कई बार प्रभाव डाल सकता है। लेकिन इसका REDO थ्रेड से कोई लेना देना नहीं है। प्राथमिक परिवर्तन को लागू करने के लिए REDO की प्रतीक्षा नहीं करता है; बस इसके लिए लॉग फ़ाइल में लिखा जाना चाहिए। ब्लॉगs.msdn.microsoft.com/sqlserverstorageengine/2011/12/22/… पर
डेविड ब्राउन - Microsoft
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.