Treść książki

Przejdź do opcji czytnikaPrzejdź do nawigacjiPrzejdź do informacjiPrzejdź do stopki
Koniecznośćnaukinowegojęzykazapytań,któregomożnaużywaćtylkozusługą
AnalysisServicesmożewydawaćsięniepokojąca.NaszczęścieMDXzostałzaakcep-
towanyprzezwieludostawcówOLAP
.Wroku2001firmyMicrosoft,Hyperionoraz
SASstworzyłyradę,XMLforAnalysis(XMLA),abysformułowaćwspólnąspecyfika-
cjędokomunikacjizeźródłamidanychOLAP
.Wybranymjęzykiemzapytańzgod-
nymzespecyfikacjąXMLAjestMDX.WiększośćdużychdostawcówOLAPdołączyło
doradyXMLAiterazdostawcamiXMLA.(WięcejinformacjinatematXMLAmoż-
naznaleźćnawitryniekomitetuwww.xmla.org.)Takwięcwszystko,czegonauczymy
sięztejksiążkiozapytaniachMDX,mazastosowaniedoAnalysisServices,atakże
doinnychbazdanychOLAP
.
Jednązkluczowychzaletstandardowegojęzykazapytańopartegonametadanych
OLAPjestmożliwośćużyciaprzeglądarkiOLAPogólnegoprzeznaczeniadorealizacji
zapytańwdowolnejbaziedanychOLAP
.Naprzykład,wprzypadkukostkiMicrosoft
AnalysisServicesmożnawybraćnarzędziaklientaMicrosoft,jaktedostępnewMicrosoft
Office,lubteżwybraćnarzędziawieluinnychdostawców.Każdeznarzędziklienckich
korzystającezMDXlubXMLAmożezrozumiećnasząkostkęiwygenerowaćsensowne
raportybezkoniecznościtworzeniazapytańdostosowanychdodanegorozwiązania.
Innymisłowy
,ponieważinstrukcjezapytańMDXopartenametadanychzapisanych
wkostce,możnaużyćnarzędzigenerującychzapytaniabezkoniecznościsamodziel-
negopisaniajakichkolwiekinstrukcjizapytańMDX.
JeślizachodzipotrzebanapisaniazapytańMDXdostosowanychdopotrzeb,metada-
nesprawiają,żejesttołatwiejszeodpisaniazapytańwjęzykuSQL.Naprzykład,gdy
tworzymywjęzykuSQLzapytanieobliczającesumęSalesUnits(Jednostkisprzedaży)
dlaklientówzkażdegomiasta,trzebanadaldodaćklauzulęzapewniającąodpowiednie
uporządkowaniemiast.WzapytaniujęzykaMDXpoprostupodajemy
,żepotrzebuje-
myelementówatrybutuCity(Miasto)iautomatycznieotrzymujemydomyślnąkolej-
nośćuporządkowaniazgodniezdefinicjązawartąwmetadanych.Innymprzykładem
możebyćsytuacja,gdywrelacyjnejbaziedanychzawierającejCountry(Kraj)iCity
,
nicniesugeruje,czymiastanależądokrajów,czykrajedomiast.Jeślichcemypoka-
zaćwszystkiemiastaNiemiec,musimypodaćzapytanieomiasta,anastępniezawrzeć
wnimklauzulęfiltrującądlasłowakluczowegoGermany(Niemcy).WkostceOLAP
,
gdzieCountryjestzdefiniowanyjakonadrzędnywzględemCity
,możnapoprostu
zapytaćoelementypodrzędnedlaGermany
.
Jesttotylkoniewielkapróbkazapytańowielkichmożliwościach,któremożna
pisaćzapomocąjęzykaMDX.Wieleinnychzapytańtrudnojestnapisaćwjęzyku
SQLnaprzykładtabelapokazującanajlepiejsprzedającesięproduktyjakonagłówki
kolumn,zaśprzodującewsprzedażyregionyjakonagłówkiwierszydośćpro-
stedoutworzeniawMDX.Niektóreraporty
,którychpoprostuniemożnawykonać
wSQLjakzagnieżdżaniewieluwarstwatrybutówjakonagłówkikolumnmożna
prostoutworzyćzapomocąMDX.
PojęcieOLAP
31