वे आदेश दो काम करते हैं:
- पृष्ठ कैश को साफ़ करें, जो डिस्क से पहले से पुनर्प्राप्त किए गए डेटा पृष्ठों को संग्रहीत करता है (आमतौर पर क्वेरी में समय का सबसे बड़ा कारक डिस्क एक्सेस है)
- क्वेरी प्लान कैश को साफ़ करें, जिसका अर्थ है कि सर्वर को एक नया क्वेरी प्लान बनाने की आवश्यकता है। यह आम तौर पर बहुत अधिक लेनदेन संस्करणों को छोड़कर महत्वपूर्ण नहीं है।
आपको मूल रूप से एक ऐसा समय मिल रहा है जो "सबसे खराब स्थिति" परिदृश्य के बराबर है - आपने बस सर्वर को रिबूट किया और कुछ भी स्मृति में नहीं है। बाद के रनों को डिस्क से डेटा खींचने के लिए लागत का भुगतान करने की आवश्यकता नहीं है क्योंकि उन पृष्ठों को पहले से ही मेमोरी में लोड किया गया है।
यह वास्तविक दुनिया की स्थिति के समान है - किसी विशेष प्रश्न को चलाने के लिए आपके पहले उपयोगकर्ता को बाद के रनों की तुलना में अधिक समय तक प्रतीक्षा करनी होगी, यह मानते हुए कि आप उसी डेटा की जांच कर रहे हैं।
एक अच्छा तरीका जो मुझे उपयोग करना पसंद है वह कई बार चल रहा है और एक औसत ले रहा है। यह साझा वातावरण में विशेष रूप से सहायक है क्योंकि आपके पास टेम्पर्डबेड जैसे साझा संसाधनों पर पूर्ण नियंत्रण नहीं है।
पर्दे के पीछे वास्तव में क्या हो रहा है, इसके बारे में अधिक जानकारी प्राप्त करने के लिए आप इन कमांड का उपयोग कर सकते हैं:
SET STATISTICS IO ON
SET STATISTICS TIME ON
ये आपको डिस्क (प्रति ऑब्जेक्ट) से पेज रीड्स, लॉजिकल पेज रीड्स, टाइम टू बिताए गए प्लान को कंप्लीट करने और किसी क्वेरी को निष्पादित करने में लगने वाले समय के बारे में विस्तृत जानकारी देंगे।