SQL सर्वर प्रतीक्षा और क्यू का उपयोग कर एक शेयरपॉइंट साइट को ट्यून करने का प्रयास


6

मैं इस प्रदर्शन के लिए वेट्स और क्युसे चीज़ - ट्यूनिंग के साथ बहुत नया हूँ - आकर्षक, लेकिन हमेशा यह सब सहज नहीं ...

अभी, मेरे एक ग्राहक के पास SQL ​​Server 2008 64-बिट एंटरप्राइज़ संस्करण है, वर्तमान में इसे 16 GB RAM के साथ सौंपा गया है, 64 GB RAM के साथ भौतिक सर्वर पर चल रहा है (उसी पर अन्य और बदलते SQL सर्वर इंस्टेंसेस हैं मशीन, भी)।

यह ऐप जो वह चला रहा है, वह एक शेयरपॉइंट 2010 समाधान है, जो ज्यादातर समय के लिए - एक शेयरपॉइंट साइट के लिए ठीक - ठीक प्रदर्शन करता है।सिवाय खोजों के, जो बहुत धीमे हैं।

अब SQL सर्वर के नजरिए से, मैं कुछ दिनों के लिए प्रतीक्षा आँकड़े देख रहा हूं, और शीर्ष तीन प्रतीक्षा प्रकार हैं:

1) CXPACKET लगभग 49%
2) SOS_SCHEDULER_YIELD पर लगभग 10.5%
3) OLEDB लगभग 9.5%

यह काफी सुसंगत प्रतीत होता है - समय के साथ कोई बड़ा बदलाव नहीं।

  • PAGEIOLATCH_SH सातवें के रूप में आता है - कुल प्रतीक्षा समय का 2.5%, औसत संसाधन प्रतीक्षा समय 14ms है।
  • ASYNC_IO_COMPLETION आठ में आता है - कुल प्रतीक्षा समय का 2% से कम, लेकिन उच्च औसत संसाधन 38 सेकंड का समय प्रतीक्षा करें (हाँ, सेकंड - मिलीसेकंड नहीं!)

सिग्नल प्रतीक्षा समय बेहद कम है, इसलिए यह सीपीयू दबाव को इंगित नहीं करता है।तो इस पैटर्न का क्या कारण है - और (ए) अधिक प्रासंगिक जानकारी खोजने के लिए हम क्या कर सकते हैं, या (बी) चीजों को गति देने के लिए एक समाधान खोज सकते हैं?

कोई विचार?इनसाइट्स?विचार?मैं किसी भी चीज़ के लिए बहुत अधिक खुला हूं - जो हम नहीं बदल सकते हैं वह है मूल आर्किटेक्चर (अलग SQL सर्वर इंस्टेंसेस, भौतिक सर्वरों के बीच ले जाया जा रहा है - और एक यूनिक्स-आधारित SAN जो डेटा के पृथक्करण की गारंटी नहीं दे सकता है और अलग, भौतिक डिस्क पर लॉग इन कर सकता है)

फिर से: यह एक हैशेयर बिंदुसाइट - जहां तक ​​मुझे पता है, डेटाबेस को अनुक्रमित या पुनर्गठन के साथ चीजों को हल करने की कोशिश करना कहीं न कहीं मुश्किल और असंभव के बीच है।

+2

Sharepoint की SQL सर्वर उपयोग को ट्यून करने की कोशिश चरम व्यर्थता और हताशा के खतरनाक स्तरों में एक उत्कृष्टता है।आप किसी भी इंडेक्स को जोड़, संशोधित या हटा नहीं सकते हैं और समर्थित बने रह सकते हैं।केवल अच्छी खबर यह है कि यह संभवत: यदि आप कर सकते हैं तो कोई फर्क नहीं पड़ेगा, क्योंकि शेयरपॉइंट के साथ असली समस्या यह SQL कोड (विशेष रूप से सूची प्रसंस्करण कोड) है जो कि कैसे नहीं *** *** में एक पाठ पुस्तक है SQL सर्वर में ऐसी चीजें।वास्तव में, यह वास्तव में आपको सवाल करेगा कि शेयरपॉइंट और SQL सर्वर एक ही कंपनी द्वारा कैसे लिखे जा सकते हैं। 24 jul. 122012-07-24 03:33:15

  0

SharePoint वास्तव में सबसे अच्छा चलता है जब SQL समर्पित होता है और अन्य उदाहरणों के साथ साझा नहीं किया जाता है, जिसमें भारी भार हो सकता है और न हो।SQLNet और SharePoint के लिए सर्वोत्तम प्रथाओं के बारे में TechNet पर इस लेख में और अधिक पढ़ें http://technet.microsoft.com/en-us/library/hh292622.aspx 24 jul. 122012-07-24 07:24:07

8

चूंकि यह SharePoint है तो आपके हाथ बंधे हुए हैं।आप Microsoft से समर्थन खोए बिना अनुक्रमणिका या आँकड़े नहीं बना सकते।

CXPACKET का मतलब सिर्फ इतना है कि एक पैरालाइज्ड क्वेरी का एक धागा दूसरे धागे का इंतजार कर रहा है और कुछ और इंतजार कर रहा है।SOS_SCHEDULER_YIELD का मतलब कुछ चीजें हो सकती हैं, आमतौर पर इसका मतलब है कि आपको अपने अनुक्रमित को ठीक करने की आवश्यकता है, क्या आपके पास ऐसे प्रश्न हैं जो सही ढंग से ट्यून नहीं किए गए हैं इसलिए SQL सर्वर उन प्रश्नों को रोक रहा है (उन्हें उपज दे रहा है) ताकि यह अन्य सामान पर काम कर सके (जैसे कि SharePoint है आप वास्तव में इस बारे में कुछ भी नहीं कर सकते हैं)।OLEDB का अर्थ है कि SQL सर्वर OLEDB ड्राइवर पर प्रतीक्षा कर रहा है, इसलिए संभवत: लिंक किए गए सर्वर क्वेरी या उन लाइनों के साथ कुछ है जो किसी अन्य डेटाबेस सर्वर को कॉल कर रहे हैं।वहाँ कुछ भी नहीं तुम उस के बारे में कर सकते है।

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

सामग्री डेटाबेस कितने बड़े हैं?Microsoft सामग्री डेटाबेस को 100 गिग्स के नीचे रखने की सलाह देता है ताकि स्कैनिंग को न्यूनतम रखा जाए।

  0

सामग्री db लगभग 6 GB है - ताकि वास्तव में कोई समस्या न हो।लेकिन यहां तक ​​कि अगर मुझे भयानक प्रश्नों के लिए क्वेरी योजनाएं मिलती हैं - चूंकि मैं सूचकांक नहीं जोड़ सकता हूं या डेटाबेस लेआउट को बदल नहीं सकता हूं - तो क्या मैं इसके बारे में भी कुछ कर सकता हूं?कुछ प्रश्न उप-सेकंड में समाप्त हो जाते हैं - दूसरों को केवल मुट्ठी भर पंक्तियों को खोजने में 15 सेकंड लगते हैं ... 23 jul. 122012-07-23 18:34:17

  0

समस्या की पहचान करने और उपयोगकर्ताओं को उस तरीके से सिस्टम को नहीं खोजने के लिए कहने के अलावा वास्तव में कुछ भी नहीं है।ऐसा करने के बारे में अच्छी बात यह है कि आपको क्वेरी मिलेगी और आप देख सकते हैं कि खोज में वाइल्डकार्ड कहां है। 23 jul. 122012-07-23 22:11:27