टेम्पर्ड में हैश / सॉर्ट स्पिल की किस आवृत्ति से संबंधित है?


10

हमारा एंटरप्राइज़ एप्लिकेशन डेटा भंडारण के लिए SQL सर्वर का उपयोग करता है और मुख्य रूप से एक OLTP सिस्टम है। हालांकि, हमारे आवेदन का एक महत्वपूर्ण घटक एक महत्वपूर्ण OLAP कार्यभार उत्पन्न करता है।

टेम्पर्डब के लिए हमारा लेखन विलंबता लगभग 100ms है। यह प्रवृत्ति समय के साथ रहती है, और बंदALLOW_SNAPSHOT_ISOLATION हो जाती है । हम इस समस्या से संबंधित समस्या का निवारण कर रहे हैं और अभी तक जो एकमात्र दिलचस्प चीज हमने पाई है, वह यह है कि महत्वपूर्ण संख्या में हैश और सॉर्ड स्पिल्ड हैं। हम मानते हैं कि यह हमारे OLAP कार्यभार से आ रहा है।

सवाल

स्पिल्स की आवृत्ति किससे संबंधित है? कोई भी? कितने फैल / सेक? हमारा प्रारंभिक डेटा बताता है कि हमारे पास लगभग 2 हैश स्पिल प्रति सेकंड और 25 सॉर्ट स्पिल प्रति मिनट है।

क्या यह संभव है कि स्पिल्स की यह आवृत्ति हमारे हाई टेम्पर्डड लेटेंसी में प्राथमिक अपराधी हो सकती है?

अन्य सूचना

हम tempdb के लिए एकाधिक फ़ाइलों का उपयोग कर रहे हैं जैसा कि कोर की संख्या के अनुसार अनुशंसित है। Tempdb फाइलें RAID 1 + 0 SAN (उच्च प्रदर्शन SSDs के साथ) पर हैं, लेकिन यह मुख्य DB डेटा और लॉग फ़ाइलों के समान उपकरण है। Tempdb फ़ाइलें बहुत बड़ी आकार की होती हैं, जो कि वे बहुत ही तेजी से बढ़ती हैं। हम 1117 या 1118 ट्रेस झंडे का उपयोग नहीं कर रहे हैं। एक अन्य चर यह है कि इस सेट को कई अलग-अलग डेटाबेसों के लिए साझा किया जाता है जो सभी माध्यमों को उच्च भार का अनुभव कराते हैं।

हमारे 100 ms लिखने की विलंबता tempdb लिखने के लिए स्वीकार्य सीमा से बहुत अधिक है, जो हमने MSDN, SQL कौशल और अन्य साइटों पर पाया है। हालांकि, हमारे अन्य डेटाबेस के लिए विलंबता लिखें अच्छा है (10ms से नीचे)। अन्य आँकड़ों के आधार पर, ऐसा प्रतीत होता है कि हम टेम्पर्डब का भारी उपयोग कर रहे हैं, विशेषकर आंतरिक वस्तुओं के लिए। इसलिए हम यह पता लगाने की कोशिश कर रहे हैं कि हमारा एप्लिकेशन आंतरिक वस्तुओं का उपयोग क्यों कर रहा है।

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

जवाबों:


12

क्या यह संभव है कि स्पिल्स की यह आवृत्ति हमारे हाई टेम्पर्डड लेटेंसी में प्राथमिक अपराधी हो सकती है?

हां यह संभव है , हालांकि आम तौर पर यह फैल का औसत आकार होता है, और वे कितनी गहराई तक जाते हैं (यानी पुनरावर्ती हैश फैल, मल्टी-पास प्रकार) जो आवृत्ति से अधिक मायने रखता है।

SQL सर्वर मेट्रिक्स और DMV जानकारी की एक विस्तृत श्रृंखला प्रदान करता है, जिससे आपको टेम्पर्डब प्रेशर के विभिन्न योगदान कारकों का निवारण करने में मदद मिलती है, जिनमें से कई Microsoft तकनीकी आलेख में चर्चा की गई हैं, "SQL सर्वर 2005 में tempdb के साथ कार्य करना" (सभी संस्करणों 2005 पर लागू होता है) )।

आप किसी भी अस्थायी दबाव के प्राथमिक कारणों की पहचान शुरू करने के लिए उस दस्तावेज़ में निहित मार्गदर्शन और नैदानिक ​​प्रश्नों का उपयोग करने में सक्षम होना चाहिए। ALLOW_SNAPSHOT_ISOLATIONसक्षम न होने के कारण संस्करण स्टोर गतिविधि की उपेक्षा न करें । कई विशेषताएं स्नैपशॉट अलगाव से अलग संस्करण स्टोर (जैसे ट्रिगर, MARS, RCSI) का उपयोग करती हैं।

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

आपको यह निर्धारित करने के लिए अपने संग्रहण टीम के साथ काम करना चाहिए कि आपके कार्यभार के लिए उच्च विलंबता का कितना हिस्सा है, अन्य साझा उपयोगों से कितना आता है, और पुनर्संरचना के लिए कौन से विकल्प हैं। एसक्यूएल सर्वर के मैट्रिक्स के आपके विश्लेषण से इस चर्चा को सूचित करने में मदद मिलेगी, क्योंकि कोई भी मैट्रिक्स सैन लोगों को प्रदान करने में सक्षम है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.