SQL सर्वर में आँकड़ों का डिफ़ॉल्ट नमूना आकार क्या है?


12

से MSDN :

जब कोई भी नमूना विकल्प (SAMPLE, FULLSCAN, RESAMPLE)निर्दिष्ट नहीं किया जाता है, तो क्वेरी ऑप्टिमाइज़र डेटा का नमूना लेता है और डिफ़ॉल्ट रूप से नमूना आकार की गणना करता है।

आँकड़ों के डिफ़ॉल्ट नमूना आकार की पहचान कैसे करें?

मैं MSDN के माध्यम से गया था, लेकिन डिफ़ॉल्ट नमूना आकार की पहचान करने के लिए कोई सूत्र या विधि नहीं मिली। हर जगह ऑटो आंकड़े अद्यतन को ट्रिगर करने के लिए केवल सूत्र मौजूद हैं। कोई भी संकेत सहायक होगा।

जवाबों:


20

आँकड़ों के डिफ़ॉल्ट नमूना आकार की पहचान कैसे करें?

मैं Blogs.msdn लेख से उद्धृत करूंगा

ऑटो अपडेट आँकड़े एल्गोरिथम:

इसलिए ऑटो अपडेट आँकड़े तालिका पंक्तियों में प्रत्येक 500 + 20% परिवर्तन के लिए आग लगा देंगे। बेशक, हमारे पास SQL ​​2012 में एक बेहतर एल्गोरिथ्म है जो SQRT (1000 * तालिका पंक्तियाँ) है जो बहुत बेहतर है।

जब यह आग लगाएगा तो यह डिफ़ॉल्ट नमूना दर का उपयोग करेगा और यहां एल्गोरिदम है कि यह नमूना दर की गणना कैसे करता है।

1) यदि तालिका <8MB तो यह एक फुलस्कैन के साथ आंकड़ों को अपडेट करता है।

2) यदि टेबल> 8MB, यह एक एल्गोरिथ्म का अनुसरण करता है। यह नमूने की दर को कम कर देता है क्योंकि तालिका में पंक्तियों की संख्या बढ़ जाती है यह सुनिश्चित करने के लिए कि हम बहुत अधिक डेटा स्कैन नहीं कर रहे हैं। यह एक निश्चित मूल्य नहीं है, लेकिन अनुकूलक के नियंत्रण में है। यह एक रैखिक एल्गोरिथ्म भी नहीं है।

उदाहरण: यदि हमारे पास 1,000,000 पंक्तियाँ हैं तो यह 30% की नमूना दर का उपयोग करेगा लेकिन जब पंक्तियों की संख्या बढ़कर 8,000,000 हो जाती है तो यह नमूना दर को 10% तक कम कर देगा। ये नमूने दर डीबीए के नियंत्रण में नहीं हैं, लेकिन आशावादी इसे तय करते हैं।

आगे समझने के लिए मैं आपको पढ़ने का सुझाव देता हूं

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.