मैं एमएस एसक्यूएल 2012 से 2014 तक के उन्नयन के लाभों की जांच कर रहा हूं। एसक्यूएल 2014 के बड़े बिक्री बिंदुओं में से एक मेमोरी ऑप्टिमाइज़ टेबल है, जो स्पष्ट रूप से प्रश्नों को सुपर-फास्ट बनाता है।
मैंने पाया है कि मेमोरी अनुकूलित तालिकाओं पर कुछ सीमाएँ हैं, जैसे:
- कोई
(max)
आकार फ़ील्ड नहीं - अधिकतम ~ 1KB प्रति पंक्ति
- कोई
timestamp
खेत नहीं - कोई संगणित स्तंभ नहीं
- कोई
UNIQUE
अड़चन नहीं
ये सभी उपद्रव के रूप में योग्य हैं, लेकिन अगर मैं वास्तव में प्रदर्शन लाभ प्राप्त करने के लिए उनके आसपास काम करना चाहता हूं, तो मैं एक योजना बना सकता हूं।
असली किकर तथ्य यह है कि आप एक ALTER TABLE
बयान नहीं चला सकते हैं , और आपको हर बार जब आप एक सूचकांक की सूची में एक फ़ील्ड जोड़ते हैं तो आपको इस रिग्मारोल से गुजरना होगाINCLUDE
। इसके अलावा, ऐसा प्रतीत होता है कि आपको लाइव DB पर MO तालिकाओं में कोई भी स्कीमा परिवर्तन करने के लिए सिस्टम से उपयोगकर्ताओं को बंद करना होगा।
मुझे यह पूरी तरह से अपमानजनक लगता है, इस हद तक कि मैं वास्तव में विश्वास नहीं कर सकता कि Microsoft इस सुविधा में बहुत अधिक विकास पूंजी लगा सकता था, और इसे बनाए रखने के लिए इतना अव्यावहारिक छोड़ दिया। यह मुझे इस निष्कर्ष पर ले जाता है कि मुझे छड़ी के गलत छोर को प्राप्त करना होगा; मुझे स्मृति-अनुकूलित तालिकाओं के बारे में कुछ गलत समझ लेना चाहिए, जिससे मुझे विश्वास हो गया कि वास्तव में यह है कि उन्हें बनाए रखना कहीं अधिक कठिन है।
तो, मुझे क्या गलत समझा है? क्या आपने MO तालिकाओं का उपयोग किया है? क्या किसी प्रकार का गुप्त स्विच या प्रक्रिया है जो उन्हें उपयोग करने और बनाए रखने के लिए व्यावहारिक बनाती है?