2011-10-04 28 views
9

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

मैंने ओरेकल के लिए कुछ देखा है, लेकिन मैंने SQL सर्वर के लिए कोई अच्छा टूल नहीं देखा है।

उत्तर

4

एसक्यूएल प्रोफाइलर के साथ कुछ भी गलत नहीं है। माना जाता है कि इसकी idiosyncrasies है, लेकिन फिर भी एक अच्छा उपकरण है। बिंदु यह है कि एक क्वेरी वर्कलोड को ट्यून करने की तुलना में एक संग्रहित प्रक्रिया को ट्यून करने में अक्सर कम मूल्य होता है।

मैं आपके अनुभव को साझा नहीं करता हूं कि "यह एक प्रोफ़ाइल सत्र स्थापित करने के लिए हमेशा के लिए लेता है"।

SQL सर्वर 2008 के बाद, extended events भी हैं, लेकिन शक्तिशाली, उनके पास अभी तक एक सरल जीयूआई नहीं है।

अद्यतन: आप पहले से ही सवाल में संग्रहित प्रोक की पहचान की है, तो 'वास्तविक निष्पादन योजना' के साथ SSMS में चलाने चालू: यह दिखाई देगा क्यों इसे चलाने के लिए समय लगता है। आप पढ़ने/लिखने के लिए एक ब्रेकडाउन देने के लिए "सेट सांख्यिकी IO चालू" भी शामिल कर सकते हैं।

निष्पादन योजनाओं की जांच, नि: शुल्क SQL Sentry Plan Explorer

+0

एसक्यूएल सर्वर के लिए एसक्यूएल कोड विकसित करते समय आपका सामान्य विकास पर्यावरण चक्र कैसा दिखता है? मैं वर्तमान में अपनी संग्रहीत प्रक्रियाओं को विकसित करने के लिए SQL सर्वर प्रबंधन स्टूडियो का उपयोग करता हूं, लेकिन फिर मुझे डिबगिंग के माध्यम से किसी भी चरण को करने के लिए VS पर जाना होगा, जिसमें यह समस्याओं का स्वयं का सेट है जैसे temp तालिकाओं या तालिका चर के सामग्री को देखने के लिए कोई पहुंच नहीं है। – bpeikes

+0

यदि आप एक एसपी को इतनी देर लगने के लिए प्रोफाइल करना चाहते हैं, तो आपको प्रोफाइलर खोलना होगा, फ़िल्टर जोड़ना होगा ताकि आप फ़िल्टर कर सकें कि अन्य लोग क्या कर सकते हैं, फिर एसपी को प्रबंधन स्टूडियो से चलाएं, फिर आउटपुट को डंप करें विश्लेषण के लिए एक टेबल के लिए। सी ++, सी #, सी, और यहां तक ​​कि जावा में लिखे गए कोड के साथ मैं क्या कर सकता हूं, विकास पर्यावरण आदिम है। – bpeikes

+1

यदि आप पहले से ही एसपी में सवाल जानते हैं, तो 'वास्तविक निष्पादन योजना' के साथ एसएसएमएस में चलाया गया है: यह इंगित करेगा कि इसे चलाने में समय क्यों लगता है। –

1

एसक्यूएल सर्वर प्रोफाइलर उपयोग करने का प्रयास करने के लिए एक महान उपकरण है। आप इसे इस्तेमाल करने वाले पहले कुछ बार थोड़ा सा ले सकते हैं, लेकिन आप घटनाओं और वांछित आउटपुट को बहुत जल्दी सीखना शुरू कर देते हैं।

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

0

आप SQL Sentry Plan Explorer को आजमा सकते हैं। निष्पादन योजना के विश्लेषण के माध्यम से आपके प्रश्नों को प्रोफाइल करने के लिए एसएसएमएस की तुलना में यह अधिक उपयोगी और व्यापक उपकरण है। अतिरिक्त जानकारी के लिए, this answer देखें।

यह उल्लेखनीय है कि टूल मुफ्त और प्रो संस्करणों में उपलब्ध है, हालांकि, मुझे अपनी आवश्यकताओं के लिए मुफ्त संस्करण की कोई सीमा नहीं मिली है।

संबंधित मुद्दे

 संबंधित मुद्दे