MS SQL सर्वर विश्लेषण सेवा क्यूब्स में बैक फीचर लिखें

आज, इन-मेमोरी बीआई समाधान लोकप्रियता में बढ़ रहे हैं। क्यूब्स अब प्रचलन में नहीं हैं, उनकी संरचना अप्रचलित है, और यद्यपि वे बहुत अच्छी तरह से पैमाने पर हैं, आधुनिक बीआई सिस्टम की गति के लिए आवश्यकताओं में काफी वृद्धि हुई है। फिर भी, कई कंपनियां अभी भी सफलतापूर्वक OLAP सर्वर (Microsoft, Oracle, Cognos, आदि) में से एक पर निर्मित एनालिटिक्स का उपयोग करती हैं। उदाहरण के लिए, मैं वास्तव में Microsoft SQL सर्वर विश्लेषण सेवा पसंद करता हूं, और मैं आपको बताना चाहूंगा कि यह कैसे एनालिटिक्स के लिए थोड़ा असामान्य फ़ंक्शन का उपयोग कर सकता है - डेटा को स्रोत पर वापस लिखें (राइट बैक)।

समस्या का बयान।

आपको महीने, उत्पाद और क्षेत्र द्वारा वर्ष के लिए बिक्री योजना बनाने की आवश्यकता है। उसी समय, चालू वर्ष के वास्तविक आंकड़ों और अगले वर्ष के लिए गणना की गई प्रवृत्ति को देखना आवश्यक है, जिसे प्रबंधक बदल देगा। डेटा प्रविष्टि उपकरण सुविधाजनक होना चाहिए, यह आपको फ़िल्टर लागू करने और विभिन्न समूहों (सामान्य रूप से, क्षेत्र, उत्पाद और अवधि) के लिए परिणाम देखने की अनुमति देनी चाहिए और उपयोगकर्ता को अध्ययन करने के लिए बहुत समय की आवश्यकता नहीं है।

निर्णय।

हम MS SQL Server 2008 R2 (डेटाबेस इंजन और विश्लेषण सेवा) + एक्सेल 2010 का उपयोग करेंगे। हम एक डेटाबेस बनाते हैं, कई टेबल बनाते हैं और उन्हें डेटा से भरते हैं।

एक डेटाबेस बनाने और तालिकाओं को आबाद करने के लिए स्क्रिप्ट
CREATE DATABASE [MyDB] ON PRIMARY ( NAME = N'MyDB', FILENAME = N'C:\MyDB.mdf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) LOG ON ( NAME = N'MyDB_log', FILENAME = N'C:\MyDB_log.ldf' , SIZE = 1024KB , FILEGROWTH = 10%) GO USE MyDB GO CREATE TABLE dbo.Dates (DayDate DATETIME, Month_Num SMALLINT, Month_Name VARCHAR(50), Year_Num SMALLINT, PRIMARY KEY (DayDate)) GO INSERT INTO dbo.Dates (DayDate, Month_Num, Month_Name, Year_Num) VALUES ('20130101', 1, '', 2013), ('20130201', 2, '', 2013), ('20130301', 3, '', 2013), ('20130401', 4, '', 2013), ('20130501', 5, '', 2013), ('20130601', 6, '', 2013), ('20130701', 7, '', 2013), ('20130801', 8, '', 2013), ('20130901', 9, '', 2013), ('20131001', 10, '', 2013), ('20131101', 11, '', 2013), ('20131201', 12, '', 2013) GO CREATE TABLE dbo.Regions (Region_Id INT, Region_Name VARCHAR(250), PRIMARY KEY (Region_Id)) GO INSERT INTO dbo.Regions (Region_Id, Region_Name) VALUES (1, ''), (2, ''), (3, ''), (4, ''), (5, '') GO CREATE TABLE dbo.SKU (SKU_Id INT, SKU_Name VARCHAR(250), PRIMARY KEY (SKU_Id)) GO INSERT INTO dbo.SKU (SKU_Id, SKU_Name) VALUES (1, ''), (2, ''), (3, ''), (4, ''), (5, ''), (6, ''), (7, ''), (8, ''), (9, ''), (10, '') GO CREATE TABLE dbo.Plan_Sale (DayDate DATETIME, Region_Id INT, SKU_Id INT, Sum_Sale MONEY, PRIMARY KEY (DayDate, Region_Id, SKU_Id)) GO 





एक घन बनाएँ।




हम विभाजन के लिए लिखें वापस सक्रिय करें, डेटा स्रोत और तालिका निर्दिष्ट करें। हम एक क्यूब की प्रक्रिया करते हैं।




यह डेटाबेस में तालिका कैसे दिखेगी:


इसकी संरचना में कुछ भी बदलाव न करें - रिवर्स रिकॉर्ड टूट सकता है। प्रारंभिक मान को सही करने वाले परिवर्तन इस तालिका में आ जाएंगे। वास्तविक मूल्य प्राप्त करने के लिए, इस तालिका के डेटा को मूल तालिका के डेटा में जोड़ा जाना चाहिए।

हम एक ग्राहक के रूप में एक्सेल का उपयोग करते हैं। एक्सेल संस्करण 14.0 से पहले, आपको एक मैक्रो, या संस्करण 13.0, ऐड-इन का उपयोग करके डेटा लिखना था। Excel 2010 से शुरू होकर, डेटा को संपादित करने की क्षमता कार्यक्षमता का हिस्सा बन गई है। दो डेटा रिकॉर्डिंग मोड का समर्थन किया जाता है: अस्थायी राइटबैक, जिसे व्हाट इफ एनालिसिस और स्थायी राइटबैक भी कहा जाता है।



  1. डेटा स्रोत से कनेक्ट करें। धुरी तालिका में, इन विकल्पों को सक्षम करें

  2. क्यूब से जुड़े पिवट टेबल के अंदर से, पिवट टेबल्स टैब के साथ वर्क पर क्लिक करें

  3. क्या-अगर विश्लेषण समूह खोजें

  4. इस समूह में एक "क्या होगा" विश्लेषण मेनू आइटम है। जब आप इसे सक्षम करते हैं, तो आप धुरी तालिका के डेटा क्षेत्र में डेटा दर्ज करने में सक्षम होंगे।
  5. आपके द्वारा दर्ज किया गया डेटा सेल के निचले दाएं कोने में एक मार्कर के साथ हाइलाइट किया जाएगा। ये डेटा कहीं नहीं मिलते हैं और क्यूब में अन्य संकेतकों को प्रभावित नहीं करते हैं।

  6. 6. डेटा का एक हिस्सा बनाने के बाद, "क्या अगर" विश्लेषण मेनू में , धुरी तालिका की गणना करते समय लेखांकन बदलें - सभी फ़ील्ड जो आपके द्वारा बनाए गए मूल्यों पर निर्भर करती हैं उन्हें अपडेट किया जाएगा (आप धुरी तालिका की गणना करते समय परिवर्तनों को स्वचालित रूप से सक्षम कर सकते हैं, फिर प्रत्येक मान के बाद डेटा अपडेट किया जाएगा)। इस आइटम को छोड़ दिया जा सकता है और तुरंत परिवर्तनों को प्रकाशित कर सकता है (p.6)।

  7. परिवर्तनों को ध्यान में रखने के बाद, आपको प्रकाशित परिवर्तनों पर क्लिक करने की आवश्यकता है, अन्यथा डेटा स्थायी भंडारण तालिकाओं में नहीं आएगा और खो जाएगा । परिवर्तन पोस्ट होने के बाद, सेल के निचले दाएं कोने में मार्कर गायब हो जाएगा, डेटा डेटाबेस में सहेजा जाएगा।


आइए देखें कि डेटाबेस में हमारे लिखें बैक टेबल में क्या है:


निष्कर्ष

उदाहरण के लिए, डेटा का वितरण अधिक जटिल हो सकता है: उपयोगकर्ता पदानुक्रम के शीर्ष स्तर पर डेटा में प्रवेश करता है, और शीट तत्वों में सेट गुणांक का उपयोग करके शीट तत्वों को डेटा वितरित किया जाता है। सब कुछ आपकी कल्पना और कार्यों पर निर्भर करेगा।
यहां एक साधारण उपयोगकर्ता के लिए परिचित एक सरल और सबसे महत्वपूर्ण बजट उपकरण है। उपयोग करने में आसान और सेट अप करने के लिए त्वरित। मैं सभी सवालों के जवाब दूंगा - लिखो!
उपयोग की गई फ़ाइलों के लिए लिंक

Source: https://habr.com/ru/post/In198098/


All Articles