अपडेट करें:30 नवंबर, 2015
SQL सर्वर टीम ने CTP 3.1 में इन-मेमोरी OLTP के लिए कुछ नई कार्यक्षमता के साथ एक ब्लॉग पोस्ट प्रकाशित किया है:
- एसक्यूएल सर्वर 2016 सामुदायिक प्रौद्योगिकी पूर्वावलोकन 3.1 उपलब्ध है
अपडेट करें:17 नवंबर, 2015
Jos de Bruijn ने CTP 3.0 के अनुसार इन-मेमोरी OLTP परिवर्तनों की एक अद्यतन सूची पोस्ट की है:
- इन-मेमोरी OLTP - SQL2016 CTP3 में नया क्या है
मैंने पहले SQL सर्वर 2016 में उपलब्धता समूहों में हुए परिवर्तनों के बारे में पोस्ट किया था, जिसके बारे में मैंने MS Ignite में बड़े पैमाने पर जॉय डी'एंटोनी और डेनी चेरी के एक सत्र से सीखा था। इन-मेमोरी ओएलटीपी (इस सुविधा को पहले "हेकाटन" के नाम से जाना जाता था) के लिए स्टोर में बदलाव पर केविन फ़ार्ली और सुनील अग्रवाल का एक और शानदार सत्र था। एक दिलचस्प पक्ष नोट:इस सत्र का वीडियो एक डेमो दिखाता है जहां केविन CTP2.0 चला रहा है (बिल्ड 13.0.200) - हालांकि यह शायद वह बिल्ड नहीं है जिसे हम इस गर्मी में सार्वजनिक रूप से देखेंगे।
सुविधा/सीमा | एसक्यूएल सर्वर 2014 | एसक्यूएल सर्वर 2016 |
---|---|---|
टिकाऊ तालिकाओं का अधिकतम संयुक्त आकार | 256 जीबी | 2 TB |
LOB (varbinary(max), [n]varchar(max)) | समर्थित नहीं | समर्थित* |
पारदर्शी डेटा एन्क्रिप्शन (TDE) | समर्थित नहीं | समर्थित |
ऑफ़लाइन चेकपॉइंट थ्रेड | 1 | 1 प्रति कंटेनर |
वैकल्पिक प्रक्रिया / sp_recompile | समर्थित नहीं | समर्थित (पूरी तरह से ऑनलाइन) |
नेस्टेड नेटिव प्रक्रिया कॉल | समर्थित नहीं | समर्थित |
मूल रूप से संकलित स्केलर UDFs | समर्थित नहीं | समर्थित |
तालिका बदलें | समर्थित नहीं है (DROP / re-CREATE) | आंशिक रूप से समर्थित (ऑफ़लाइन – विवरण नीचे) |
डीएमएल ट्रिगर | समर्थित नहीं | आंशिक रूप से समर्थित (बाद में, मूल रूप से संकलित) |
न्यूलेबल कॉलम पर इंडेक्स | समर्थित नहीं | समर्थित |
सूचकांक कुंजी कॉलम में गैर-BIN2 कोलाज | समर्थित नहीं | समर्थित |
[var]char कॉलम के लिए गैर-लैटिन कोडपेज | समर्थित नहीं | समर्थित |
गैर-BIN2 तुलना/मूल मॉड्यूल में छँटाई | समर्थित नहीं | समर्थित |
विदेशी कुंजी | समर्थित नहीं | समर्थित |
चेक/अद्वितीय बाधाएं | समर्थित नहीं | समर्थित |
समानांतरता | समर्थित नहीं | समर्थित |
बाहरी शामिल हों, या, नहीं, संघ [सभी], अलग, मौजूद, IN | समर्थित नहीं | समर्थित |
एकाधिक सक्रिय परिणाम सेट (MARS) (मतलब बेहतर एंटिटी फ्रेमवर्क समर्थन।) | समर्थित नहीं | समर्थित |
SSMS टेबल डिज़ाइनर | समर्थित नहीं | समर्थित |
* इस गर्मी में CTP शिपिंग में LOB सपोर्ट उपलब्ध नहीं होगा।
ALTER TABLE
एक ऑफ़लाइन ऑपरेशन है, और कॉलम, इंडेक्स और बाधाओं को जोड़ने/छोड़ने का समर्थन करेगा। इनमें से कुछ कार्रवाइयों का समर्थन करने के लिए नए सिंटैक्स एक्सटेंशन होंगे। आप अपने बकेट काउंट वैल्यू को एक साधारण पुनर्निर्माण के साथ बदल सकते हैं (हालांकि ध्यान दें कि किसी भी पुनर्निर्माण के लिए 2X मेमोरी की आवश्यकता होगी):
ALTER TABLE dbo.InMemoryTable ALTER INDEX IX_NC_Hash REBUILD WITH (BUCKET_COUNT = 1048576);
इन क्षमता/सुविधा संवर्द्धन के अलावा, कुछ अतिरिक्त प्रदर्शन संवर्द्धन भी हैं। उदाहरण के लिए, डिस्क-आधारित या इन-मेमोरी टेबल पर इन-मेमोरी, अपडेट करने योग्य, गैर-क्लस्टर किए गए कॉलमस्टोर इंडेक्स को जोड़ने की क्षमता होगी। और उन्होंने हटाए गए पंक्तियों को संसाधित करने के तरीके को सरल बना दिया है (2014 में, वे ऑपरेशन फाइलस्ट्रीम का उपयोग करते हैं, 2016 में वे इस चरण को छोड़ देंगे)। माइग्रेशन सलाहकारों और सर्वोत्तम प्रथाओं के विश्लेषक में भी सुधार हुए हैं - वे अब डेटा एकत्र करने पर हल्के हैं और माइग्रेशन जटिलता के बारे में अधिक संदर्भ प्रदान करते हैं।
इनमें से कुछ परिवर्तनों के साथ अभी भी कुछ सीमाएँ हैं। उदाहरण के तौर पर, TDE को डेटाबेस को अपग्रेड करते समय अतिरिक्त चरणों की आवश्यकता होती है। लेकिन यह स्पष्ट है कि जैसे-जैसे इन-मेमोरी ओएलटीपी अधिक परिपक्व होता जाता है, वे गोद लेने के लिए कई सबसे बड़ी बाधाओं को दूर कर रहे हैं।
लेकिन रुकिए, और भी बहुत कुछ है! यदि आप Azure SQL डेटाबेस में इन-मेमोरी OLTP का उपयोग करना चाहते हैं, तो इस गर्मी में पूर्ण समर्थन के साथ एक सार्वजनिक पूर्वावलोकन होगा। इसलिए इस सुविधा को इसकी सीमा तक बढ़ाने के लिए आपको 2 टीबी मेमोरी वाले अपने स्वयं के भौतिक सर्वर की आवश्यकता नहीं होगी। हालांकि, मानक संस्करण में इस सुविधा के किसी भी तरह के छलने की उम्मीद न करें।