Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर में एक्ज़ीक्यूशन प्लान कैसे जेनरेट करें

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

यह सामान्य ज्ञान है कि खराब प्रदर्शन करने वाले प्रश्न एक प्रमुख संकेतक हैं कि डेटाबेस में कुछ गड़बड़ है। इसलिए किसी क्वेरी की निष्पादन योजना में "हुड के तहत" देखना प्रदर्शन समस्या के कारण को निर्धारित करने के सर्वोत्तम तरीकों में से एक है।

SQL निष्पादन योजना में उपलब्ध जानकारी DBA के लिए SQL सर्वर क्वेरी प्रदर्शन समस्याओं के निवारण के लिए अमूल्य है क्योंकि यह उन्हें समस्या के मूल कारण तक पहुँचने और आवश्यकतानुसार क्वेरी को ट्यून करने की अनुमति देता है।

SQL निष्पादन योजनाओं की जांच करना प्रदर्शन ट्यूनिंग के पहले चरणों में से एक है क्योंकि योजना स्पष्ट रूप से एक क्वेरी के भीतर परेशानी के सबसे संभावित स्रोतों को उजागर करती है, जिसमें महंगे ऑपरेटर, ऑपरेटरों के बीच असामान्य संख्या में रिकॉर्ड और अतिरिक्त ऑपरेटर शामिल हैं।

DBA को निष्पादन योजना चेतावनियों से भी लाभ होता है जो उपयोगकर्ताओं को tempdb स्पिल और अनुपलब्ध अनुक्रमणिका जैसे मुद्दों के बारे में सचेत करती हैं।

एसक्यूएल एक्ज़ीक्यूशन प्लान के प्रकार

SQL निष्पादन योजना के दो मुख्य प्रकार हैं:अनुमानित निष्पादन योजनाएँ और वास्तविक अनुमान योजनाएँ।

अनुमानित निष्पादन योजनाओं को एक प्रकार के मौसम पूर्वानुमान के रूप में सर्वोत्तम रूप से वर्णित किया जाता है। जैसा कि नाम का तात्पर्य है, अनुमानित निष्पादन योजनाएं अनुमानित गणनाओं, आंकड़ों और अन्य मापदंडों का उपयोग उन चरणों का अनुमान लगाने के लिए करती हैं जिनका अनुसरण SQL सर्वर इंजन द्वारा क्वेरी को पार्स करने के बाद सबमिट की गई क्वेरी को निष्पादित करने के लिए किया जा सकता है।

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

वास्तविक निष्पादन योजनाएं सबमिट की गई क्वेरी को निष्पादित करती हैं और फिर निष्पादन के दौरान होने वाले चरणों को प्रदर्शित करती हैं। इस प्रकार की योजना वास्तविक गणना और SQL सर्वर इंजन के बाद वास्तविक (अनुमानित नहीं) चरणों को प्रदर्शित करती है।

चूंकि इस प्रकार की निष्पादन योजना वास्तव में क्वेरी चलाती है, यह क्वेरी प्रदर्शन समस्याओं के निवारण के लिए एक अच्छा विकल्प है।

SQL एक्ज़ीक्यूशन प्लान कैसे जेनरेट करें

हैकरून अनुमानित और वास्तविक निष्पादन योजनाओं को कैसे उत्पन्न करें, इसका एक संक्षिप्त विवरण प्रदान करता है। प्रक्रिया को निम्न चरणों में उबाला जा सकता है:

अनुमानित निष्पादन योजना तैयार करें

  • डेटाबेस पर जाएं
  • क्वेरी हाइलाइट करें
  • “क्वेरी” क्लिक करें
  • “अनुमानित निष्पादन योजना प्रदर्शित करें” पर क्लिक करें या शॉर्टकट Ctrl + L का उपयोग करें

एक वास्तविक निष्पादन योजना तैयार करें

  • डेटाबेस पर जाएं
  • क्वेरी हाइलाइट करें
  • “क्वेरी” क्लिक करें
  • “वास्तविक निष्पादन योजना शामिल करें” पर क्लिक करें या Ctrl + M शॉर्टकट का उपयोग करें

आपको आधिकारिक Microsoft दस्तावेज़ में अनुमानित निष्पादन योजनाओं और वास्तविक निष्पादन योजनाओं को कैसे उत्पन्न किया जाए, इसका विस्तृत विवरण मिलेगा।

अनुमानित और वास्तविक SQL निष्पादन योजनाएं भिन्न क्यों हो सकती हैं

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

समानांतरता

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

पुराने आंकड़े

जब आप डेटा सम्मिलित करते हैं और तालिकाओं और अनुक्रमणिकाओं से डेटा हटाते हैं या तालिका या अनुक्रमणिका स्कीमा में परिवर्तन करते हैं, तो आंकड़े बदल जाएंगे। यदि आंकड़े नियमित रूप से अपडेट नहीं किए जाते हैं, तो वास्तविक निष्पादन योजना अनुमानित निष्पादन योजना से भिन्न होगी।

अमान्य अनुमानित योजना

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

SQL निष्पादन योजनाएँ SQL सर्वर प्रदर्शन समस्याओं के निवारण के लिए एक मूल्यवान संसाधन हैं। यह जानना कि अनुमानित और वास्तविक SQL निष्पादन योजनाओं दोनों को कैसे उत्पन्न किया जाए, इष्टतम प्रदर्शन के लिए ट्यूनिंग क्वेरी के साथ काम करने वाले किसी भी DBA के लिए एक आवश्यक उपकरण है।


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. विस्टाडीबी के क्या फायदे हैं

  2. पॉवरशेल का उपयोग करके .sql फ़ाइल को कैसे निष्पादित करें?

  3. क्लाउड माइग्रेशन 101:SQL सर्वर से Azure में स्थानांतरित करना

  4. एमएस एसक्यूएल में पिछले 30 मिनट के रिकॉर्ड कैसे प्राप्त करें?

  5. समूह द्वारा छूटी हुई तिथियों को भरना