Microsoft Microsoft के सत्रह Azure डेटा केंद्रों में से एक में Azure वर्चुअल मशीन पर SQL Server 2014 को चलाना आसान बना रहा है। आप अपनी पसंद के किसी भी आकार की Azure वर्चुअल मशीन पर Azure गैलरी से पूर्व-कॉन्फ़िगर किए गए SQL Server 2014 इंस्टेंस के साथ एक पूर्व-कॉन्फ़िगर वर्चुअल मशीन चला सकते हैं। गैलरी के विकल्पों में से एक है "SQL सर्वर 2014 एंटरप्राइज ऑप्टिमाइज्ड फॉर ट्रांजैक्शनल वर्कलोड" जो विंडोज सर्वर 2012 R2 पर चल रहा है। पूर्व-कॉन्फ़िगर गैलरी छवि का उपयोग करने के बारे में एक अच्छी बात यह है कि आपको किसी भी SQL सर्वर 2014 लाइसेंस के लिए भुगतान करने की आवश्यकता नहीं है। आप बस SQL सर्वर के संस्करण और आपके द्वारा चुने गए वर्चुअल मशीन आकार के लिए प्रति घंटा लागत का भुगतान करते हैं।
SQL सर्वर 2014 कॉन्फ़िगरेशन विकल्प
Microsoft बताता है कि "यह एंटरप्राइज़ संस्करण छवि OLTP वर्कलोड के लिए अनुकूलित है और A4, A7, A8 और A9 सहित VM आकारों के लिए अभिप्रेत है। एक बार तैनात होने के बाद, VM पहले से कॉन्फ़िगर किए गए Windows संग्रहण स्थान के साथ आता है।" Microsoft SQL सर्वर 2014 पर कुछ इंस्टेंस-स्तरीय कॉन्फ़िगरेशन कार्य भी करता है, हालाँकि वे मानक सर्वोत्तम प्रथाओं के बारे में मेरे विचार से काफी दूर नहीं जाते हैं।
वे आठ tempdb डेटा फ़ाइलें बनाते हैं जो सभी 25600MB आकार की होती हैं, जिसमें 1024MB की ऑटोग्रो वृद्धि होती है, जो एक अच्छा डिफ़ॉल्ट विकल्प है। वे TF1117 और TF1118 को स्टार्ट-अप ट्रेस फ़्लैग के रूप में भी सक्षम करते हैं, जो SQL सर्वर के लिए भी अच्छे विकल्प हैं। अंत में, Microsoft ऑपरेटिंग सिस्टम में तत्काल फ़ाइल आरंभीकरण और मेमोरी में पृष्ठों को लॉक करने में भी सक्षम बनाता है, जिससे मैं भी सहमत हूं।
मैं चाहूंगा कि Microsoft ने इन इंस्टेंस-स्तरीय कॉन्फ़िगरेशन विकल्पों में कुछ बदलाव भी किए:
- बैकअप संपीड़न डिफ़ॉल्ट
- समानता के लिए लागत सीमा
- समानता की अधिकतम डिग्री
- अधिकतम सर्वर मेमोरी (एमबी)
- तदर्थ कार्यभार के लिए अनुकूलित करें
अधिकांश मामलों में बैकअप संपीड़न डिफ़ॉल्ट रूप से सक्षम होना चाहिए। समांतरता के लिए लागत सीमा को अक्सर आपके कार्यभार के आधार पर 5 के डिफ़ॉल्ट मान से उच्च मान तक बढ़ाया जाना चाहिए। NUMA नोड में कोर की संख्या के आधार पर समानता की अधिकतम डिग्री को आमतौर पर एक गैर-डिफ़ॉल्ट मान में बदला जाना चाहिए। यह सेटिंग आपके कार्यभार पर भी निर्भर करती है। वर्चुअल मशीन में RAM की मात्रा और VM पर आप क्या चला रहे हैं (SQL सर्वर डेटाबेस इंजन के अलावा) के आधार पर अधिकतम सर्वर मेमोरी को एक गैर-डिफ़ॉल्ट मान पर सेट किया जाना चाहिए। अंत में, मुझे लगता है कि तदर्थ कार्यभार के लिए अनुकूलन सक्षम होना चाहिए, सभी मामलों में बहुत अधिक।
Microsoft के बचाव में, आपके VM आकार और अपेक्षित डेटाबेस सर्वर वर्कलोड के विवरण (अग्रिम) को जाने बिना इनमें से कुछ वस्तुओं के लिए संतोषजनक कॉन्फ़िगरेशन विकल्प बनाना मुश्किल होगा। यह कार्य आपके ऊपर छोड़ देता है, ठीक उसी तरह जैसे ऑन-प्रिमाइसेस SQL सर्वर इंस्टेंस के साथ होता है।
Azure वर्चुअल मशीन साइज़िंग
भले ही आप A0 बेसिक से लेकर A9 मानक मशीन तक कुछ भी चुन सकते हैं, Microsoft अनुशंसा करता है कि आप उत्पादन के उपयोग के लिए A4 मानक, A7 मानक, A8 मानक या A9 मानक आकार की वर्चुअल मशीन चुनें। SQL सर्वर वर्चुअल मशीन के लिए मूल्य निर्धारण विवरण यहाँ सूचीबद्ध हैं।
तालिका 1 में इन अनुशंसाओं के तुलनात्मक विनिर्देशों को देखते हुए, यह समझना कठिन है कि आप A4 मानक मशीन क्यों चुनना चाहेंगे, क्योंकि इसकी लागत प्रति घंटे उतनी ही बड़ी A7 या A8 मानक मशीनों के समान है। ऑनलाइन दस्तावेज़ीकरण को देखते हुए, यह शुरू में बहुत स्पष्ट नहीं है कि A7 और A8 मानक मशीन के बीच वास्तविक अंतर क्या है। थोड़ा गहरा खोदने पर, A8 स्टैंडर्ड मशीन को एक कंप्यूट इंटेंसिव इंस्टेंस माना जाता है, जिसे दो नेटवर्क एडेप्टर (एक 10Gbps और एक 32Gbps RDMA सक्षम) के साथ 2.6GHz Intel Xeon E5-2670 प्रोसेसर का उपयोग करना चाहिए।
A7 मानक वर्चुअल मशीन कुछ हद तक धीमी 2.2GHz Intel Xeon E5-2660 प्रोसेसर का उपयोग करती है, जबकि नेटवर्क कनेक्टिविटी मानक 1Gbps ईथरनेट प्रतीत होती है। हालांकि यह प्रोसेसर और नेटवर्क प्रदर्शन में एक महत्वपूर्ण अंतर की तरह लगता है, यह वास्तव में SQL सर्वर उपयोग के लिए ए-सीरीज़ वर्चुअल मशीनों के साथ मुख्य मुद्दा नहीं है।
VM आकार | SQL मानक दर | SQL एंटरप्राइज़ दर <थ> कोर काउंट <थ> रैम राशि | ||
---|---|---|---|---|
A4 मानक | $0.80/hr | $3.00/hr | 8 | 14GB |
A7 मानक | $0.80/hr | $3.00/hr | 8 | 56GB |
A8 मानक | $0.80/hr | $3.00/hr | 8 | 56GB |
A9 मानक | $1.60/hr | $6.00/hr | 16 | 112GB |
तालिका 1:A-श्रृंखला SQL सर्वर वर्चुअल मशीन जानकारी
सभी ए-सीरीज़ वर्चुअल मशीनों के साथ मुख्य समस्या बहुत दयनीय I / O सबसिस्टम प्रदर्शन है, भले ही Microsoft ने A- की अंतर्निहित प्रदर्शन सीमाओं को देखते हुए सर्वोत्तम प्रदर्शन प्राप्त करने के लिए विंडोज स्टोरेज स्पेस के साथ डिस्क सबसिस्टम को पूर्व-कॉन्फ़िगर किया हो। श्रृंखला आभासी मशीन और मेजबान। चित्रा 1 ई के लिए क्रिस्टलडिस्कमार्क परिणाम दिखाता है:ईस्ट यूएस एज़ूर डेटा सेंटर से ए 4 मानक मशीन से ड्राइव, जो लेनदेन लॉग फाइलों के लिए है।
चित्र 1:A4 मानक क्रिस्टलडिस्कमार्क परिणाम
SQL सर्वर के लिए एक बेहतर विकल्प D-श्रृंखला वर्चुअल मशीन हैं। इन वर्चुअल मशीनों की लागत प्रति घंटे समान आकार की A-श्रृंखला वर्चुअल मशीनों के समान होती है, और उनके पास स्थानीय SSD भंडारण होता है जिसका उपयोग केवल tempdb और/या बफर पूल एक्सटेंशन (BPE) फ़ाइलों के लिए किया जाना चाहिए, क्योंकि वे लगातार नहीं होते हैं। डी-सीरीज़ वर्चुअल मशीनों के लिए कुछ प्रासंगिक विनिर्देश तालिका 2 में दिखाए गए हैं।
VM आकार | SQL मानक दर | SQL एंटरप्राइज़ दर <थ> कोर काउंट <थ> रैम राशि | ||
---|---|---|---|---|
D4 मानक | $0.80/hr | $3.00/hr | 8 | 28GB |
D13 मानक | $0.80/hr | $3.00/hr | 8 | 56GB |
D14 मानक | $1.60/hr | $6.00/hr | 16 | 112GB |
तालिका 2:D-Series SQL सर्वर वर्चुअल मशीन जानकारी
D4 मानक मशीन की कीमत A4 मानक मशीन के समान है, लेकिन इसमें दो बार RAM और कुछ स्थानीय SSD भंडारण है। D13 मानक मशीन की कीमत A7 या A8 मानक मशीन के समान है, लेकिन स्थानीय SDD भंडारण के लाभ के साथ। D14 मानक मशीन की कीमत A9 मानक मशीन के समान है, लेकिन इसमें स्थानीय SSD भंडारण का लाभ भी है। इस जानकारी को देखते हुए, SQL सर्वर के लिए A-श्रृंखला वर्चुअल मशीन का उपयोग करने का कोई मतलब नहीं है।
दुर्भाग्य से, आपके SQL सर्वर डेटा और लॉग फ़ाइलों के लिए स्थायी ड्राइव में भी क्रिस्टलडिस्कमार्क में काफी घटिया I/O प्रदर्शन है, जैसा कि चित्र 2 और 3 में दिखाया गया है।
चित्र 2:D14 मानक क्रिस्टलडिस्कमार्क परिणाम | चित्र 3:D14 मानक क्रिस्टलडिस्कमार्क परिणाम |
स्थानीय एसएसडी प्रदर्शन एज़्योर वर्चुअल मशीन के आकार से संबंधित है, बड़े आकार के साथ बेहतर स्थानीय एसएसडी प्रदर्शन मिलता है। ईस्ट यूएस एज़्योर डेटा सेंटर में D14 मानक मशीन के लिए क्रिस्टलडिस्कमार्क प्रदर्शन परिणाम चित्र 4 में दिखाए गए हैं।
चित्र 4:स्थानीय SSD संग्रहण के लिए D14 मानक क्रिस्टलडिस्कमार्क परिणाम
एफ:ड्राइव (एसक्यूएल सर्वर डेटा फाइलों के लिए) में ई:ड्राइव की तुलना में थोड़ा बेहतर परिणाम है, लेकिन दोनों ड्राइव में एसक्यूएल सर्वर के लिए प्रदर्शन का स्तर बहुत कम है।
निष्कर्ष
यह बहुत स्पष्ट लगता है कि डी-सीरीज़ मशीनें ए-सीरीज़ मशीनों की तुलना में SQL सर्वर के उपयोग के लिए बेहतर हैं। SQL सर्वर के लिए आपके द्वारा तय की गई वर्चुअल मशीन के आकार और मूल्य पर पूरा ध्यान देना भी समझदारी है, क्योंकि आप उसी घंटे की लागत पर अधिक RAM प्राप्त कर सकते हैं। प्रदर्शन के दृष्टिकोण से दो सबसे अच्छे विकल्प D13 या D14 मानक वर्चुअल मशीन हैं।
Azure गैलरी से पूर्व-कॉन्फ़िगर किए गए SQL Server 2014 इंस्टेंसेस आपको SQL सर्वर लाइसेंसिंग लागतों में बहुत सारा पैसा बचा सकते हैं, और उनके पास मूल छवि में पहले से ही पूरा आवश्यक कॉन्फ़िगरेशन कार्य है। आपको अभी भी अंदर जाना चाहिए और अपनी पसंद और कार्यभार के आधार पर कुछ अंतिम कॉन्फ़िगरेशन परिवर्तन करना चाहिए। अंत में, आपको अपनी वर्चुअल मशीन पर कुछ प्रदर्शन बेंचमार्क चलाने के लिए समय निकालना चाहिए ताकि आप उस प्रदर्शन के स्तर को समझ सकें जो वह प्रदान कर सकता है।