मुझे एक वर्चुअल वातावरण के तहत चल रहा एक SQL 2005 डीबी मिला है।प्रदर्शन के लिए SQL क्वेरी के 2 प्रकारों की तुलना करने का सबसे अच्छा तरीका क्या है?
चीजों को सरल बनाने के लिए, मान लें कि मेरे पास दो SQL चयन क्वेरी हैं। वे दोनों एक ही चीज करते हैं। लेकिन मैं प्रदर्शन उद्देश्यों के लिए उनका विश्लेषण करने की कोशिश कर रहा हूं।
आम तौर पर, मैं एक स्थानीय डीबी ऊपर आग चाहते हैं, कुछ डेटा लोड और समय का उपयोग अन्य वेरिएंट के लिए एक संस्करण की तुलना।
लेकिन इस मामले में, के बाद से डीबी बड़ी है और यह एक testbox है, ग्राहक यह एक मेजबान है कि अन्य वी एम के रूप में अच्छी तरह की सेवा कर रहा है पर रखा गया है।
डीबी स्थानीय रूप से नीचे खींचने के लिए बहुत बड़ा है, इसलिए यह बाहर है (कम से कम अब के लिए)।
लेकिन मेरा मुख्य मुद्दा यह है कि जब मैं सर्वर के विरुद्ध क्वेरी चलाता हूं, तो समय पूरे स्थान पर होता है। मैं + सटीक + एक ही क्वेरी 4 बार चला सकता हूं और 7secs, 8 मिनट, 3: 45min और 15min के समय प्राप्त कर सकता हूं।
मेरा पहला विचार सेट सांख्यिकी IO चालू था।
लेकिन, पैदावार मूल रूप से पढ़ सकते हैं और टेबल पर आँकड़े बारे में प्रश्नों, जो, प्रश्नों में बदलाव पर निर्भर करता है (अस्थायी टेबल, विचारों बनाम, बनाम मिलती है, आदि) वास्तव में सही ढंग से तुलना नहीं की जा सकती है, किया जा रहा है, में सिवाय इसके कि कुल।
मैं तो हालांकि सेट सांख्यिकी समय पर की, और सिर्फ CPU समय का उपयोग कर, लेकिन उस पर छूट देने का सभी आईओ है, जो भी एक अच्छा आधार रेखा के लिए नहीं है लगता है।
मेरा प्रश्न है क्या कोई अन्य सांख्यिकीय या प्रदर्शन विश्लेषण तकनीक है जो इस तरह की स्थिति में उपयोगी हो सकती है?
* बहुत * सरल तुलना के रूप में, आप उन्हें शो निष्पादन योजना के साथ एक ही बैच में चला सकते हैं और देख सकते हैं कि कौन सा कुल प्रतिशत का सबसे अधिक हिस्सा लेता है। – adrianbanks
@adrian निष्पादन योजना केवल एक गाइड है। अनुमानित उप-लागत लागत ए बनाम बी अक्सर गलत होती है जब वास्तव में – RichardTheKiwi
@ रिचर्ड किया जाता है: क्या वास्तविक निष्पादन योजना का उपयोग करते समय भी यह सच है? – adrianbanks