मेरे डेटाबेस में कुछ बहुत बड़ी टेबल हैं, लेकिन इस डेटा का एक बड़ा हिस्सा "पुराना" है।
मेरे नियंत्रण से परे परिस्थितियों के कारण, मुझे इस "पुराने" डेटा को निकालने की अनुमति नहीं है। दूसरी सीमा यह है कि मैं डेटाबेस को संशोधित नहीं कर सकता, जिसका अर्थ है इसमें फाइलग्रुप जोड़ना। जिस तरह से चीजें अभी खड़ी हैं, सब कुछ PRIMARY
फ़ाइल समूह पर रहता है ।
मैं इन तालिकाओं को कुछ विभाजनों में विभाजित करने के लिए सोच रहा था, जैसे "नया", "पुराना", "संग्रहीत" और समान। मेरे पास एक "स्थिति" कॉलम है जिसे मैं इस उद्देश्य के लिए उपयोग करना चाहूंगा।
वर्णित परिदृश्य और सीमाओं को देखते हुए, मैं सोच रहा था कि क्या विभाजन यहाँ कोई मतलब है। दूसरे शब्दों में, अगर मेरी तालिका को इस तरह से विभाजित किया जाता है, लेकिन सभी विभाजन एक ही फाइलग्रुप पर बैठते हैं, तो क्या SQL सर्वर उस स्मार्ट क्षेत्र में उस विशेष क्षेत्र को खोजने के लिए पर्याप्त स्मार्ट होगा जहां मेरा "नया" डेटा रहता है और स्पर्श नहीं करता है। "पुराने" डेटा के साथ क्षेत्र?
इसे अलग तरीके से रखने के लिए, यदि, मान लें कि, मेरा 80% डेटा "पुराना" है। क्या SQL सर्वर में 100% अंतर्निहित फ़ाइलों तक पहुँचने और केवल 20% तक पहुँचने से बचने के लिए एक तंत्र है, जिसमें "नया" डेटा है (निश्चित रूप से, मैं WHERE
प्रश्नों के खंड में अपने विभाजन कॉलम को निर्दिष्ट करता हूं )।
मुझे लगता है कि इसका जवाब देने के लिए, किसी को यह समझना होगा कि विभाजन को आंतरिक रूप से कैसे लागू किया जाता है। मैं किसी भी संकेत की सराहना करता हूं।