पूर्ण-पाठ अनुक्रमणिका बनाए रखने के लिए क्या दिशा-निर्देशों पर विचार किया जाना चाहिए?
क्या मुझे पूर्ण-पाठ सूची ( BOL देखें ) को REBUILD या REORGANIZE करना चाहिए ? एक उचित रखरखाव ताल क्या है? रखरखाव की आवश्यकता होने पर यह निर्धारित करने के लिए कि क्या आंकड़े (10% और 30% विखंडन दहलीज के समान) का उपयोग किया जा सकता है?
(नीचे सब कुछ बस अतिरिक्त जानकारी पर विस्तृत है और दिखा रहा है कि मैंने अब तक क्या सोचा है।)
अतिरिक्त जानकारी: मेरा प्रारंभिक शोध
बी-ट्री इंडेक्स मेंटेनेंस पर बहुत सारे संसाधन हैं (उदाहरण के लिए, यह सवाल , ओला हैलेनग्रेन की स्क्रिप्ट , और अन्य साइटों से इस विषय पर कई ब्लॉग पोस्ट)। हालाँकि, मैंने पाया है कि इनमें से कोई भी संसाधन फुलटेक्स इंडेक्स को बनाए रखने के लिए सिफारिशें या स्क्रिप्ट प्रदान नहीं करता है।
नहीं है माइक्रोसॉफ्ट प्रलेखन कि आधार तालिका बी-वृक्ष सूचकांक डीफ्रैगमेन्टिंग और उसके बाद पूर्ण पाठ सूची पर एक पुनर्निर्माण प्रदर्शन में सुधार हो सकता है कि उल्लेख है, लेकिन यह किसी भी अधिक विशिष्ट सिफारिशों पर स्पर्श नहीं करता है।
मुझे यह प्रश्न भी मिला , लेकिन यह मुख्य रूप से परिवर्तन-ट्रैकिंग (अंतर्निहित तालिका में डेटा अपडेट कैसे फुलटेक्स इंडेक्स में प्रचारित किया गया है) पर केंद्रित है और नियमित रूप से अनुसूचित रखरखाव के प्रकार पर नहीं जो सूचकांक की दक्षता को अधिकतम कर सकता है।
अतिरिक्त जानकारी: बुनियादी प्रदर्शन परीक्षण
इस SQL फिडेल में कोड होता है जिसका उपयोग AUTO
परिवर्तन पर नज़र रखने के साथ एक पूर्ण-पाठ अनुक्रमणिका बनाने के लिए किया जा सकता है और तालिका में डेटा के रूप में संशोधित किया जा सकता है। जब मैं अपने उत्पादन डेटा की प्रतिलिपि पर स्क्रिप्ट का तर्क चलाता हूं (जैसा कि फ़िडल में कृत्रिम रूप से निर्मित डेटा के विपरीत), तो यहां उन परिणामों का सारांश है जो मैं प्रत्येक डेटा संशोधन चरण के बाद देख रहा हूं:
भले ही इस स्क्रिप्ट में अपडेट स्टेटमेंट काफी कंट्रोवर्सी में थे, लेकिन इस डेटा से पता चलता है कि रेगुलर मेंटेनेंस के लिए बहुत कुछ हासिल करना है।
अतिरिक्त जानकारी: प्रारंभिक विचार
मैं एक रात या साप्ताहिक कार्य बनाने के बारे में सोच रहा हूं। ऐसा लगता है कि यह कार्य या तो REBUILD या REORGANIZE कर सकता है।
क्योंकि पूर्ण-पाठ अनुक्रमणिकाएं काफी बड़ी हो सकती हैं (दसियों या लाखों पंक्तियों की सैकड़ों), मैं यह पता लगाना चाहूंगा कि जब सूची के भीतर अनुक्रमणिका पर्याप्त रूप से खंडित हो जाती है कि एक REBUILD / REORGANIZE को वारंट किया जाता है। मैं इस बारे में थोड़ा स्पष्ट नहीं हूं कि इसके लिए क्या आंकड़े संभव हो सकते हैं।