SELECT Invoices. Country, In voices. City, Invoices. Customers. CompanyName AS CustomerName, In voices.Salesperson, Invoices. OrderDate, Categories. CategoryName,
Invoices.ProductName,
Invoices.Shippers. CompanyName AS
ShipperName,Invoices.ExtendedPrice FROM Categories INNER JOIN (Invoices INNER JOIN Products ON Invoices.ProductID = Products.ProductID) ON Categories.CategorylD = Products. CategorylD;
|
Бұл сұрау барлық жазылған шоттар туралы мәліметтерді қамтитын Invoices көрінісіне, сондай-ақ тапсырыс берілген өнім санаттары және сәйкесінше өнімдердің өздері туралы мәліметтерді қамтитын санаттар мен өнімдер кестелеріне сілтеме жасайды. Осы сұраудың нәтижесінде біз тапсырыс берілген тауардың санаты мен атауын, тапсырыс берілген күнді, шот-фактураны жазған қызметкердің атын, қаланы, елді және Тапсырыс беруші компанияның атауын және жеткізілімге жауапты компанияның атауын қамтитын тапсырыс туралы мәліметтер жиынтығын аламыз.
Ыңғайлы болу үшін біз бұл сұрауды invoices 1 деп атай отырып, көрініс ретінде сақтаймыз. Бұл ұсынысқа жүгінудің нәтижесі суретте көрсетілген. 1
Сурет. 1. Invoices 1 көрінісіне жүгіну нәтижесі
Осы көрініс негізінде қандай жиынтық деректерді ала аламыз? Әдетте бұл сұрақтарға жауаптар:
1. Франциядан келген клиенттер жасаған тапсырыстардың жалпы құны қандай?
2. Франциядан келген клиенттер жасаған және Speedy Express жеткізген тапсырыстардың жалпы құны қандай?
3. 1997 жылы Франциядан келген клиенттер жасаған және Speedy Express жеткізген тапсырыстардың жалпы құны қандай?
Біз бұл сұрақтарды SQL тіліндегі сұрауларға аударамыз.
Жоғарыда аталған сұраулардың кез келгенінің нәтижесі Сан болып табылады. Егер сұраулардың біріншісінде 'France' параметрін 'Austria' немесе басқа елдің атауымен ауыстырсаңыз, бұл сұрауды қайтадан орындап, басқа нөмірді алуға болады. Бұл процедураны барлық елдермен орындағаннан кейін біз келесі мәліметтер жиынтығын аламыз (төменде фрагмент көрсетілген):
Алынған жиынтық мәндер жиынтығын (бұл жағдайда қосындылар) бір өлшемді мәліметтер жиынтығы ретінде түсіндіруге болады.
Енді жоғарыдағы сұраулардың екіншісіне жүгінейік, онда WHERE сөйлемінде екі шарт бар. Егер сіз осы сұранысты орындасаңыз, оған country және ShipperName параметрлерінің барлық мүмкін мәндерін ауыстырсаңыз, біз келесі түрдегі екі өлшемді деректер жиынтығын аламыз (төменде фрагмент көрсетілген):
Мұндай мәліметтер жиынтығы жиынтық кесте (pivottable) немесе кросс-кесте (cross table, crosstab) деп аталады.
Жоғарыда қарастырылған сұраулардың үшіншісінде WHERE жағдайында үш параметр бар. Оларды өзгерту арқылы біз үш өлшемді мәліметтер жиынтығын аламыз (сурет. 2).
Сурет. 2. Үш өлшемді жиынтық деректер жиынтығы
Суретте көрсетілген текше ұяшықтары. 2, текше осьтерінде орналасқан WHERE сөйлеміндегі сұрау параметрлерінің мәндеріне сәйкес келетін жиынтық деректерді қамтиды. Екі өлшемді кестелер жиынтығын текшенің қимасы арқылы оның беттеріне параллель жазықтықтармен алуға болады (оларды белгілеу үшін cross-sections және slices терминдері қолданылады).
Текше ұяшықтарындағы деректерді GROUP by ұсынысымен сәйкес сұрау арқылы алуға болатыны анық. Сонымен қатар, кейбір электрондық кестелер (атап айтқанда, Microsoft Excel 2000) үш өлшемді деректер жиынтығын құруға және жұмыс кітабының парағында (workbook) суреттелген оның бетіне параллель текшенің әртүрлі қималарын көруге мүмкіндік береді.
Егер WHERE сөйлемінде төрт немесе одан да көп параметрлер болса, нәтижесінде алынған мәндер жиынтығы (OLAP текшесі деп те аталады) 4 өлшемді, 5 өлшемді және т. б. болуы мүмкін.
Сомалармен қатар OLAP-текше ұяшықтарында MIN, MAX, AVG, COUNT сияқты басқа| SQL агрегаттық функцияларын орындау нәтижелері, ал кейбір жағдайларда— басқалары (дисперсиялар, орташа квадраттық ауытқулар және т.б.) болуы мүмкін. Ұяшықтардағы деректер мәндерін сипаттау үшін summary термині қолданылады (жалпы алғанда, бір текшеде олардың бірнешеуі болуы мүмкін), олар есептелетін бастапқы деректерге сілтеме жасау үшін-measure термині, ал Сұрау параметрлеріне сілтеме жасау үшін-dimension термині (орыс тіліне аударғанда әдетте "өлшем" деп аударылады OLAP-текшелер, және деректер қоймаларына қатысты "өлшем" ретінде). Осьтерге қойылған мәндер Өлшем мүшелері (мүшелер) деп аталады.
Өлшемдер туралы айтатын болсақ, осьтерге қолданылатын мәндердің егжей-тегжейлердің әртүрлі деңгейлері болуы мүмкін екенін атап өткен жөн. Мысалы, бізді әр түрлі елдердегі клиенттер жасаған тапсырыстардың жалпы құны немесе қала сыртындағы клиенттер немесе тіпті жеке клиенттер жасаған тапсырыстардың жалпы құны қызықтыруы мүмкін. Әрине, екінші және үшінші жағдайларда алынған жиынтық деректер жиынтығы біріншіге қарағанда егжей-тегжейлі болады.
Деректерді сақтаудың типтік құрылымы
OLAP-ті қолданудың түпкі мақсаты-деректерді талдау және осы талдаудың нәтижелерін қабылдау мен шешім қабылдауға ыңғайлы түрде ұсыну. OLAP-тың негізгі идеясы-тапсырыс бойынша сұраулар үшін қол жетімді болатын көп өлшемді текшелерді құру. Деректер қоймасының типтік құрылымы әдеттегі реляциялық ДҚБЖ құрылымынан айтарлықтай ерекшеленеді. Әдетте, бұл құрылым қалыпқа келтірілмеген (бұл сұраныстардың жылдамдығын арттыруға мүмкіндік береді), сондықтан ол деректердің артық болуына мүмкіндік береді.
Қосымша мысалдар үшін біз Microsoft SQL Server және Microsoft Access жеткізілімдерінің бөлігі болып табылатын northwind дерекқорын қайтадан қолданамыз. Оның деректер құрылымы суретте көрсетілген. 3.
Сурет. 3. Northwind дерекқорының құрылымы
Деректер қоймасы құрылымының негізгі компоненттері фактілер кестесі (fact table) және өлшеу кестелері (dimension tables) болып табылады.
Фактілер кестесі
Фактілер кестесі-деректерді сақтаудың негізгі кестесі. Онда жиынтығы одан әрі талданатын объектілер немесе оқиғалар туралы ақпарат бар.
Фактілер кестесінде Өлшем кестелерінің бастапқы кілттерін біріктіретін бірегей құрама кілт болады. Көбінесе бұл бүтін мәндер немесе "күн/уақыт" сияқты мәндер. Сонымен қатар, негізгі, мак және кейбір негізгі емес өрістер OLAP текшесінің болашақ өлшемдеріне сәйкес келуі керек. Сонымен қатар, фактілер кестесінде бір немесе бірнеше сандық өрістер бар, олардың негізінде болашақта жиынтық мәліметтер алынады.
Northwind дерекқорына негізделуі мүмкін фактілер кестесінің мысалы суретте келтірілген. 4.
Сурет. 4. Фактілер кестесінің мысалы
Бұл мысалда болашақ текшенің өлшемдері алғашқы алты өріске, ал жиынтық мәліметтер соңғы төрт өріске сәйкес келеді.
Мүмкіндігінше егжей-тегжейлі деректерді қамтитын фактілер кестелері көпөлшемді талдау үшін жарамды (яғни тиісті өлшемдер иерархиясының төменгі деңгейлерінің мүшелеріне сәйкес келеді). Бұл жағдайда әр түрлі елдер үшін сату сомаларын емес, жеке тапсырыс берушілерге тауарларды сату фактілерін негізге алған жөн — соңғысы OLAP-құралмен есептеледі. Деректер кестесінде агрегаттық деректерді есептеу кезінде жазбаларды қалай топтастыру туралы ақпарат жоқ екенін ескеріңіз. Мысалы, онда өнім немесе тұтынушы идентификаторлары бар, бірақ бұл өнім қай санатқа жататыны немесе осы тұтынушы қай қалада екендігі туралы ақпарат жоқ. Болашақта текше өлшемдерінде иерархияларды құру үшін қолданылатын бұл мәліметтер өлшеу кестелерінде қамтылған.
Өлшеу кестелері
Өлшеу кестелерінде өзгермейтін немесе сирек өзгеретін деректер бар. Көп жағдайда бұл деректер өлшемдегі иерархияның төменгі деңгейінің әрбір мүшесі үшін бір жазба болып табылады. Өлшеу кестелерінде кем дегенде бір сипаттамалық өріс (әдетте Өлшем мүшесінің аты бар) және әдетте Өлшем мүшесін бір мәнді анықтау үшін бүтін кілт өрісі (әдетте суррогат кілті) болады. Егер берілген өлшем кестесіне негізделген болашақ өлшемде иерархия болса, онда өлшеу кестесінде осы иерархиядағы берілген мүшенің "ата-анасын" көрсететін өрістер де болуы мүмкін. Өлшеу кестесінде осы иерархиядағы "ата-бабаларды" және басқа "ата-бабаларды" көрсететін өрістер, сондай-ақ бастапқы операциялық дерекқорда қамтылған Өлшем мүшелерінің қосымша атрибуттары (мысалы, клиенттердің мекенжайлары мен телефондары) болуы мүмкін.
Әрбір өлшем кестесі фактілер кестесімен "көпке" қатысты болуы керек.
Өлшеу кестелерінің өсу қарқыны фактілер кестесінің өсу қарқынымен салыстырғанда шамалы болуы керек екенін ескеріңіз; мысалы, тауарларды сипаттайтын өлшеу кестесіне жаңа жазба қосу бұрын сатылмаған жаңа тауар пайда болған кезде ғана жасалады. Өлшеу кестесінің мысалы суретте келтірілген. 5.
Сурет. 5. Өлшеу кестесінің мысалы
Текшенің бір өлшемі бір кестеде де (оның ішінде бірнеше иерархия деңгейлері болған кезде) де, өлшемдегі әртүрлі иерархия деңгейлеріне сәйкес келетін бірнеше байланысты кестелерде де болуы мүмкін. Егер әр өлшем бір кестеде болса, мұндай деректерді сақтау схемасы "жұлдыз" (star schema) деп аталады.
Егер бірнеше байланысты кестелерде кем дегенде бір өлшем болса, мұндай деректерді сақтау схемасы "снежинка" (snowflake schema) деп аталады. Мұндай схемадағы қосымша өлшем кестелері, әдетте өлшеу иерархиясының жоғарғы деңгейлеріне сәйкес келеді және иерархияның төменгі деңгейіне сәйкес келетін негізгі өлшем кестесіндегі "бір-көп" қатынасында кейде консольдық кестелер (outrigger table) деп аталады.
Деректер қоймасына сұраныстардың орындалу жылдамдығын арттыру үшін иерархиялық өлшеулер болған кезде де "жұлдыз"схемасына артықшылық берілетінін ескеріңіз.
Көпөлшемді деректерді сақтаудың техникалық аспектілері
Көпөлшемді деректер қоймаларында әр түрлі дәрежедегі жиынтық мәліметтер бар, мысалы, күндер, айлар, жылдар, тауарлар санаттары бойынша сату көлемі және т.б. агрегаттық деректерді сақтаудың мақсаты сұраныстардың орындалу уақытын қысқарту болып табылады, өйткені көп жағдайда талдау мен болжау үшін егжей— тегжейлі емес, жиынтық деректер қызықты. Сондықтан көпөлшемді мәліметтер базасын құру кезінде кейбір жиынтық деректер әрдайым есептеледі және сақталады.
Бастапқы және жиынтық деректерді реляциялық немесе көп өлшемді құрылымдарда сақтауға болады. Қазіргі уақытта деректерді сақтаудың үш әдісі қолданылады:
* MOLAP (Multidimensional OLAP) - бастапқы және агрегаттық деректер көп өлшемді дерекқорда сақталады. Деректерді көп өлшемді құрылымдарда сақтау деректерді көп өлшемді массив ретінде басқаруға мүмкіндік береді, осылайша агрегаттық мәндерді есептеу жылдамдығы кез келген өлшем үшін бірдей болады. Алайда, бұл жағдайда көпөлшемді мәліметтер базасы артық болып шығады, өйткені көпөлшемді мәліметтер бастапқы реляциялық деректерді толығымен қамтиды.
* ROLAP (Relational OLAP) — бастапқы деректер бастапқыда болған реляциялық мәліметтер базасында қалады. Агрегаттық деректер оларды сақтау үшін арнайы құрылған қызметтік кестелерге сол дерекқорға орналастырылады.
* HOLAP (Hybrid OLAP) — бастапқы деректер бастапқыда орналасқан реляциялық дерекқорда қалады және жиынтық деректер көп өлшемді дерекқорда сақталады.
OLAP-Microsoft Analysis Services сервері. Аналитикалық қызметтердің сипаттамасы.
Microsoft Analysis Services-Microsoft SQL Server 2000 Enterprise Edition жиынтығына кіретін және бүгінгі күнге дейін талдаушылар Gartner Group осы сыныптың ең танымал өнімдерінің бірі ретінде танылған Microsoft корпорациясының Data Mining деректерін талдау және алу мүмкіндіктері бар OLAP сервері.
Аналитикалық қызметтердің негізгі компоненті — analysis Server-Windows NT / 2000 операциялық жүйесінің қызметі. Бұл сервер реляциялық деректер қоймаларына негізделген OLAP текшелерін құруға, сондай-ақ оларға клиенттік қосымшалардан қол жеткізуге мүмкіндік береді..
Теориялық тұрғыдан алғанда, Microsoft аналитикалық қызметтері арқылы жасалған OLAP текшесінде Өлшем иерархиясының жоғарғы деңгейлеріне сәйкес келетін осы кестедегі жазбалар топтары үшін барлық деректер мен жиынтық мәндер болуы мүмкін. Қажет болса, егер фактілер кестесіне жаңа жазбалар қосылса, текшені динамикалық жаңартуға болады, сонымен қатар иерархияның төменгі деңгейлерінен алынған деректер текшенің өзінде сақталатынын, бұл Multidimensional OLAP деректерін сақтау әдісіне сәйкес келетінін немесе деректер қоймасының фактілер кестесінен оқылатынын таңдауға болады.Аналитикалық қызметтер агрегаттық деректерді тек қарапайым агрегаттық функциялар үшін сақтайды (қосындылар, жазбалар саны, максималды және минималды мәндер). Алайда, қажет болған жағдайда агрегаттық мәндердің басқа түрлерін (орташа, орташа өлшенген ,мещысқан жәнемещыспаған дисперсиялар және т.б.) алу үшін есептелетін терминдер (есептелген мүшелер) құруға болады. Сонымен қатар, біріктірілген деректерді құрудың кіріктірілген құралдарын қолданумен қатар, Analysis Services жиынтық деректерді есептеу үшін VBA немесе Excel функцияларын пайдалануға, сондай-ақ меншікті құруға мүмкіндік береді. Сонымен, бірдей өлшемдері бар бірнеше текшелерді құру үшін оларды бір көп өлшемді мәліметтер базасына топтастыруға болады және бұл өлшемдерді кітапханаға (кітапханаға) орналастыруға болады, бұл оларды ұжымдық етеді, яғни мәліметтер базасындағы барлық текшелер үшін жалпыға қол жетімді етеді (ортақ өлшемдер). Сондай-ақ, тек бір текшеге (private dimensions) тиесілі өлшемдерді жасауға болады.
Сонымен, Microsoft аналитикалық қызметтері белгілі бір дәрежеде реляциялық ДҚБЖ көріністерінің (view) аналогтары болып табылатын виртуалды текшелер (virtual cubes) деп аталатындарды жасауға мүмкіндік береді. Виртуалды текшелерде деректер жоқ, бірақ кем дегенде бір жалпы ұжымдық өлшемі бар бірнеше текшелерден алынған деректерді бір текше түрінде ұсынуға мүмкіндік береді.
Аналитикалық қызмет пайдаланушыларын шартты түрде екі топқа бөлуге болады: OLAP текшелерін жасайтын немесе өзгертетін әкімшілер және аналитикалық есептерді жасау мақсатында OLAP текшелерінен деректерді оқитын қарапайым аналитикалық пайдаланушылар. Бұл топтар OLAP деректеріне қол жеткізудің әртүрлі технологияларын қолданады.
SQL DSO
Decision Support Objects (DSO) — бұл көп өлшемді мәліметтер базасын және ондағы объектілерді (текшелер, ұжымдық өлшемдер және т.б.) құруға және өзгертуге мүмкіндік беретін сом объектілері бар кітапханалар жиынтығы. Analysis Manager — SQL DSO қолданатын қосымша-аналитикалық қызметтердің бөлігі. Бұл кітапханаларды көпөлшемді мәліметтер базасын құру немесе өзгерту жүзеге асырылатын жеке қосымшаларды әзірлеу үшін, соның ішінде аналитикалық қызметтердің құрамына кіретін клиенттік утилиталарда қарастырылмаған әрекеттерді жүзеге асыру үшін пайдалануға болады (сурет. 6)
Сурет. 6. SQL DSO қолданатын қосымша
SQL DSO тек Microsoft аналитикалық қызметтеріне қол жеткізу үшін пайдаланылуы мүмкін. Осы кітапханалардың көмегімен басқа OLAP серверлеріне жүгінуге болмайды.
PivotTable Service, OLE DB for OLAP және ADO MD
OLAP деректерін оқуға арналған қосымшалар аналитикалық қызметтермен өзара әрекеттесу кезінде PivotTable Service — клиенттік қосымшаның мекен-жай кеңістігіне жүктелетін кітапханаларды қолдануы керек. Бұл кітапханалар автоматты түрде аналитикалық қызметтермен (олардың қай бөлігі орнатылғанына қарамастан — клиенттік немесе серверлік) және Microsoft Office 2000-мен бірге орнатылады. Microsoft SQL Server 2000 құрамына аналитикалық қызметтер де, Microsoft Office те орнатылмаған компьютерге PivotTable Service орнатуға арналған инсталляциялық қосымша кіреді.
PivotTable Service Windows жүйесінің кез келген 32 биттік нұсқасында серверлік OLAP текшелерін көру үшін, сондай-ақ клиенттік OLAP функционалдығын жүзеге асыра отырып, клиенттік қолданбада жасалған жергілікті OLAP текшелерін жасау, өзгерту және оқу үшін пайдаланылуы мүмкін. Бұл кітапханалар OLAP серверінен де, реляциялық деректер көздерінен де алынған деректерді клиенттік қосымшада кэштеуді жүзеге асырады. Сонымен қатар, олар OLAP серверінде деректерді кэштеуге мүмкіндік береді, осылайша бірнеше пайдаланушылардың бірдей деректеріне қол жеткізген жағдайда онымен жұмыс өнімділігін арттырады.
PivotTable Service-пен өзара әрекеттесу үшін клиенттік қолданба OLE DB for OLAP — көпөлшемді деректерге қол жеткізуге мүмкіндік беретін OLE DB деректеріне қол жеткізудің әмбебап механизмін кеңейтуді, сондай — ақ OLE DB for OLAP үстіндегі қондырма болып табылатын ADO MD кітапханаларын пайдалана алады және клиенттерде қолдануға ыңғайлы көпөлшемді деректерге қол жеткізу үшін СОМ серверлері болып табылады қосымшалар.
OLE DB for OLAP спецификациясы ашық екенін ескеріңіз. Бұл OLAP үшін OLE DB қолдайтын басқа OLAP серверлерін (немесе бұрыннан бар OLAP құралдарына OLE DB провайдерлерін әзірлеуге), сондай-ақ PivotTable Service, OLE DB for OLAP және ADO MD көмегімен кез келген осындай деректер көздеріне қол жеткізетін клиенттік қолданбаларды жасауға болатынын білдіреді.
Analysis Manager
Analysis Manager-бұл аналитикалық қызметтердің бөлігі және негізінен OLAP дерекқор әкімшілеріне арналған утилита. Analysis Manager құрамында OLE DB for OLAP деректеріне қол жеткізу үшін пайдаланылатын ActiveX басқару элементі болып табылатын көпөлшемді деректерді қараудың қарапайым құралы бар.
Analysis Manager SQL DSO кітапханаларын бастапқы реляциялық деректер қоймаларына қол жеткізу үшін көп өлшемді дерекқор объектілерін және OLE DB жасау және өзгерту үшін пайдаланады. Көпөлшемді деректерге қол жеткізуге келетін болсақ, біз қайталаймыз, Analysis Manager осы мақсат үшін OLE DB for OLAP пайдаланады.
Microsoft Office Қосымшалары
Аналитикалық қызметтерге кірмейтін, бірақ OLAP текшелерін көру үшін жиі қолданылатын басқа клиенттік қосымшалардың ішінде Microsoft Office қосымшалары, атап айтқанда Microsoft Excel деп аталуы керек. Excel көмегімен серверлік OLAP текшелеріне олардың екі және үш өлшемді қималарын Excel жұмыс кітабының парақтарында Жиынтық кестелер түрінде алуға, сондай - ақ OLE DB көмегімен қол жетімді реляциялық деректерге негізделген файлдар түрінде жергілікті OLAP текшелерін жасауға болады).
Сонымен қатар, Microsoft Office Web Components құрамына ActiveX PivotTable List басқару элементі кіреді, бұл қарапайым Windows қосымшасында да, корпоративті желіде қолдануға арналған HTML парағында да ұқсас функционалдылықты жүзеге асыруға мүмкіндік береді.
Деректерді түрлендіру қызметтері
OLAP текшелері үшін Деректер көзі әдетте реляциялық деректер қоймасы болып табылады. Аналитикалық қызметтердің өзінде пайдаланушылар жұмыс істейтін жедел деректер базасынан алынған деректермен реляциялық қойманы толықтыруға қаражат жоқ. Алайда, мұндай құралдарда көптеген заманауи серверлік ДҚБЖ бар. Атап айтқанда, Microsoft SQL Server-де деректерді бір реляциялық ДҚБЖ-дан екіншісіне тасымалдау құралдары, оларды түрлендіру мүмкіндігі бар, оларды деректер қоймаларын толтыру үшін де қолдануға болады, деректерді түрлендіру қызметтері (Data Transformation Services, DTS) деп аталады. Деректерді түрлендіру қызметтерін тек Microsoft SQL серверімен ғана емес, сонымен қатар OLE DB деректеріне қол жеткізудің әмбебап механизмі арқылы қол жетімді кез келген басқа деректер көздерімен де пайдалануға болады. Айта кетейік, DTS қосымша кеңейту модульдерін (plug-ins) пайдалануға мүмкіндік береді және аналитикалық қызметтердің құрамына OLAP текшелерін жаңартуға мүмкіндік беретін осындай кеңейтімдердің бірі кіреді.
Деректер қоймаларын құру
Жедел мәліметтер базасы ретінде біз Excel жұмыс кітабына негізделген мәліметтер базасын қолданамыз. Оның негізінде біз "жұлдыз" схемасын қолдана отырып, мәліметтер қоймасын құрамыз. Бұл қойманың шамамен деректер құрылымы суретте көрсетілген. 7.
Дегенмен, сақтауды жобалау және сәйкес құрылымның дерекқорын жасау — деректер қоймасын құрудың алғашқы қадамы ғана. Әрі қарай, біз осы қойманың кестелері операциялық Дерекқордың ағымдағы күйіне сәйкес деректермен толтырылғанына көз жеткізуіміз керек.
Деректер қоймасын data Transformation Services көмегімен толтыру
Data Transformation Services (DTS) — бұл OLE DB интерфейстері арқылы қол жетімді кез келген көздер арасында деректерді импорттауды, экспорттауды, түрлендіруді және тасымалдауды ұйымдастыруға арналған SQL Server қызметтерінің жиынтығы. Олардың көмегімен сіз деректер құрылымын және деректердің өзін бір дерекқордан екіншісіне көшіре аласыз, қосымшаларға енгізілген деректерді тасымалдау құралдарын жасай аласыз, сонымен қатар әр түрлі көздерден алынған мәліметтер қоймаларын толықтыра аласыз (олар жалпы жағдайда SQL Server дерекқоры болмауы керек).
Деректер қоймасын толтыру үшін, әдетте, деректерді тасымалдау кезінде орындалатын барлық әрекеттердің (соның ішінде деректер түрлерін түрлендіру, SQL сұрауларын орындау және т.б.) реттілік сипаттамасын қамтитын DTS (DTS package) пакетін құру және орындау қажет. Мұндай пакетті SQL Server Enterprise Manager немесе dtsrun утилитасы арқылы орындауға болады, оны метадеректер қызметтерінде (Meta Data Services; SQL Server-дің бұрынғы нұсқаларында бұл қойма репозиторий деп аталды) немесе құрылымдық файл қоймасы ретінде сақтауға болады. Сәйкес SQL DMO нысандарының қасиеттері мен әдістерін қолдана отырып, DTS пакеттерін бағдарламалық қамтамасыз ету де мүмкін-бұл үшін Visual BASIC тілінде кодты автоматты түрде жасауға болады. SQL Server 2000 сонымен қатар DTS пакеттерін XML форматында сақтау мүмкіндігін қолдайды.
Төменде Excel жұмыс кітабына негізделген жедел дерекқордан деректерді толтыратын DTS пакетін құру процесі қарастырылады.
Деректер көздерінің сипаттамасы
DTS пакетін тиісті редактордың көмегімен жасауға болады-DTS package editor. Оны іске қосу үшін SQL Server Enterprise Manager көмегімен деректер қоймасы бар серверге қосылып, data Transformation Services бөлімінде meta data service packages элементін тауып, суретте көрсетілгендей оның контекстік мәзірінен жаңа бума опциясын таңдау керек. 8.
Әрі қарай, біздің сақтау орны орналасқан дерекқорды сипаттау қажет. Ол үшін DTS пакет редакторының жұмыс кеңістігіне пиктограмма көшіру керек
Microsoft OLE DB provider for SQL Server редактор терезесінің сол жағындағы data tool палитрасынан (сурет. 9).
Осыдан кейін Connection Properties диалогтық тақтасы пайда болады (сурет. 10) дерекқорды таңдау қажет OLE DB деректер көздерін сипаттау үшін оған қол жеткізу параметрлерін көрсетіңіз (мысалы, Windows NT authentication қолданыңыз). Осы деректер көзіне DB_DEST атауын беріңіз. Жасалған диаграмманың анық болуы үшін Сіз сол деректер көзінің көшірмелерін жасай аласыз, DTS пакеті редакторының жұмыс кеңістігіне әр кесте үшін тағы бірнеше бірдей белгішелерді ауыстырып, connection properties диалогтық тақтасында Existing Connection опциясын белгілеп, тізімнен DB DESTINATION қол жетімді деректер көздерін таңдай аласыз.
Осыдан кейін сіз бастапқы деректердің қайнар көзін сипаттауыңыз керек — Excel жұмыс кітабы, оған EXCEL_SRC атауын беріңіз және жедел кестелерді пайдалану керек болғанша оның көшірмелерін жасаңыз (сурет. 11).
Деректер ағындарының сипаттамасы және тапсырмалардың орындалу реті
Қарапайымдылық үшін кестелерді деректер қоймасына толтырмас бұрын олардың мазмұнын толығымен тазартамыз. Осы мақсатта біз редактордың жұмыс кеңістігіне Execute SQL Task пиктограммасын жібереміз. Бұл экранда Execute SQL Task Properties диалогтық тақтасын көрсетеді, онда біз Description (тапсырма сипаттамасы) және SQL Statement өрістерін толтырамыз (мұнда біз деректерді сақтаудың барлық кестелерінен деректерді жою үшін операторларды қосамыз, сурет. 12).
Айта кету керек, деректердің үлкен көлемімен деректерді жадтан жою әдетте қолданылмайды — бұл жағдайда бұрыннан бар деректерге жаңалары қосылады. Әрі қарай, жадты толтыру үшін қандай деректер ағындары қажет екенін анықтау керек. Осы мақсатта Ctrl пернесін басқан кезде тінтуірді басу арқылы EXCEL src деректер көзінің даналарын және DB_DEST деректер көзінің даналарын таңдаңыз. Екі пиктограмма да бөлектелгенде, DB_DEST деректер көзінің мәтінмәндік мәзірінен Transform Data Task опциясын таңдау керек, содан кейін пиктограммалар деректерді түрлендіру және тасымалдау тапсырмаларының біріне сәйкес келетін көрсеткі арқылы қосылады. Әрі қарай, сол әрекетті EXCEL src деректер көзінің барлық басқа даналарымен және DB DESTINATION деректер көзінің бірдей данасымен қайталаңыз.
Осылайша, деректерді сақтау кестелеріне тасымалдау үшін тапсырмалар жасалады. Бұл тапсырмаларды қатар орындауға болады, өйткені біздің қоймадағы өлшеу кестелері бір-бірімен байланысты емес. Дегенмен, оларды бүкіл сақтау орны толығымен тазаланғаннан кейін ғана жасауға болады. Бұл шартты сипаттау үшін (мұндай шарттар precedence constraint сөз тіркесімен анықталады) біз бір уақытта Execute SQL Task пиктограммасын және бұрыннан қатысқан бес деректер көзінің белгішесінің бірін таңдап, содан кейін Деректер көзінің контекстік мәзірінен Workflow | On Success опциясын таңдауымыз керек. Пиктограммалар арасында пайда болған Жасыл нүктелі көрсеткі деректерді тиісті өзгерістер кестесіне көшіру жадты тазарту сәтті аяқталғаннан кейін ғана жүзеге асырылатынын білдіреді. Әрі қарай, бұл әрекетті деректер көзінің барлық қалған даналарымен қайталау керек.
Фактілер кестесінің деректерімен толтыру міндетіне келетін болсақ, оны барлық өлшем кестелері толтырылғаннан кейін ғана орындауға болады. Сондықтан, біз алдымен деректер көзі мен деректер көзінің қалған даналарын бөлектейміз, содан кейін осы деректер көзінің мәтінмәндік мәзірінен WorkFlow опциясын таңдаймыз — пиктограммалар фактілер кестесін толтыру тапсырмасына сәйкес көрсеткі арқылы қосылады. Әрі қарай, біз бір уақытта өлшеу кестесін толтырудың бес тапсырмасының сипаттамасына қатысатын пиктограмманы және фактілер кестесін толтыру тапсырмасының сипаттамасына қатысатын пиктограмманы таңдап, содан кейін арнайы деректер көзінің контекстік мәзірінен Workflow | s Success опциясын таңдауымыз керек. Осылайша, біз фактілер кестесін толтыру өлшеу кестелерін сәтті толтырғаннан кейін ғана жүзеге асырылатындығын атап өттік (сурет.11).
DTS пакеттерін орындау
Жасалған DTS бумасын DTS бума редакторының мәзірінен Package / Save опциясын таңдау арқылы сақтау керек. Оны package | Execute мәзір элементін таңдау арқылы орындауға болады. Осыдан кейін деректерді түрлендіру және оларды деректер қоймасының кестелерімен толтыру процесі басталады. Қоймадағы деректер операциялық Дерекқордың ағымдағы немесе соңғы күйіне сәйкес келуі үшін сіз осы пакет автоматты түрде орындалатын кесте жасай аласыз. Мұны істеу үшін оны Enterprise Manager — де және контекстік мәзірден Schedule Package опциясын таңдаңыз. Әрі қарай, Edit Recurring Job Schedule тілқатысу тақтасында қажетті деректерді жаңарту режимін таңдау керек. Пакетті кесте бойынша іске қосу үшін SQL Server Agent — кесте бойынша әртүрлі тапсырмаларды орындауға бастамашы болатын қызмет іске қосылуы қажет екенін ескеріңіз.
Бақылау сұрақтары:
1. Деректер қоймасы дегеніміз не. Деректер қоймаларының типтік құрылымын сипаттаңыз.
2. OLAP жүйелерінде жиынтық деректерді сақтау мақсаты.
3. Фактілер кестесі дегеніміз не?
1. Microsoft аналитикалық қызметтері арқылы жасалған текше дегеніміз не?
2. Деректерді түрлендіру қызметтері не үшін қажет?
4. Data Transformation Services (DTS) не үшін арналған?
5. DTS (DTS package) пакетінде не бар және ол не үшін қажет?
6. Data Transformation Services қандай деректер қоймаларынан түрлендіруді қолдайды?
Достарыңызбен бөлісу: |