DBAs के लिए SSAS का त्वरित अवलोकन
तो, आप एक SQL सर्वर DBA हैं और आपको अभी प्रबंधन करने के लिए नीले रंग के कुछ क्यूब्स विरासत में मिले हैं। SSAS प्रशासन पर त्वरित क्रैश कोर्स क्रम में लगता है।
प्रशासनिक दृष्टि से, एसएसएएस काफी सीधा है, अगर संसाधन भूखा है। यह एक DBMS मंच की तुलना में सरल है, हालांकि कई मायनों में अलग है। इसके अलावा, कुछ प्रशासनिक कार्य भी हैं जैसे कि SSAS के लिए उपयोग आधारित अनुकूलन जो आपको अपने सिर के चारों ओर लाने के लिए हो सकते हैं।
अपनी कॉन्फ़िगरेशन फ़ाइल का बैकअप लें
सभी कॉन्फिग डेटा नामक फाइल में रहता है msdmsrv.ini
। यह एक XML फ़ाइल है। यदि आप SSMS (सर्वर से कनेक्ट करें, सर्वर पर राइट क्लिक करें, गुणों का चयन करें) के माध्यम से कॉन्फ़िगर के साथ छेड़छाड़ करते हैं, तो आप उन विकल्पों को सेट कर सकते हैं जो सर्वर को स्टार्ट अप पर तोड़ देंगे। msmdsrv.ini
इससे पहले कि आप कुछ भी खेलने के लिए एक प्रति ले लो ।
महत्वपूर्ण पैरामीटर
मेमोरी: SSAS एक बाइबिल मेमोरी हॉग है। यदि संभव हो तो यह 64 बिट बनाता है, और बहुत सारी मेमोरी। मापदंडों 'मेमोरी \ LowMemoryLimit' और 'मेमोरी \ HighMemoryLimit' नियंत्रण स्मृति उपयोग नीतियों। LowMemoryLimit एक न्यूनतम मेमोरी आवंटन नहीं है। यह एक दहलीज है जहां एसएसएएस मानता है कि सिस्टम मेमोरी पर कम है और अपने कैश से सामान बाहर निकालना शुरू कर देता है। HighMemoryLimit पूर्ण अधिकतम है जो इसका उपयोग करेगा।
ध्यान दें कि एसएसएएस अपने डेटा को फाइलों में संग्रहीत करता है (बहुत सारी फाइलें - इसमें फाइलग्रुप के बराबर कोई तंत्र नहीं है), इसलिए यह उन फाइलों के लिए ओ / एस फाइल सिस्टम कैशिंग का बहुत उपयोग करता है। ध्यान दें कि इन सीमाओं के लिए डिफ़ॉल्ट क्रमशः मशीन की मेमोरी का लगभग 65% और 80% है, इसलिए यदि आप चाहते हैं कि OLAP सर्वर एक SQL सर्वर उदाहरण के साथ सह-अस्तित्व में आए, तो आपको उन लोगों को बंद करने की आवश्यकता होगी ताकि यह स्मृति के साथ लड़ाई नहीं कर रहा है डेटाबेस सर्वर।
निर्देशिकाएँ: ब्याज के पांच पैरामीटर इसे कवर करते हैं: डेटाडायर, ऑलग्राउडिंगबॉल्डर्स, बैकअपडाइर, लॉगडिर और टेम्पपिर। DataDir और AllowedBrowsingFolders सबसे महत्वपूर्ण हैं।
AllowedBrowsingFolders उन फ़ोल्डरों की सूची को प्रभावित करता है जो OLAP सर्वर अपनी डेटा फ़ाइलों को डाल देगा। उपयोगकर्ता इंटरफ़ेस (जैसे परिनियोजन विज़ार्ड) के साथ कुछ भी आपके विकल्प को AllowedBrowsingFolders में सूची में प्रतिबंधित कर देगा। मान एक पाइप ('|') निर्देशिकाओं की सीमांकित सूची है।
DataDir फ़ाइलों के लिए डिफ़ॉल्ट पथ है। यदि आप कई संस्करणों में घन को विभाजित करने का इरादा रखते हैं तो आपको AllowedBrowsingFolders को उचित रूप से कॉन्फ़िगर करने की आवश्यकता होगी।
लॉगडिअर वह जगह है जहां सर्वर फ्लाइट रिकॉर्डर और क्वेरी लॉग सहित विभिन्न लॉग फाइल रखता है। फ्लाइट रिकॉर्डर लॉग का उपयोग समस्या निवारण के लिए किया जाता है और उपयोग आधारित अनुकूलन के लिए OLAP क्वेरी लॉग का उपयोग किया जाता है (इस पर बाद में)।
TempDir अस्थायी फ़ाइलों के लिए एक स्थान है जिसे SSAS प्रसंस्करण के दौरान बनाता है। यदि आप बड़े डेटा वॉल्यूम को संसाधित कर रहे हैं और प्रदर्शन समस्याएँ हैं, तो आपको डेटा से किसी अन्य वॉल्यूम पर इसे बंद करने से लाभ हो सकता है।
BackupDir यह टिन पर क्या कहता है।
विविध:
कुछ विविध पैरामीटर भी रुचि के हो सकते हैं। कुछ सेट जो आपको ट्विक करने पड़ सकते हैं:
DefaultMaxDrillthroughRows: यह ड्रिलथ्रू पंक्ति सेट के आकार को सीमित करता है। अधिक अनुमति देने के लिए आपको इसे फील करना पड़ सकता है।
थ्रेड्स / टाइमआउट: आपको इन्हें समायोजित करने की आवश्यकता हो सकती है। मुझे कभी परेशान नहीं होना पड़ा।
वे मूल बातें हैं। आपको विशिष्ट कारणों से दूसरों को ट्विस्ट करने की आवश्यकता हो सकती है, लेकिन आप उस पर अपना होमवर्क कर सकते हैं।
एसएसएएस सर्वर संपत्तियों के लिए एक संदर्भ गाइड यहां पाया जा सकता है।
संचालन
परिनियोजन: आप किसी प्रोजेक्ट को BIDS में संकलित कर सकते हैं और उन फ़ाइलों का एक सेट प्राप्त कर सकते हैं जिन्हें परिनियोजन विज़ार्ड के साथ परिनियोजित किया जा सकता है । आपको विभाजन और कुछ अन्य चीजों के लिए फ़ाइल पथ समायोजित करने की आवश्यकता हो सकती है।
प्रोग्राम किए गए और बैच किए गए व्यवस्थापक कार्य: कमांड्स को XML / A नामक वेब सेवा API के माध्यम से SSAS को जारी किया जाता है। Microsoft MDX और XML / A कॉन्सैंड जारी करने के लिए एक इंटरैक्टिव टूल प्रदान करता है। यदि आपको किसी XML / A कमांड में MDX एम्बेड करना है, तो XML एस्केप जैसे उपयोग करने की आवश्यकता पर ध्यान दें &
। यह SSMS में MDX संपादक और क्वेरी टूल के साथ कोई समस्या नहीं है।
ऑफ़लाइन कार्य विभिन्न एसएसआईएस क्यूब प्रसंस्करण कार्यों के माध्यम से किया जा सकता है, एक कमांड लाइन उपयोगिता ascmd.exe
जिसे एएमटी कहा जाता है। एएमओ। आप विभिन्न पॉवरशेल टूल और इस तरह के उपकरण भी प्राप्त कर सकते हैं। ascmd.exe
एक XML / A फ़ाइल लेता है और इसे सर्वर पर पोस्ट करता है। यदि आपको फ़ाइल को प्रोग्रामिक रूप से फ्राई करना है तो आप एक .cmd स्क्रिप्ट से फ़ाइलों को हेरफेर करने की कोशिश करने के बजाय छोटे .Net टूल के साथ काम करना बेहतर समझ सकते हैं।
संचालन गाइड और अधिक विस्तार में इस में चला जाता है।
सुरक्षा
SSAS पर सुरक्षा काफी सरल है। इसकी एक वैश्विक 'सर्वर' भूमिका है, जिसकी संपूर्ण प्रणाली में प्रशासनिक अनुमति है। दुर्भाग्यवश डेटाबेस बनाने के लिए आपको 'सर्वर' की आवश्यकता होती है, इसलिए यह संभव है कि आपको डेवलपर्स के पास किसी भी विकास OLAP सर्वर पर इसे देने की आवश्यकता होगी।
अन्य सुरक्षा केवल व्यक्तिगत क्यूब स्कीमा पर लागू की जा सकती है। आप स्कीमा के भीतर भूमिकाओं के लिए व्यक्तिगत आइटम पर पढ़ने, प्रक्रिया, ड्रिलथ्रू, राइटबैक और इसी तरह की अनुमति दे सकते हैं। OLAP स्कीमा पर रोल्स को BIDS के भीतर परिभाषित किया जा सकता है और क्यूब के साथ तैनात किया जाता है। विज्ञापन समूह या उपयोगकर्ताओं को SSMS के माध्यम से उन भूमिकाओं को सौंपा जा सकता है।
भूमिका सदस्यता के लिए प्रोग्राम को कैसे प्रबंधित किया जाए, इसका एक उदाहरण यहां देखा जा सकता है।
उपयोग-आधारित अनुकूलन
एक डीबीए के रूप में आप अच्छी तरह से इस एक में शामिल हो सकते हैं, लेकिन पहले भौतिक भंडारण के बारे में थोड़ा पृष्ठभूमि। SSAS आधार डेटा के साथ-साथ पूर्व-निर्मित समुच्चय की गणना और उन्हें जारी रखने के द्वारा काम करता है। यदि एक समग्र को मारकर एक क्वेरी को संतुष्ट किया जा सकता है, तो ओएलएपी सर्वर इसे आधार डेटा के लिए प्राथमिकता में उपयोग करेगा, क्योंकि कुल में बहुत कम आई / ओ शामिल होगा और इसलिए यह डेटा को पुनः प्राप्त करने के लिए तेज होगा।
हालाँकि, आपको यह पता लगाना होगा कि कौन से एग्रीगेट की गणना की जा सकती है (यानी रोलअप उत्पन्न करने के लिए आयाम विशेषताओं का संयोजन क्या है)। BIDS के पास एक उपकरण है जो इस पर एक अनुमान लगाएगा और आपके लिए कुछ उत्पन्न करेगा। कुछ उपकरण, जैसे कि बीआईडीएस हेल्पर आपको समुच्चय को मैन्युअल रूप से संपादित करने की अनुमति देगा।
सर्वर पर जारी वास्तविक प्रश्नों का एक लॉग लेकर, और फिर उस लॉग का उपयोग करके समुच्चय का एक सेट निकालकर उपयोग आधारित अनुकूलन कार्य करता है, जो उन प्रश्नों के लिए इष्टतम होगा। DBA के रूप में, आप इस डेटा को कैप्चर करने के लिए OLAP क्वेरी लॉगिंग सेट कर सकते हैं, और फिर क्यूब पर ऑप्टिमाइज़ेशन चला सकते हैं। क्वेरी लॉग सेट करने के बारे में एक धुंधला यहाँ पाया जा सकता है।
ऐसा करने के उपकरण को 'उपयोग आधारित अनुकूलन विज़ार्ड' कहा जाता है । यह SSMS में रहता है, और विभाजन को खोलकर एक्सप्लोरर को खोजा जा सकता है और राइट-क्लिक मेनू से 'यूसेज बेस्ड ऑप्टिमाइजेशन' का चयन किया जा सकता है।
प्रदर्शन गाइड और अधिक विस्तार में ट्यूनिंग में चला जाता है।
MDX
MDX SQL की तरह थोड़ा सा दिखता है लेकिन बहुत अलग तरीके से काम करता है। 'एमडीएक्स फॉर एसक्यूएल प्रोग्रामर्स' पर एक ग्रंथ अपने आप में एक संपूर्ण विषय है। मैं इस पर कुछ ट्यूटोरियल के माध्यम से पढ़ने और / या उस पर एक पुस्तक प्राप्त करने का सुझाव देता हूं। साथ ही, यहाँ के दोस्ताना लोग dba.se पर प्रश्नों के साथ मदद कर सकते हैं यदि आपके पास कोई है।
MDX में पंक्तियों को फ़िल्टर करने की कोई अवधारणा नहीं है। क्वेरी 1 के विभिन्न अक्षों , प्लस 'चयन' पर प्रदर्शित करने के लिए भाषा में बहुत सारे सेट ऑपरेशन हैं । आप with
उपायों और सेटों को परिभाषित करने के लिए सीटीई जैसे दिखने वाले बयानों का उपयोग कर सकते हैं ।
कुछ परिचयात्मक MDX प्रोग्रामिंग संसाधन यहां और यहां पाए जा सकते हैं (यह एक काफी पुराना और बहुत लंबा घुमावदार है)। विषय पर कुछ अच्छी किताबें भी हैं; यह एसओ प्रश्न एसएसएएस संसाधनों के लिए काफी प्रशंसक है।
1 हालांकि इसके पास गैर-खाली ऑपरेटर हैं जो परिणामों को उन संयोजनों तक सीमित करते हैं जो वास्तव में डेटा हैं। अधिकांश एमडीएक्स प्रश्नों में यह परिभाषित करना शामिल है कि कुल्हाड़ियों पर क्या स्लाइस दिखाना है, और खाली कोशिकाओं के दहनशील स्तर की मात्रा वापस करने वाले प्रश्नों से बचने के लिए गैर-रिक्त ऑपरेटर आवश्यक होंगे।