Аппараттық және бағдарламалық қамтамасыз етуді орнату

Excel текше бағдарламасы. Microsoft Query арқылы OLAP текшесін жасау

OLAP (онлайн аналитикалық өңдеу)алдын ала есептелген қорытындыларды пайдалана отырып, деректерді иерархиялық санаттарға ұйымдастыруды ұсынатын деректерді талдау әдісі. OLAP деректеріиерархиялық реттелген және кестелерде емес, текшелерде сақталады. OLAP текшелері параметрлері сызылатын осьтері және параметрге тәуелді жиынтық деректері бар ұяшықтары бар көп өлшемді деректер жиыны болып табылады. Текшелер деректердің үлкен көлемін күрделі, көп өлшемді талдауға арналған, себебі олар жеке жазбалардың үлкен санының орнына есеп беру үшін тек жиынтық нәтижелерді береді.

OLAP концепциясын 1993 жылы белгілі дерекқор зерттеушісі және авторы сипаттаған қатынас моделі E. F. Codd деректері. Қазіргі уақытта OLAP қолдауы көптеген ДҚБЖ және басқа құралдарда жүзеге асырылады.

OLAP текшесі деректердің екі түрін қамтиды:

Жалпы мәндер, сіз қорытындылағыңыз келетін мәндер, көрсететін есептелген деректер өрістері;

сипаттайтын ақпарат өлшемдернемесе өлшемдері. Сипаттамалық ақпарат әдетте егжей-тегжейлі деңгейлерге бөлінеді. Мысалы: «Уақыт» өлшеміндегі «Жыл», «Тоқсан», «Ай» және «Күн». Өрістерді егжей-тегжейлі деңгейлерге бөлу есеп пайдаланушыларына жоғары деңгейлі қорытындыдан бастап, одан кейін егжей-тегжейлі көрініске өтуге және керісінше қарайтын мәліметтер деңгейін таңдауға мүмкіндік береді.

Microsoft Query құралдары сонымен қатар деректерді жүктейтін сұраудан OLAP текшелерін жасауға мүмкіндік береді қатынастық базасызықтық кестені құрылымдық иерархияға (текше) түрлендіру кезінде Microsoft Access сияқты деректер.

OLAP текшесін жасау шебері кірістірілген Microsoft Query құралы болып табылады. Реляциялық дерекқор негізінде OLAP текшесін жасау үшін шеберді іске қоспас бұрын келесі қадамдарды орындау керек.

1. Деректер көзін анықтаңыз (6.1 суретті қараңыз).

2. C Microsoft компаниясының көмегіТекшедегі өріс бір реттен көп пайдаланылса, OLAP текшесінің деректер өрістері немесе өлшем өрістері болатын өрістерді ғана қамтитын сұрауды жасау үшін сұрау.

3. Сұраныс жасау шеберінің соңғы қадамында радио түймені орнатыңыз OLAP текшесін мына жерден жасаңыз берілген өтініш (6.2-суретті қараңыз) немесе тікелей мәзірдегі Сұраныс құралдары арқылы сұрау жасалғаннан кейін Файлкоманда таңдау OLAP текшесін жасаңыз, ол OLAP текшесін жасау шеберін іске қосады.

OLAP текшесін жасау шеберінде үш қадам бар.

Шебердің бірінші қадамында (6.6-суретті қараңыз), the деректер өрістері– Қорытындыларды анықтағыңыз келетін есептелген өрістер.



Күріш. 6.6. Деректер өрістерін анықтау

Ұсынылған есептелген өрістерді (әдетте сандық өрістер) шебер орналастырады жоғарғы бөлігітізім, жалаушалар қояды және осы өрістердің соңғы функциясын анықтайды, әдетте − сомасы. Деректер өрістерін таңдаған кезде, кем дегенде бір өріс есептелген өріс ретінде таңдалуы керек және өлшемді анықтау үшін кем дегенде бір өрісті белгілеусіз қалдыру керек.

OLAP текшесін жасаған кезде төрт жиынтық функцияны пайдалануға болады - сомасы, Сан(мәндер саны), Ең аз, Максимумсандық өрістер және бір функция үшін Санбарлық басқа өрістер үшін. Бір өрістің бірнеше түрлі жиынтық функцияларын пайдаланғыңыз келсе, бұл өріс сұрауға қажетті санды қосу керек.

Есептелген өріс атауын бағанда өзгертуге болады Деректер өрісінің атауы.

Шебердің екінші қадамында сипаттаушы деректер мен олардың өлшемдері анықталады (6.7 суретті қараңыз). Өлшем өрісін таңдау үшін тізімнен қажет Бастапқы өрістерқажетті жоғарғы деңгейлі өлшем өрісін тізімге сүйреңіз өлшемдердеп белгіленген аймаққа Өлшем жасау үшін өрістерді осында сүйреңіз. OLAP текшесін жасау үшін кемінде бір өлшемді анықтауыңыз керек. Шебердің сол қадамында пайдалану контекстік мәзірөлшемді немесе деңгей өрісінің атын өзгертуге болады.

Күріш. 6.7. Өлшем өрістерінің анықтамасы

Оқшауланған немесе бөлек деректерді қамтитын және иерархияға жатпайтын өрістерді бір деңгейлі өлшемдер ретінде анықтауға болады. Дегенмен, кейбір өрістер деңгейлерге ұйымдастырылған болса, текшені пайдалану тиімдірек болады. Өлшемнің бөлігі ретінде деңгейді жасау үшін тізімнен өрісті сүйреңіз Бастапқы өрістерөлшем немесе деңгей болып табылатын өрісте. Толығырақ ақпаратты қамтитын өрістер төменгі деңгейлерде орналасуы керек. Мысалы, 6.7-суретте өріс Позицияөріс деңгейі болып табылады Бөлім атауы.

Өрісті төменге немесе жоғарыға жылжыту үшін жоғары деңгей, оны өлшемдегі төменгі немесе жоғарырақ жолаққа апару керек. немесе түймелері сәйкесінше деңгейлерді көрсету немесе жасыру үшін пайдаланылады.

Егер күн немесе уақыт өрістері жоғарғы деңгейдегі өлшем ретінде пайдаланылса, OLAP текшесін жасау шебері сол өлшемдер үшін деңгейлерді автоматты түрде жасайды. Пайдаланушы есептерде қандай деңгейлер болуы керектігін таңдай алады. Мысалы, апталарды, тоқсандарды және жылдарды немесе айларды таңдауға болады (6.7-суретті қараңыз).

Шебердің автоматты түрде күн мен уақыт өрістері үшін деңгейлерді жоғары деңгейлі өлшемді жасағанда ғана жасайтынын есте сақтаңыз; осы өрістерді бұрыннан бар өлшемнің ішкі деңгейлері ретінде қосқанда, автоматты деңгейлер жасалмайды.

Шебердің үшінші қадамында үш опция мүмкін болған кезде шебер жасаған текше түрі анықталады (6.8-суретті қараңыз).

Күріш. 6.8. Шебердің үшінші қадамында жасалатын текше түрін таңдау

· Алғашқы екі опция есеп ашылған сайын текшені жасауды қамтиды (егер текше Excel бағдарламасынан қаралса, онда біз жиынтық кесте туралы айтып отырмыз). Бұл жағдайда сұрау файлы және файл *.oqy текше анықтамаларыТекшені жасауға арналған нұсқауларды қамтиды. *.oqy файлын ашуға болады Excel бағдарламасыТекшеге негізделген есептерді жасау үшін және текшеге өзгертулер енгізу қажет болса, текше жасау шеберін қайта іске қосу үшін оны Сұрау арқылы ашуға болады.

Әдепкі бойынша, текшені анықтау файлдары, сонымен қатар сұрау файлдары Application Data\Microsoft\Que-ries ішіндегі пайдаланушы профиль қалтасында сақталады. *.oqy файлын сақтаған кезде стандартты қалта, текше анықтамасының файл атауы қойындыда көрсетіледі OLAP текшелері Microsoft Query бағдарламасында жаңа сұрауды ашқанда немесе пәрменді таңдағанда Сұраныс жасау(мәзір Деректер, ішкі мәзір Сыртқы деректерді импорттау) Microsoft Excel бағдарламасында.

Текше түрінің үшінші нұсқасын таңдаған жағдайда Текшеге арналған барлық деректерді қамтитын текше файлын сақтау, текшеге арналған барлық деректер шығарылады және * кеңейтімі бар текше файлы пайдаланушы көрсеткен жерде жасалады .cubонда бұл деректер сақталады. Жасау берілген файлтүймені басқан кезде бірден болмайды Дайын; файл текше анықтамасы файлға сақталғанда немесе есеп текшеден жасалған кезде жасалады.

Текше түрін таңдау бірнеше факторлармен анықталады: текшедегі деректер көлемі; текше негізінде жасалатын есептердің түрі мен күрделілігі; жүйелік ресурстар (жад және дискілік кеңістік) және т.б.

Бөлек файл cube *.cub келесі жағдайларда жасалуы керек:

1) дискілік кеңістік жеткілікті болса, жиі өзгеретін интерактивті есептер үшін;

2) есептерді жасау кезінде басқа пайдаланушылар үшін оған қатынасты қамтамасыз ету үшін текшені желі серверінде сақтау қажет болғанда. Текше файлы басқа пайдаланушылардың қатынасуын болдырғыңыз келетін құпия немесе құпия деректерді өткізіп жібермей, бастапқы дерекқордан арнайы деректерді бере алады.

OLAP бір бағдарламалық өнім емес, бағдарламалау тілі емес, тіпті белгілі бір технология емес. Егер сіз OLAP-ты оның барлық көріністерімен қамтуға тырыссаңыз, онда бұл талдаушылардың деректерге қол жеткізуін жеңілдететін бағдарламалық өнімдердің негізінде жатқан тұжырымдамалар, принциптер мен талаптар жиынтығы. Анықтап көрейік негеталдаушыларға ерекше нәрсе керек жеңілдетудеректерге қол жеткізу.

Өйткені, аналитиктер корпоративтік ақпараттың ерекше тұтынушылары болып табылады. Аналитиктің міндеті - үлкен деректер жиынындағы үлгілерді табу. Сондықтан, талдаушы бейсенбіде төртінші күні қара сия партиясы контрагент Черновқа сатылғанына назар аудармайды - оған ақпарат қажет жүздеген және мыңдағанұқсас оқиғалар. Мәліметтер қорындағы бір ғана фактілер, мысалы, құзырында мәміле орналасқан бухгалтерді немесе сату бөлімінің басшысын қызықтыруы мүмкін. Аналитик үшін бір жазба жеткіліксіз - мысалы, оған бір ай немесе бір жыл ішінде берілген филиалдың немесе өкілдіктің барлық операциялары қажет болуы мүмкін. Сонымен қатар талдаушы тастайдысатып алушының СТН, оның нақты мекенжайы мен телефон нөмірі, келісімшарт индексі және т.б. сияқты қажет емес мәліметтер. Сонымен қатар, талдаушы жұмыс істеуі керек деректерде міндетті түрде сандық мәндер болуы керек - бұл оның қызметінің мәніне байланысты.

Сонымен, талдаушыға көп деректер қажет, бұл деректер таңдамалы және сонымен бірге сипаты бар ». атрибуттар жиыны – сан". Соңғысы аналитиктің келесі түрдегі кестелермен жұмыс істейтінін білдіреді:

Мұнда » ел", "Өнім", "Жыл" атрибуттар немесе өлшемдер, а " Сату көлемі" - осылайша сандық мән немесе өлшеу. Аналитиктің міндеті, біз қайталаймыз, атрибуттар мен сандық параметрлер арасындағы тұрақты қатынастарды анықтау.. Кестеге қарап, оны үш өлшемге оңай аударуға болатынын көруге болады: осьтердің біріне біз елдерді, екіншісіне - тауарларды, үшіншіге - жылдарды қоямыз. Бұл үш өлшемді массивтегі мәндер сәйкес сатылым көлемі болады.

Кестенің 3D көрінісі. Сұр сегмент 1988 жылы Аргентина үшін деректер жоқ екенін көрсетеді

OLAP тұрғысынан дәл осындай үш өлшемді массив текше деп аталады. Шын мәнінде, қатаң математика тұрғысынан мұндай массив әрқашан текше бола бермейді: нақты текше үшін барлық өлшемдердегі элементтердің саны бірдей болуы керек, ал OLAP текшелерінде мұндай шектеу болмайды. Дегенмен, осы егжей-тегжейлерге қарамастан, «OLAP текшелері» термині өзінің қысқалығы мен бейнелілігіне байланысты жалпы қабылданған. OLAP текшесі мүлде 3D болуы міндетті емес. Ол шешілетін мәселеге байланысты екі өлшемді де, көп өлшемді де болуы мүмкін. Әсіресе тәжірибелі аналитиктерге 20-ға жуық өлшеу қажет болуы мүмкін - және маңызды OLAP өнімдері дәл осындай санға арналған. Неғұрлым қарапайым жұмыс үстелі қолданбалары шамамен 6 өлшемді қолдайды.

өлшемдер OLAP текшелері деп аталатындардан тұрады белгілернемесе мүшелер. Мысалы, «Ел» өлшемі «Аргентина», «Бразилия», «Венесуэла» және т.б. белгілерден тұрады.

Текшенің барлық элементтерін толтыруға болмайды: егер 1988 жылы Аргентинада резеңке өнімдерін сату туралы ақпарат болмаса, сәйкес ұяшықтағы мән жай ғана анықталмайды. Сондай-ақ OLAP қолданбасы деректерді міндетті түрде көп өлшемді құрылымда сақтау қажет емес - ең бастысы, пайдаланушы үшін бұл деректер дәл солай көрінеді. Айтпақшы ерекше тәсілдеркөпөлшемді деректерді, «вакуумды» (толтырылмаған элементтерді) текшелерде жинақы сақтау жадының босқа кетуіне әкелмейді.

Дегенмен, текшенің өзі талдауға жарамайды. Егер үш өлшемді текшені жеткілікті түрде көрсету немесе бейнелеу әлі де мүмкін болса, онда алты немесе он тоғыз өлшемде жағдай әлдеқайда нашар. Сонымен қолданар алдындакәдімгі текшелер көп өлшемді кубтан алынады екі өлшемді кестелер. Бұл операция текшені «кесу» деп аталады. Тағы да, бұл термин бейнелі. Аналитик текшенің өлшемдерін оны қызықтыратын белгілерге сәйкес алып, «қиып алады». Осылайша, талдаушы текшенің екі өлшемді кесіндісін алады және онымен жұмыс істейді. Шамамен дәл осылай ағаш кесушілер арадағы жыл сайынғы сақиналарды санайды.

Тиісінше, әдетте, тек екі өлшем «кесілмеген» болып қалады - кесте өлшемдерінің санына сәйкес. Тек өлшем "кесілмеген" болып қалады - егер текшеде сандық мәндердің бірнеше түрі болса, оларды кестенің өлшемдерінің біріне сәйкес салуға болады.

Алдымен біз суреттеген кестеге мұқият қарасаңыз, ондағы деректер, ең алдымен, бастапқы емес, бірақ нәтижесінде алынғанын көре аласыз. қорытындылаукішірек заттар үшін. Мысалы, жыл тоқсанға, тоқсан айға, ай аптаға, апта күнге бөлінеді. Ел аймақтардан, ал аймақтар елді мекендерден тұрады. Ақырында, қалалардың өзінде аудандар мен нақты сауда нүктелерін бөліп көрсетуге болады. Өнімдерді өнім топтарына біріктіруге болады және т.б. OLAP тұрғысынан мұндай көп деңгейлі біріктірулер логикалық түрде аталады иерархиялар. OLAP құралдары кез келген уақытта иерархияның қажетті деңгейіне өтуге мүмкіндік береді. Сонымен қатар, әдетте, бірдей элементтер үшін иерархияның бірнеше түріне қолдау көрсетіледі: мысалы, күн-апта-ай немесе күн-онжылдық-тоқсан. Бастапқы деректер иерархиялардың төменгі деңгейлерінен алынады, содан кейін жоғары деңгейлердің мәндерін алу үшін жинақталады. Өту процесін жылдамдату үшін әртүрлі деңгейлер үшін жинақталған мәндер текшеде сақталады. Осылайша, пайдаланушы жағынан бір текшеге ұқсайтын нәрсе, шамамен айтқанда, көптеген қарапайым текшелерден тұрады.

Иерархия мысалы

Бұл OLAP-тың пайда болуына әкелген маңызды сәттердің бірі - өнімділік пен тиімділік. Аналитик ақпарат алу қажет болғанда не болатынын елестетіп көрейік, ал OLAP құралдары кәсіпорында қол жетімді емес. Аналитик өз бетінше (бұл екіталай) немесе бағдарламашының көмегімен сәйкес SQL сұранысын жасайды және қызығушылық тудыратын деректерді есеп түрінде алады немесе оны электрондық кестеге экспорттайды. Осыған байланысты көптеген мәселелер бар. Біріншіден, талдаушы өз жұмысынан басқа нәрсемен айналысуға мәжбүр болады (SQL бағдарламалау) немесе бағдарламашылар оның тапсырмасын орындауын күтеді - мұның бәрі еңбек өнімділігіне теріс әсер етеді, шабуыл, инфаркт пен инсульт деңгейінің жоғарылауы және т.б. . Екіншіден, бір есеп немесе кесте, әдетте, ойдың алпауыттарын және орыс талдауының әкелерін құтқармайды - және бүкіл процедураны қайта-қайта қайталауға тура келеді. Үшіншіден, біз бұрыннан белгілі болғандай, сарапшылар ұсақ-түйектерді сұрамайды - олар бірден бәрін қажет етеді. Бұл дегеніміз (бірақ технология секіріспен дамып келеді) корпоративтік реляциялық ДҚБЖ, аналитик сілтеме жасайтын, транзакциялардың қалған бөлігін бұғаттап, терең және ұзақ уақыт бойы ойлана алады.

OLAP тұжырымдамасы дәл осындай мәселелерді шешу үшін пайда болды. OLAP текшелері негізінен мета есептер болып табылады. Мета есептерді (текшелерді, яғни) өлшемдер бойынша кесу арқылы талдаушы шын мәнінде оны қызықтыратын «тұрақты» екі өлшемді есептерді алады (бұл терминнің әдеттегі мағынасында міндетті түрде есептер емес - біз деректер құрылымдары туралы айтып отырмыз. бірдей функциялармен). Текшелердің артықшылығы анық - деректер реляциялық ДҚБЖ-дан тек бір рет сұралуы керек - текшені құру кезінде. Сарапшылар, әдетте, жылдам толықтырылатын және өзгертілетін ақпаратпен жұмыс істемейтіндіктен, жасалған текше ұзақ уақыт бойы өзекті болып табылады. Осының арқасында реляциялық ДҚБЖ серверінің жұмысындағы үзілістер жойылып қана қоймайды (мыңдаған және миллиондаған жауап желілері бар сұраулар жоқ), сонымен қатар талдаушының өзі үшін деректерге қол жеткізу жылдамдығы да күрт артады. Бұған қоса, жоғарыда атап өтілгендей, текшені құрастыру кезінде иерархиялардың ішкі қосындыларын және басқа жинақталған мәндерді есептеу арқылы өнімділік жақсарады. Яғни, егер бастапқыда деректерімізде бір дүкендегі белгілі бір өнімнің күнделікті кірісі туралы ақпарат болса, онда текшені қалыптастыру кезінде OLAP қолданбасы иерархияның әртүрлі деңгейлері (апталар мен айлар, қалалар мен елдер) үшін қорытындыларды есептейді.

Әрине, осылайша өнімділікті арттыру үшін төлеу керек. Кейде деректер құрылымы жай ғана «жарылып кетеді» деп айтылады - OLAP текшесі бастапқы деректерге қарағанда ондаған, тіпті жүздеген есе көп орын алуы мүмкін.

Сұрақтарға жауап беру:

    Не болды текше OLAP?

    Не болды жапсырмалар нақты өлшем? Мысалдар келтіріңіз.

    Мүмкін шаралар OLAP текшесінде сандық емес мәндерді қамтиды.

Кейбіреулер үшін есептерді құру кезінде OLAP технологиясын (On-line Analytic Processing) пайдалану қандай да бір экзотикалық болып көрінуі мүмкін, сондықтан олар үшін OLAP-CUBE пайдалану бюджеттеуді автоматтандырудың ең маңызды талаптарының бірі емес. және басқару есебі.

Шын мәнінде, басқару есептерімен жұмыс істегенде көп өлшемді CUBE пайдалану өте ыңғайлы. Бюджеттік пішімдерді әзірлеу кезінде сіз көп нұсқалы пішіндер мәселесіне тап болуыңыз мүмкін (бұл туралы толығырақ «Компанияда бюджеттеуді белгілеу технологиясы» 8-кітабынан және «Басқару есебін орнату және автоматтандыру» кітабынан табуға болады).

Бұл компанияны тиімді басқару үшін барған сайын егжей-тегжейлі басқарушылық есеп беруді талап ететіндігімен түсіндіріледі. Яғни, жүйе барған сайын әртүрлі аналитикалық кесінділерді пайдаланады ақпараттық жүйелерталдаушылар каталогтар жиынтығымен анықталады).

Әрине, бұл менеджерлердің өздерін қызықтыратын барлық аналитикалық бөлімдер бойынша есептерді алғысы келетініне әкеледі. Бұл есептерді қандай да бір түрде «дем алуға» мәжбүрлеу керек дегенді білдіреді. Басқаша айтқанда, бұл жағдайда біз мағынасы жағынан бір есептің әртүрлі аналитикалық бөлімдерде ақпарат беруі керек екендігі туралы айта аламыз. Сондықтан статикалық есептер бұдан былай көптеген заманауи менеджерлерге сәйкес келмейді. Оларға көп өлшемді CUBE қамтамасыз ете алатын динамика қажет.

Осылайша, OLAP технологиясы қазіргі заманғы және перспективалы ақпараттық жүйелердің таптырмас элементіне айналды. Сондықтан бағдарламалық өнімді таңдаған кезде оның OLAP технологиясын пайдаланатынына назар аудару керек.

Ал шынайы CUBE-ларды еліктеуден ажырата білу керек. MS Excel бағдарламасындағы жиынтық кестелер осындай еліктеулердің бірі болып табылады. Иә, бұл құрал текшеге ұқсайды, бірақ іс жүзінде олай емес, өйткені бұл динамикалық емес, статикалық кестелер. Бұған қоса, олар иерархиялық каталогтар элементтерін пайдаланатын есептерді құру мүмкіндігін әлдеқайда нашар жүзеге асырады.

Басқару есептілігін құруда КУБ қолданудың өзектілігін растау үшін мысал келтіруге болады ең қарапайым мысалсату бюджетімен. Бұл мысалда компания үшін келесі аналитикалық бөліктер маңызды: өнімдер, филиалдар және тарату арналары. Егер осы үш аналитика компания үшін маңызды болса, онда сату бюджеті (немесе есеп) бірнеше жолмен көрсетілуі мүмкін.

Айта кету керек, егер сіз үш аналитикалық бөлікке негізделген бюджет жолдарын жасасаңыз (қарастырылып отырған мысалдағыдай), бұл жеткілікті күрделі бюджет үлгілерін жасауға және KUB көмегімен егжей-тегжейлі есептерді құрастыруға мүмкіндік береді.

Мысалы, сату бюджетін тек бір аналитика (анықтамалық кітап) арқылы құрастыруға болады. Жалғыз "Өнім" аналитикасына негізделген сату бюджетінің мысалы көрсетілген 1-сурет.

Күріш. 1. OLAP-CUBE ішіндегі бір аналитикалық "Өнімдерге" негізделген сату бюджетінің мысалы

Бірдей сату бюджетін екі аналитика (анықтамалық кітап) арқылы құрастыруға болады. «Өнім» және «Еншілес компаниялар» екі аналитикасы негізінде құрылған сату бюджетінің мысалы мына жерде берілген. 2-сурет.

Күріш. 2. «INTEGRAL» бағдарламалық пакетінің OLAP-CUBE ішіндегі «Өнім» және «Еншілес компаниялар» екі аналитикасы негізінде құрылған сату бюджетінің мысалы.

.

Егер егжей-тегжейлі есептерді құру қажет болса, онда бірдей сатылым бюджетін үш аналитика (анықтамалық кітаптар) арқылы құрастыруға болады. «Өнімдер», «Еншілес серіктестіктер» және «Тарату арналары» үш өлшемінің негізінде құрылған сату бюджетінің мысалы келтірілген. сурет 3.

Күріш. 3. «INTEGRAL» бағдарламалық пакетінің OLAP-CUBE ішіндегі «Өнімдер», «Еншілес компаниялар» және «Тарату арналары» үш аналитикасы негізінде құрылған сату бюджетінің мысалы.

Естеріңізге сала кетейік, есептерді шығару үшін пайдаланылатын KUB деректерді басқа ретпен көрсетуге мүмкіндік береді. Үстінде сурет 3сату бюджеті алдымен өнім бойынша, содан кейін филиалдар бойынша, содан кейін тарату арнасы бойынша «орналастырылады».

Бірдей деректер басқа ретпен берілуі мүмкін. Үстінде 4-суретбірдей сату бюджеті алдымен өнім бойынша, содан кейін тарату арнасы бойынша, содан кейін филиалдар бойынша «шығарады».

Күріш. 4. INTEGRAL бағдарламалық пакетінің OLAP-CUBE ішіндегі үш «Өнім», «Тарату арналары» және «Еншілес компаниялар» аналитикасы негізінде құрылған сату бюджетінің мысалы.

Үстінде 5-суретбірдей сату бюджеті алдымен сала бойынша, содан кейін өнім бойынша, содан кейін тарату арнасы бойынша «шығарады».

Күріш. 5. INTEGRAL бағдарламалық кешенінің OLAP-CUBE жүйесіндегі үш «Филиалдар», «Өнімдер» және «Тарату арналары» аналитикасы негізінде құрылған сату бюджетінің мысалы.

Шын мәнінде, бұл сату бюджетін алудың барлық мүмкін нұсқалары емес.

Сонымен қатар, сіз KUB жұмыс істеуге мүмкіндік беретініне назар аударуыңыз керек иерархиялық құрылыманықтамалықтар. Ұсынылған мысалдарда иерархиялық каталогтар "Өнімдер" және "Тарату арналары" болып табылады.

Пайдаланушының көзқарасы бойынша, бұл мысалда ол бірнеше басқару есептерін алады (суретті қараңыз). Күріш. 1-5) және параметрлері бойынша бағдарламалық өнімбір есеп болып табылады. Тек CUBE көмегімен оны бірнеше жолмен көруге болады.

Әрине, іс жүзінде мүмкін көп саныәртүрлі басқару есептеріне арналған шығыс опциялары, егер олардың мақалалары бір немесе бірнеше аналитикаға негізделген болса. Ал аналитика жиынтығының өзі пайдаланушылардың егжей-тегжейлі көрсету қажеттіліктеріне байланысты. Рас, бір жағынан аналитиктер неғұрлым көп болса, соғұрлым егжей-тегжейлі есептер құрастыруға болатынын ұмытпау керек. Бірақ, екінші жағынан, бұл бюджеттеудің қаржылық моделі күрделірек болады дегенді білдіреді. Кез келген жағдайда, егер KUB қол жетімді болса, компания қажетті есептілікті мына жерден көре алады әртүрлі опциялар, қызығушылықтың аналитикалық бөлімдеріне сәйкес.

OLAP-CUBE-тің тағы бірнеше мүмкіндіктерін атап өту қажет.

Көпөлшемді иерархиялық OLAP-CUBE бірнеше өлшемдері бар: жол түрі, күн, жолдар, іздеу 1, іздеу 2 және іздеу 3 (суретті қараңыз). Күріш. 6). Әрине, есепте бюджет жолында қанша болса, каталогтары бар түймелер де көрсетіледі максималды сомаанықтамалықтар. Егер бюджеттің кез келген жолында бір каталог болмаса, онда есепте каталогтары бар түймелер болмайды.

Бастапқыда OLAP-CUBE барлық өлшемдерге салынған. Әдепкі бойынша, есеп бастапқы құрастырылғанда, өлшемдер бөлімде көрсетілгендей дәл сол аймақтарда орналасады сурет 6. Яғни, «Күн» сияқты өлшем тік өлшемдер (бағандар аймағындағы өлшемдер), «Жолдар», «Іздеу 1», «Іздеу 2» және «3 іздеу» өлшемдері аймағында орналасқан. " - көлденең өлшемдер аймағында (жолдардағы өлшемдер) және "кеңейтілмеген" өлшемдер аймағындағы "жол түрі" өлшемі (бет аймағындағы өлшемдер). Өлшем соңғы аймақта болса, есептегі деректер сол өлшеммен "кеңейтілмейді".

Осы өлшемдердің әрқайсысын үш аймақтың кез келгеніне орналастыруға болады. Өлшемдер тасымалданғаннан кейін есеп жаңа өлшем конфигурациясына сәйкес лезде қайта құрылады. Мысалы, күн мен жолдарды каталогтармен ауыстыруға болады. Немесе анықтамалық кітаптардың бірін тік өлшем аймағына ауыстыруға болады (суретті қараңыз). Күріш. 7). Басқаша айтқанда, OLAP-CUBE ішіндегі есепті «бұралуға» және пайдаланушы үшін ең қолайлы есеп шығысының нұсқасын таңдауға болады.

Күріш. 7. «INTEGRAL» бағдарламалық пакетінің өлшем конфигурациясын өзгерткеннен кейін есепті қайта құру мысалы.

Өлшеу конфигурациясын KUB негізгі пішінінде немесе өзгерістер картасының редакторында өзгертуге болады (қараңыз. Күріш. сегіз). Бұл өңдегіште тінтуірдің көмегімен өлшемдерді бір аймақтан екінші аймаққа сүйреп апаруға да болады. Бұған қоса, бір аймақтағы өлшемдерді ауыстыруға болады.

Сонымен қатар, сол пішінде кейбір өлшем параметрлерін конфигурациялауға болады. Әрбір өлшем үшін қорытындылардың орнын, элементтердің сұрыптау ретін және элементтердің атауларын теңшеуге болады (қараңыз. Күріш. сегіз). Сондай-ақ есепте көрсетілетін элементтердің қандай атауын көрсетуге болады: қысқартылған (Аты) немесе толық (FullName).

Күріш. 8. «INTEGRAL» бағдарламалық кешенінің өлшемдер картасының редакторы.

Өлшеу параметрлерін олардың әрқайсысында тікелей өңдеуге болады (қараңыз. Күріш. 9). Ол үшін өлшем атауының жанындағы түймеде орналасқан белгішені басыңыз.

Күріш. 9. Каталогты өңдеу мысалы 1 Өнімдер мен қызметтер

Осы өңдегіштің көмегімен есепте көрсеткіңіз келетін элементтерді таңдауға болады. Әдепкі бойынша, барлық элементтер есепте көрсетіледі, бірақ қажет болса, кейбір элементтерді немесе қалталарды өткізіп жіберуге болады. Мысалы, есепте тек бір өнім тобын көрсету қажет болса, қалғандарының барлығы өлшем өңдегішінде құсбелгіні алып тастау керек. Осыдан кейін есепте тек бір өнім тобы болады (суретті қараңыз). Күріш. 10).

Сондай-ақ осы өңдегіште элементтерді сұрыптауға болады. Сонымен қатар, элементтерді қайта реттеуге болады әртүрлі жолдар. Осындай қайта топтастырудан кейін есеп бірден қайта құрылады.

Күріш. 10. «INTEGRAL» бағдарламалық пакетіндегі есепте тек бір өнім тобын (қалтаны) көрсету мысалы

Өлшем өңдегішінде сіз өзіңіздің топтарыңызды жылдам жасай аласыз, каталогтардағы элементтерді сол жерге апара аласыз және т.б. Әдепкі бойынша, тек Басқа топ автоматты түрде жасалады, бірақ сіз басқа топтарды да жасай аласыз. Осылайша, өлшем өңдегішін пайдалана отырып, анықтамалық кітаптардың қандай элементтерін және есепте қандай ретпен көрсетілетінін конфигурациялауға болады.


Айта кету керек, мұндай қайта құрулардың барлығы жазылмайды. Яғни есеп жабылғаннан кейін немесе оны қайта есептегеннен кейін конфигурацияланған әдістемеге сәйкес есепте барлық каталогтар көрсетіледі.

Шындығында, мұндай өзгерістердің барлығын бастапқыда жолдарды орнату кезінде жасауға болады.

Мысалы, шектеулерді пайдалана отырып, есепте қандай элементтер немесе каталогтар топтары көрсетілетінін және қайсысы көрсетілмейтінін де көрсетуге болады.

Ескерту: осы мақаланың тақырыбы семинарларда толығырақ талқыланады «Бизнес бюджетін басқару»және «Басқару есебін құру және автоматтандыру»жүргізген осы мақаланың авторы - Александр Карпов.

Пайдаланушы үнемі дерлік есепте көрсету қажет болса белгілі бір элементтернемесе каталог қалталары болса, онда есеп жолдарын құру кезінде мұндай параметрлерді алдын ала жасаған дұрыс. Дегенмен, есептердегі каталогтар элементтерінің әртүрлі комбинациялары пайдаланушы үшін маңызды болса, әдістемені орнату кезінде ешқандай шектеулер орнатылмауы керек. Барлық осындай шектеулерді өлшем өңдегішінің көмегімен жылдам конфигурациялауға болады.

Бүгінгі күні OLAP дегеніміз не, жалпы, әрбір маман біледі. Кем дегенде, «OLAP» және «көп өлшемді деректер» ұғымдары біздің санамызда берік байланысты. Осыған қарамастан, бұл тақырыптың қайтадан көтерілу фактісін оқырмандардың көпшілігі мақұлдайды деп үміттенемін, өйткені идея уақыт өте келе ескірмеу үшін сіз мезгіл-мезгіл байланысып тұруыңыз керек. ақылды адамдарнемесе жақсы басылымдағы мақалаларды оқыңыз...

Деректер қоймалары (OLAP орны ақпараттық құрылымкәсіпорындар)

«OLAP» термині «деректер қоймасы» (Data Warehouse) терминімен тығыз байланысты.

Мәліметтер қоймасының «негізін салушы» Билл Инмон тұжырымдаған анықтама мынада: «Деректер қоймасы – бұл басқару шешімдерін қабылдау процесін қолдау үшін доменге тән, уақытқа байланысты және өзгермейтін деректер жинағы».

Сақтаудағы деректер бизнес-процестерді автоматтандыруға арналған операциялық жүйелерден (OLTP жүйелері) келеді. Сонымен қатар, репозиторийді статистикалық есептер сияқты сыртқы көздерден толықтыруға болады.

Неліктен деректер қоймаларын құру керек - оларда операциялық жүйелердің дерекқорларында немесе файлдарында «өмір сүретін» анық артық ақпарат бар? Жауап қысқа болуы мүмкін: операциялық жүйелердің деректерін тікелей талдау мүмкін емес немесе өте қиын. Бұл әртүрлі себептерге байланысты, соның ішінде деректердің фрагменттелуі, оларды әртүрлі ДҚБЖ форматтарында және әртүрлі «бұрыштарда» сақтау. корпоративтік желі. Бірақ кәсіпорындағы барлық деректер орталық дерекқор серверінде сақталса да (бұл өте сирек), талдаушы олардың күрделі, кейде шатастыратын құрылымдарын түсінбейді. Автордың аш аналитиктерді операциялық жүйелерден алынған «шикі» деректермен «тамақтандыруға» тырысу өте өкінішті тәжірибесі бар - бұл олар үшін тым қиын болып шықты.

Осылайша, репозиторийдің міндеті – талдау үшін «шикізаттарды» бір жерде және қарапайым, түсінікті құрылымда қамтамасыз ету. Ральф Кимбалл өзінің «Деректер қоймасының құралдар жинағы» кітабының алғы сөзінде, егер оқырман бүкіл кітапты оқып шыққаннан кейін бір ғана нәрсені түсінсе, яғни қойма құрылымы қарапайым болуы керек екенін, автор өз тапсырмасын орындалды деп есептейтінін жазады.

Бөлек сақтау орнының пайда болуын негіздейтін тағы бір себеп бар - операциялық ақпаратқа арналған күрделі аналитикалық сұраулар компанияның ағымдағы жұмысын баяулатады, кестелерді ұзақ уақыт бойы блоктайды және сервер ресурстарын басып алады.

Менің ойымша, сақтау міндетті түрде деректердің алып жинақталуы емес - ең бастысы, ол талдауға ыңғайлы. Жалпы айтқанда, жеке термин шағын қоймаларға арналған - Data Marts (деректер киосктары), бірақ біздің ресейлік тәжірибеде сіз оны жиі ести алмайсыз.

OLAP- ыңғайлы құралталдау

Орталықтандыру және ыңғайлы құрылымдау аналитикке қажет нәрсенің бәрінен алыс. Өйткені, оған әлі де ақпаратты көру, визуализациялау құралы қажет. Тіпті бір репозиторий негізінде құрылған дәстүрлі есептерде бір нәрсе жетіспейді - икемділік. Деректердің қажетті көрінісін алу үшін оларды «бұралуға», «кеңейтуге» немесе «жиыруға» болмайды. Әрине, сіз бағдарламашыға қоңырау шала аласыз (егер ол келгісі келсе), ол (егер ол бос емес болса) тез арада жаңа есеп береді - айталық, бір сағаттың ішінде (мен жазамын және оған өзім сенбеймін - бұл өмірде тез болмайды, оған үш сағат уақыт берейік) . Аналитик күніне екі идеядан артық емес тексере алады екен. Және ол (егер ол жақсы талдаушы болса) сағатына бірнеше осындай идеяларды ұсына алады. Ал талдаушы деректердің «кесінділері» мен «кесінділерін» қаншалықты көп көретін болса, соғұрлым оның идеялары көп болады, бұл өз кезегінде тексеру үшін көбірек жаңа «кесінділерді» талап етеді. Мен оған деректерді қарапайым және ыңғайлы түрде кеңейтуге және тарылтуға мүмкіндік беретін осындай құрал болғанын қалаймын! OLAP - осындай құралдардың бірі.

OLAP деректер қоймасының қажетті атрибуты болмаса да, ол осы деректер қоймасында жинақталған ақпаратты талдау үшін көбірек қолданылады.

Әдеттегі қоймаға кіретін компоненттер күріш. бір.

Күріш. 1. Мәліметтер қоймасының құрылымы

Операциялық деректер әртүрлі көздерден жиналады, тазартылады, біріктіріледі және реляциялық дүкенге қойылады. Сонымен қатар, олар әртүрлі есеп беру құралдарын пайдаланып талдау үшін қол жетімді. Содан кейін деректер (толық немесе ішінара) OLAP талдауына дайындалады. Оларды арнайы OLAP дерекқорына жүктеуге немесе реляциялық дүкенде қалдыруға болады. Оның ең маңызды элементі – метадеректер, яғни мәліметтердің құрылымы, орналасуы және түрленуі туралы ақпарат. Олардың арқасында әртүрлі сақтау компоненттерінің тиімді өзара әрекеттесуі қамтамасыз етіледі.

Қорытындылай келе, OLAP-ты қоймада жинақталған деректерді көп өлшемді талдауға арналған құралдар жиынтығы ретінде анықтауға болады. Теориялық тұрғыдан, OLAP құралдарын операциялық деректерге немесе тікелей қолдануға болады нақты көшірмелер(операциялық пайдаланушыларға кедергі келтірмеу үшін). Бірақ осылай ету арқылы біз жоғарыда сипатталған тырмаға шығу қаупін тудырамыз, яғни талдауға тікелей жарамсыз операциялық деректерді талдауды бастаймыз.

OLAP анықтамасы және негізгі түсініктері

Алдымен, шифрды ашайық: OLAP - бұл онлайн аналитикалық өңдеу, яғни онлайн деректерді талдау. OLAP-тың 12 анықтаушы қағидасын 1993 жылы реляциялық деректер қорының «өнертапқышы» Э.Ф.Кодд тұжырымдаған. Кейінірек оның анықтамасы ортақ көпөлшемді ақпаратты жылдам талдау мүмкіндігін қамтамасыз ету үшін OLAP қолданбасын қажет ететін FASMI тестіне қайта өңделді ().

FASMI сынағы

Жылдам(Жылдам) – талдау ақпараттың барлық аспектілері бойынша бірдей жылдам жүргізілуі керек. Қолайлы жауап беру уақыты 5 секунд немесе одан аз.

талдау(Талдау) – сандық және негізгі түрлерін жүргізуге мүмкіндік болуы керек статистикалық талдау, қолданбаны әзірлеуші ​​алдын ала анықтайды немесе пайдаланушы ерікті түрде анықтайды.

бөлісті(Ортақ) - бірнеше пайдаланушы деректерге қол жеткізуі керек, ал құпия ақпаратқа қол жеткізуді бақылау керек.

Көпөлшемді(Көпөлшемді) OLAP-тың негізгі, ең маңызды сипаттамасы болып табылады.

ақпарат(Ақпарат) – қолданбаның кез келгеніне қол жеткізу мүмкіндігі болуы керек қажетті ақпарат, оның көлеміне және сақтау орнына қарамастан.

OLAP = Көпөлшемді көрініс = Текше

OLAP іскери ақпаратқа қол жеткізудің, қараудың және талдаудың ыңғайлы, жоғары жылдамдықты құралдарын ұсынады. Пайдаланушы оларды көп өлшемді текшелер (текшелер) түрінде ұйымдастыра отырып, табиғи, интуитивті деректер үлгісін алады. Көпөлшемді координаттар жүйесінің осьтері талданатын бизнес-процестің негізгі атрибуттары болып табылады. Мысалы, сату үшін бұл өнім, аймақ, сатып алушы түрі болуы мүмкін. Уақыт өлшемдердің бірі ретінде пайдаланылады. Осьтердің қиылысында – өлшемдер (Өлшемдер) – процесті сандық сипаттайтын мәліметтер – өлшемдер (Мечерлер) орналасады. Бұл бөліктермен немесе ақшалай түрде сату көлемі, қор қалдықтары, шығындар және т.б. болуы мүмкін. Ақпаратты талдайтын пайдаланушы текшені әртүрлі бағытта «қиып», қорытындыны (мысалы, жылдар бойынша) немесе, керісінше, егжей-тегжейлі (апта сайын) ала алады. ақпарат және талдау барысында оның ойына келетін басқа да манипуляцияларды орындау.

Суретте көрсетілген үш өлшемді текшедегі өлшемдер ретінде. 2, сату сомалары пайдаланылады, ал өлшем ретінде уақыт, өнім және дүкен пайдаланылады. Өлшемдер нақты топтастыру деңгейлерінде ұсынылған: өнімдер санат бойынша топтастырылған, дүкендер ел бойынша топтастырылған, транзакция уақыты айлар бойынша топтастырылған. Біраз уақыттан кейін топтастыру деңгейлерін (иерархиясын) толығырақ қарастырамыз.


Күріш. 2. Текше мысалы

Текшені «кесу».

Тіпті үш өлшемді текшені де қызықтыратын өлшемдердің мәндерін көруге болатындай етіп компьютер экранында көрсету қиын. Үш өлшемнен артық текшелер туралы не айта аламыз? Текшеде сақталған деректерді визуализациялау үшін, әдетте, күрделі иерархиялық жол және баған тақырыптары бар әдеттегі екі өлшемді, яғни кестелік көріністер пайдаланылады.

Текшенің екі өлшемді көрінісін оны бір немесе бірнеше осьтер (өлшемдер) бойынша «кесу» арқылы алуға болады: біз екі өлшемнен басқа барлық өлшемдердің мәндерін бекітеміз және біз кәдімгі екі өлшемді кестені аламыз . Кестенің көлденең осі (баған тақырыптары) бір өлшемді, тік осі (жол тақырыптары) басқа өлшемді, ал кесте ұяшықтары өлшем мәндерін білдіреді. Бұл жағдайда өлшемдер жиынтығы іс жүзінде өлшемдердің бірі ретінде қарастырылады - біз көрсету үшін не бір өлшемді таңдаймыз (содан кейін жолдар мен бағандардың тақырыптарына екі өлшемді орналастыра аламыз) немесе біз бірнеше өлшемді көрсетеміз (содан кейін бір кестенің осьтерінің өлшемдерінің атаулары, ал екіншісі - жалғыз «кесілмеген» өлшемнің мәні).

Суретке қараңыз. 3 - міне, бір өлшемге арналған текшенің екі өлшемді тілім - Бірлік сатылымы (сатылатын бөліктер) және екі "кесілмеген" өлшем - Дүкен (Дүкен) және Уақыт (Уақыт).


Күріш. 3. Бір өлшемге арналған екі өлшемді текше тілім

Суретте. 4 бір ғана "кесілмеген" өлшемді көрсетеді - Дүкен, бірақ ол бірнеше өлшемнің мәндерін көрсетеді - бірлікті сату (сатылған бөліктер), дүкендегі сатылымдар (сатылым сомасы) және дүкен құны (дүкен шығындары).


Күріш. 4. Бірнеше өлшемдерге арналған 2D текшені кесу

Текшенің екі өлшемді көрінісі екіден көп өлшемдер "кесілмеген" болып қалғанда да мүмкін болады. Бұл жағдайда «кесілген» текшенің екі немесе одан да көп өлшемдері кесінді осьтеріне (жолдар мен бағандар) орналастырылады - суретті қараңыз. 5.


Күріш. 5. Бір осьте бірнеше өлшемдері бар текшенің екі өлшемді кесіндісі

Тегтер

Өлшемдер бойымен «жетке қойылған» мәндер мүшелер немесе белгілер (мүшелер) деп аталады. Белгілер текшені «қию» үшін де, таңдалған деректерді шектеу (сүзу) үшін де пайдаланылады - «кесілмеген» өлшемде бізді барлық мәндер қызықтырмайды, бірақ олардың ішкі жиынында, мысалы, бірнеше қаланың үшеуі ондаған. Белгі мәндері 2D текше көрінісінде жол және баған тақырыптары ретінде пайда болады.

Иерархиялар мен деңгейлер

Белгілерді бір немесе бірнеше деңгейден тұратын иерархияларға біріктіруге болады. Мысалы, "Дүкен" (Дүкен) өлшемінің белгілері табиғи түрде деңгейлері бар иерархияға біріктірілген:

Ел (ел)

Штат (штат)

Қала (Қала)

Дүкен (дүкен).

Иерархия деңгейлеріне сәйкес АҚШ ("Ел" деңгейі) немесе Калифорния үшін ("штат" деңгейі) сатылымдары сияқты жиынтық мәндер есептеледі. Бір өлшемде бірнеше иерархияны жүзеге асыруға болады – уақыт бойынша айтыңыз: (Жыл, Тоқсан, Ай, Күн) және (Жыл, Апта, Күн).

OLAP қолданбалы архитектурасы

OLAP туралы жоғарыда айтылғандардың бәрі, шын мәнінде, деректердің көп өлшемді көрсетіліміне қатысты. Бір сөзбен айтқанда, соңғы пайдаланушы да, клиент пайдаланатын құралды әзірлеушілер де деректердің қалай сақталатынына мән бермейді.

OLAP қолданбаларындағы көп өлшемділікті үш деңгейге бөлуге болады:

  • Көпөлшемді деректерді ұсыну – көпөлшемді визуализация мен деректермен манипуляцияны қамтамасыз ететін соңғы пайдаланушы құралдары; көпөлшемді көрсету деңгейі деректердің физикалық құрылымынан абстракциялайды және деректерді көп өлшемді ретінде қарастырады.
  • Көпөлшемді өңдеу – көпөлшемді сұраныстарды құрастыруға арналған құрал (тіл) (бұл жерде дәстүрлі реляциялық SQL тілі жарамсыз) және осындай сұранысты өңдеп, орындай алатын процессор.
  • Көпөлшемді сақтау – көпөлшемді сұраныстарды тиімді орындауды қамтамасыз ететін деректерді физикалық ұйымдастыру құралдары.

Алғашқы екі деңгей барлық OLAP құралдарында міндетті болып табылады. Үшінші деңгей, кең қолданылғанымен, талап етілмейді, өйткені көпөлшемді көрсетуге арналған деректерді қарапайым реляциялық құрылымдардан да алуға болады; көпөлшемді сұрау процессоры бұл жағдайда көпөлшемді сұрауларды реляциялық ДҚБЖ орындайтын SQL сұрауларына аударады.

Арнайы OLAP өнімдері әдетте не көпөлшемді деректерді көрсету құралы, OLAP клиенті (мысалы, Microsoft корпорациясының Excel 2000 бағдарламасындағы жиынтық кестелері немесе Knosys ұсынған ProClarity) немесе көп өлшемді серверлік ДҚБЖ, OLAP сервері (мысалы, Oracle Express Server немесе Microsoft OLAP) болып табылады. қызметтер).

Көпөлшемді өңдеу қабаты әдетте OLAP клиентіне және/немесе OLAP серверіне орнатылады, бірақ оның таза түрінде оқшаулануы мүмкін, мысалы, Microsoft компаниясының жиынтық кесте қызметі компоненті.

Көпөлшемді мәліметтерді сақтаудың техникалық аспектілері

Жоғарыда айтылғандай, OLAP талдау құралдары деректерді тікелей мына жерден шығара алады қатынас жүйелері. Бұл тәсіл OLAP серверлері жетекші дерекқор жеткізушілерінің баға тізімдерінде болмаған кезде тартымдырақ болды. Бірақ бүгінде Oracle, Informix және Microsoft толыққанды OLAP серверлерін, тіпті өз желілерінде бағдарламалық жасақтаманың «хайуанаттар бағын» отырғызуды ұнатпайтын АТ менеджерлерін ұсынады. әртүрлі өндірушілер, негізгі дерекқор серверімен бірдей брендтің OLAP серверін сатып ала алады (дәлірек айтқанда, компания басшылығына сәйкес өтінішпен жүгініңіз).

OLAP серверлері немесе көп өлшемді дерекқор серверлері өздерінің көп өлшемді деректерін әртүрлі тәсілдермен сақтай алады. Бұл әдістерді қарастырмас бұрын, біз толтырғыштарды сақтау сияқты маңызды аспект туралы айтуымыз керек. Кез келген деректер қоймасында - кәдімгі де, көп өлшемді де - операциялық жүйелерден алынған егжей-тегжейлі деректермен қатар жиынтық көрсеткіштер (жиынтық көрсеткіштер, жиынтықтар) сақталады, мысалы, айлар бойынша, тауарлар санаттары бойынша сату көлемдерінің сомасы және т.б. . Агрегаттар сұрауды орындауды жылдамдату мақсатында ғана сақталады. Өйткені, бір жағынан, әдетте, сақтауда деректердің өте үлкен көлемі жинақталады, ал екінші жағынан, талдаушылар көп жағдайда егжей-тегжейлі емес, жалпылама көрсеткіштерге қызығушылық танытады. Ал егер бір жылдағы сатылым сомасын есептеу үшін әр жолы миллиондаған жеке сатылымдарды қорытындылау қажет болса, жылдамдық мүмкін болмас еді. Сондықтан көпөлшемді деректер қорына деректерді жүктегенде барлық жалпы көрсеткіштер немесе олардың бір бөлігі есептеледі және сақталады.

Бірақ, өзіңіз білетіндей, бәрін төлеу керек. Ал жиынтық деректерге сұрауларды өңдеу жылдамдығы үшін деректер көлемін және оларды жүктеуге кететін уақытты ұлғайту арқылы төлеуге тура келеді. Оның үстіне, көлемнің ұлғаюы сөзбе-сөз апатты болуы мүмкін - жарияланған бірінде стандартты сынақтар 10 МБ бастапқы деректерге арналған жиынтықтардың толық саны үшін 2,4 ГБ қажет, яғни деректер 240 есе өсті! Жиынтықтарды есептеу кезінде деректердің «ісінуінің» дәрежесі текше өлшемдерінің санына және осы өлшемдердің құрылымына, яғни өлшемнің әртүрлі деңгейлеріндегі «әкелер» мен «балалар» санының қатынасына байланысты. Кейде толтырғыштарды сақтау мәселесін шешу үшін қолданылады күрделі схемалар, бұл барлық ықтимал агрегаттардан алыс есептеу кезінде сұрауды орындау өнімділігін айтарлықтай арттыруға қол жеткізуге мүмкіндік береді.

Енді ақпаратты сақтаудың әртүрлі нұсқалары туралы. Егжей-тегжейлі деректер де, жиынтықтар да қатынастық немесе көп өлшемді құрылымдарда сақталуы мүмкін. Көпөлшемді сақтау деректерді кез келген өлшем бойынша жиынтықтардың бірдей жылдам есептеуін және әртүрлі көп өлшемді түрлендірулерді қамтамасыз ететін көп өлшемді массив ретінде қарастыруға мүмкіндік береді. Біраз уақыт бұрын OLAP өнімдері қатынасты немесе көп өлшемді жадты қолдады. Бүгінгі күні, әдетте, бір өнім сақтаудың осы екі түрін де, сондай-ақ үшінші түрі - аралас қамтамасыз етеді. Келесі шарттар қолданылады:

  • МОЛАП(Көпөлшемді OLAP) – егжей-тегжейлі деректер де, агрегаттар да көпөлшемді дерекқорда сақталады. Бұл жағдайда ең үлкен артықшылық алынады, өйткені көп өлшемді деректер реляциялық деректерді толығымен қамтиды.
  • ROLAP(Relational OLAP) - егжей-тегжейлі деректер бастапқыда олар "тұрған" жерде қалады - реляциялық деректер қорында; агрегаттар арнайы жасалған қызмет кестелерінде бір дерекқорда сақталады.
  • ХОЛАП(Гибридті OLAP) – толық деректер орнында қалады (қатысты деректер базасында), ал жиынтықтар көп өлшемді дерекқорда сақталады.

Бұл әдістердің әрқайсысының артықшылықтары мен кемшіліктері бар және оларды шарттарға байланысты пайдалану керек - деректер көлеміне, реляциялық ДҚБЖ қуатына және т.б.

Көпөлшемді құрылымдарда деректерді сақтау кезінде бар ықтимал проблемасақтауға байланысты «ісіну». бос мәндер. Ақыр соңында, егер орын өлшем белгілерінің барлық мүмкін комбинациялары үшін көп өлшемді массивте сақталса және шын мәнінде аз ғана бөлігі толтырылса (мысалы, бірқатар өнімдер тек аз ғана аймақтарда сатылады), онда олардың көпшілігі орын иеленсе де, текше бос болады. Қазіргі OLAP өнімдері бұл мәселені шешуге қабілетті.

Жалғасы бар. Болашақта жетекші өндірушілер шығаратын нақты OLAP өнімдері туралы айтатын боламыз.

Осы серияның алдыңғы мақаласында (№ 2'2005 қараңыз) біз аналитикалық қызметтердің негізгі жаңалықтары туралы айттық. SQL сервері 2005. Бүгін біз осы өнімге кіретін OLAP шешімдерін жасауға арналған құралдарды егжей-тегжейлі қарастырамыз.

OLAP негіздері туралы қысқаша

OLAP шешімдерін құру құралдары туралы әңгімені бастамас бұрын, OLAP (On-Line Analytical Processing) - бұл күрделі көпөлшемді деректерді талдау технологиясы екенін еске түсірейік, оның тұжырымдамасын 1993 жылы атақты авторы Э.Ф. Кодд сипаттаған. реляциялық деректер моделі. Қазіргі уақытта OLAP қолдауы көптеген ДҚБЖ және басқа құралдарда жүзеге асырылады.

OLAP текшелері

OLAP деректері дегеніміз не? Бұл сұраққа жауап беру үшін қарапайым мысалды қарастырыңыз. Белгілі бір кәсіпорынның корпоративтік деректер базасында тауарларды немесе қызметтерді сату туралы ақпаратты қамтитын кестелер жиынтығы бар және олардың негізінде Ел (ел), Қала (қала) өрістерімен Шот-фактуралар көрінісі жасалды делік. Тұтынушының аты (клиент компаниясының аты), сатушы (сату бойынша менеджер), тапсырыс күні (тапсырыс күні), санат атауы (өнім санаты), өнім атауы (өнім атауы), жөнелтуші атауы (тасымалдаушы компания), кеңейтілген баға (өнім үшін төлем), ал тізімделген өрістердің соңғысы, шын мәнінде, талдау объектісі болып табылады.

Мұндай көріністен деректерді таңдауды келесі сұрау арқылы жасауға болады:

Елді, қаланы, тұтынушының атын, сатушыны,

Тапсырыс күні, санат атауы, өнім атауы, жөнелтуші аты, кеңейтілген баға

шот-фактуралардан

Бізді әртүрлі елдерден келген тұтынушылардың тапсырыстарының жалпы құны қандай болатыны қызықтырады делік. Бұл сұраққа жауап алу үшін келесі сұрауды жасау керек:

Шот-фактуралардан елді, SUM (ExtendedPrice) ТАҢДАҢЫЗ

ЕЛ БОЙЫНША ТОПТАУ

Бұл сұраудың нәтижесі жиынтық деректердің бір өлшемді жинағы болады (бұл жағдайда қосындылар):

Ел SUM (ұзартылған баға)
Аргентина 7327.3
Австрия 110788.4
Бельгия 28491.65
Бразилия 97407.74
Канада 46190.1
Дания 28392.32
Финляндия 15296.35
Франция 69185.48
209373.6
...

Егер біз әртүрлі елдерден келген тұтынушылар орналастырған және әртүрлі жеткізу қызметтерімен жеткізілген тапсырыстардың жалпы құны қанша екенін білгіміз келсе, GROUP BY тармағында екі параметрді қамтитын сұрауды орындауымыз керек:

шот-фактуралардан елді, жөнелтушінің атын, СУММ (кеңейтілген баға) ТАҢДАҢЫЗ

ЕЛ БОЙЫНША ТОПТАУ, Жөнелтуші аты

Осы сұраудың нәтижелері бойынша келесідей кесте құруға болады:

Мұндай деректер жиыны жиынтық кесте деп аталады.

шот-фактуралардан елді, жөнелтуші атын, сатушы сомасын (кеңейтілген баға) ТАҢДАҢЫЗ

ЕЛ БОЙЫНША ТОПТАУ, Жөнелтуші аты, Жыл

Осы сұраудың нәтижелері бойынша үш өлшемді текшені құрастыруға болады (Cурет 1).

Талдау үшін қосымша параметрлерді қосу арқылы OLAP текшесінің ұяшықтарындағы қосындылармен бірге басқа жиынтық функцияларды (мысалы, орташа мәндер, максимум, ең аз мәндер, сәйкес келетін бастапқы көріністің жазбаларының саны бұл жиынтықпараметрлер). Нәтижелер есептелетін өрістер текше өлшемдер деп аталады.

Өлшемдердегі иерархиялар

Бізді тұтынушылардың тапсырыстарының жалпы құны ғана қызықтырмайды делік әртүрлі елдер, сонымен қатар бір елдің әртүрлі қалаларында тұтынушылар орналастырған тапсырыстардың жалпы құны. Бұл жағдайда осьтерге қолданылатын мәндердің егжей-тегжейлі деңгейлері әртүрлі болатынын пайдалана аласыз - бұл өзгерістер иерархиясы тұжырымдамасында сипатталған. Елдер иерархияның бірінші деңгейінде, қалалар екінші деңгейде делік. SQL Server 2000 нұсқасынан бастап, талдау қызметтері, мысалы, иерархияның көрші деңгейлерінде емес немесе кейбір өзгерту мүшелері үшін жетіспейтін мүшелерді қамтитын теңгерімсіз иерархияларды қолдайтынын ескеріңіз. Мұндай иерархияның типтік мысалы әртүрлі елдерде мемлекеттер мен қалалар арасындағы географиялық иерархияда орналасқан мемлекет немесе аймақ сияқты әкімшілік-аумақтық бірліктердің болуы немесе болмауы мүмкін екендігін ескеру болып табылады (2-сурет).

Жақында, мысалы, географиялық немесе уақытша деректерді қамтитын типтік иерархияларды бөліп алу, сондай-ақ бір өлшемде бірнеше иерархиялардың болуын қолдау (атап айтқанда, күнтізбелік және қаржылық жыл үшін) әдеттегі тәжірибеге айналғанын ескеріңіз.

SQL Server 2005 жүйесінде OLAP текшелерін жасау

SQL Server 2005 текшелері SQL Server Business Intelligence Development Studio бағдарламасы арқылы жасалады. Бұл құрал арнайы нұсқа болып табылады визуалды студия 2005, осы сыныптағы мәселелерді шешуге арналған (және орнатылған әзірлеу ортасы болған жағдайда, жоба үлгілерінің тізімі шешімдерді жасауға арналған жобалармен толықтырылады. SQL негізінде Sever және оның аналитикалық қызметтері). Атап айтқанда, Analysis Services жобасының үлгісі (3-сурет) аналитикалық қызметтерге негізделген шешімдерді жасауға арналған.

OLAP текшесін жасау үшін алдымен оны қалыптастыру үшін қандай деректер негізінде шешім қабылдау керек. Көбінесе OLAP текшелері жұлдыз немесе снежинка схемалары бар реляциялық деректер қоймалары негізінде құрастырылады (біз олар туралы мақаланың алдыңғы бөлігінде айтқанбыз). SQL тарату пакетінде мұндай репозиторийдің мысалы бар - AdventureWorksDW дерекқоры, оны пайдалану үшін дереккөз ретінде Solution Explorer бағдарламасында Деректер көздері қалтасын тауып, Жаңа деректер көзі контекстік мәзір элементін таңдап, сұрақтарға дәйекті түрде жауап беру керек. сәйкес шебер (Cурет 4).

Содан кейін деректер көзі көрінісін жасау ұсынылады - текше жасалатын көрініс. Ол үшін Деректер көзі көріністері қалтасының контекстік мәзірінен сәйкес элементті таңдап, шебердің сұрақтарына ретімен жауап беріңіз. Бұл әрекеттердің нәтижесі деректер схемасы болады, оның көмегімен деректер көздерінің көрінісі құрастырылады, ал алынған схемада түпнұсқалардың орнына кесте атауларын «жақсы» көрсетуге болады (5-сурет). .

Осылайша сипатталған текшені аналитикалық қызметтер серверіне жобаның мәтінмәндік мәзірінен Қолдану опциясын таңдау және оның деректерін қарау арқылы тасымалдауға болады (Cурет 7).

Текшелерді жасау кезінде қазіргі уақытта көптеген мүмкіндіктер пайдаланылады жаңа нұсқасыДеректер көздерінің көрінісі сияқты SQL сервері. Текшені құруға арналған бастапқы деректердің сипаттамасы, сондай-ақ текше құрылымының сипаттамасы қазір көптеген әзірлеушілерге таныс Visual Studio құралының көмегімен жасалған, бұл осы өнімнің жаңа нұсқасының маңызды артықшылығы - зерттеу бұл жағдайда жаңа құралдарды әзірлеушілердің аналитикалық шешімдері барынша азайтылады.

Жасалған текшеде өлшемдердің құрамын өзгертуге, өлшем төлсипаттарын жоюға және қосуға және бар төлсипаттарға негізделген өлшем мүшелерінің есептелген атрибуттарын қосуға болатынын ескеріңіз (Cурет 8).

Күріш. 8. Есептелген төлсипатты қосу

Бұған қоса, SQL Server 2005 текшелерінде өлшем мүшелерін төлсипат мәні бойынша автоматты түрде топтастыруға немесе сұрыптауға, атрибуттар арасындағы қатынастарды анықтауға, көптен көпке қатынасты жүзеге асыруға, негізгі бизнес көрсеткіштерін анықтауға және басқа да көптеген тапсырмаларды орындауға болады (осылардың барлығын қалай көрсететіні туралы мәліметтер) орындалатын қадамдарды SQL Server Analysis Services оқулығында табуға болады көмек жүйесібұл өнім).

Осы жарияланымның келесі бөлімдерінде біз SQL Server 2005 аналитикалық қызметтерімен танысуды жалғастырамыз және Data Mining қолдау саласындағы жаңалықтарды білеміз.

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл мақала пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
Рақмет сізге. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны таңдаңыз, басыңыз Ctrl+Enterжәне біз оны түзетеміз!