Mi az olap kocka az excelben. SSAS projekt létrehozása. Mi az elemzés és miért van rá szükség?

Egy komoly vállalkozás információs rendszerei rendszerint olyan alkalmazásokat tartalmaznak, amelyeket az adatok komplex elemzésére terveztek, dinamikájukat, trendeiket stb. Ennek megfelelően a felső vezetés lesz az elemzési eredmények fő fogyasztója. Az ilyen elemzés végső soron a döntéshozatal támogatását szolgálja. Ahhoz pedig, hogy bármilyen vezetői döntést hozhassunk, rendelkezni kell a szükséges, általában mennyiségi információkkal. Ehhez össze kell gyűjteni ezeket az adatokat mindenkitől információs rendszerek közös formátumba hozza őket, majd elemezze őket. Ebből a célból adattárházakat hoznak létre.

Mi az adattárház?

Általában - az a hely, ahol minden analitikai értékű információt összegyűjtenek. Az ilyen tárolókra vonatkozó követelmények megfelelnek az OLAP klasszikus definíciójának, és az alábbiakban ismertetjük.

A Raktárnak néha egy másik célja is van - az összes vállalati adat integrálása, az információk integritásának és relevanciájának megőrzése az összes információs rendszerben. Hogy. a repository nemcsak analitikai, hanem szinte minden információt felhalmoz, és azt könyvtárak formájában vissza tudja szolgáltatni más rendszereknek.

Egy tipikus adattárház jellemzően eltér egy tipikus relációs adatbázistól. Először is, a rendszeres adatbázisok célja, hogy segítsék a felhasználókat a napi munka elvégzésében, míg az adattárházakat a döntéshozatalhoz. Például az áruk értékesítése, a számlák kiállítása tranzakciófeldolgozásra kialakított adatbázis segítségével, az értékesítés dinamikájának több éves elemzése, amely lehetővé teszi a beszállítókkal való tervezést, adattárház segítségével történik.

Másodszor, míg a hagyományos adatbázisok folyamatosan változnak a felhasználók munkavégzése során, addig az adattárház viszonylag stabil: a benne lévő adatok rendszerint ütemezés szerint frissülnek (például heti, napi vagy óránkénti, az igényektől függően). Ideális esetben a dúsítási folyamat egyszerűen új adatok hozzáadása egy bizonyos időszakon keresztül anélkül, hogy a raktárban lévő korábbi információkat módosítaná.

Harmadszor pedig a rendszeres adatbázisok a leggyakrabban a raktárba kerülő adatok forrásai. Ezen kívül a tárhely pótolható külső források, például statisztikai jelentések.

Hogyan épül fel egy raktár?

ETL– alapkoncepció: Három szakasz:
  • Extraction – adatok kinyerése külső forrásból érthető formátumban;
  • Transzformáció – a forrásadatok szerkezetének átalakítása olyan struktúrákká, amelyek alkalmasak egy analitikai rendszer felépítésére;
Adjunk hozzá még egy lépést - adattisztítás ( Tisztítás) – az irreleváns adatok kiszűrésének vagy a hibás adatok kijavításának folyamata statisztikai vagy szakértői módszerek alapján. Hogy ne hozzon létre később olyan jelentéseket, mint a „20011-es értékesítések”.

Térjünk vissza az elemzéshez.

Mi az elemzés és miért van rá szükség?

Az elemzés az adatok tanulmányozása döntéshozatal céljából. Az analitikai rendszereket döntéstámogató rendszereknek nevezzük. DSS).

Itt érdemes rámutatni a különbségre a DSS-sel végzett munka és a szabályozott és nem szabályozott jelentések egyszerű halmaza között. Az elemzés a DSS-ben szinte mindig interaktív és iteratív. Azok. az elemző az adatokba mélyedve elemző lekérdezéseket készít, korrigál, jelentéseket kap, amelyek szerkezete előre ismeretlen lehet. Erre az alábbiakban részletesebben visszatérünk, amikor a lekérdezési nyelvet tárgyaljuk. MDX.

OLAP

A döntéstámogató rendszerek általában rendelkeznek azokkal az eszközökkel, amelyek az eredeti halmaz különböző mintáira vonatkozó összesített adatokkal látják el a felhasználót az észlelés és elemzés szempontjából kényelmes formában (táblázatok, diagramok stb.). A forrásadatok szegmentálásának hagyományos megközelítése magában foglalja egy vagy több többdimenziós adatkészlet kinyerését a forrásadatokból (gyakran hiperkockának vagy metakockának nevezik), amelyek tengelyei attribútumokat, a cellák pedig összesített kvantitatív adatokat tartalmaznak. (Az ilyen adatok relációs táblákban is tárolhatók, de ebben az esetben az adatok logikai szerveződéséről beszélünk, nem pedig tárolásuk fizikai megvalósításáról.) Az egyes tengelyek mentén az attribútumok hierarchiákba rendezhetők, részletességük különböző szintjeit reprezentálják. Ennek az adatmodellnek köszönhetően a felhasználók összetett lekérdezéseket fogalmazhatnak meg, jelentéseket készíthetnek, és adatok részhalmazait szerezhetik be.

A komplex többdimenziós adatelemzés technológiáját OLAP-nak (On-Line Analytical Processing) hívják. Az OLAP a hagyományos adattárház kulcseleme. Az OLAP fogalmát Edgar Codd, neves adatbázis-kutató és a relációs adatmodell szerzője írta le 1993-ban. 1995-ben a Codd által meghatározott követelmények alapján megfogalmazták az úgynevezett FASMI-tesztet (Fast Analysis of Shared Multidimensional Information), amely a következő követelményeket tartalmazza a többdimenziós elemzési alkalmazásokhoz:

  • a felhasználó rendelkezésére bocsátani az elemzési eredményeket elfogadható időn belül (általában legfeljebb 5 s), még kevésbé részletes elemzés árán is;
  • bármely jellemző logikai és statisztikai elemzés elvégzésének képessége ez az alkalmazás, és a végfelhasználó számára elérhető formában történő mentése;
  • többfelhasználós hozzáférés az adatokhoz megfelelő zárszerkezetek és engedélyezett hozzáférési eszközök támogatásával;
  • adatok többdimenziós fogalmi ábrázolása, beleértve teljes támogatás hierarchiákhoz és többszörös hierarchiákhoz (ez az OLAP legfontosabb követelménye);
  • minden szükséges információhoz való hozzáférés lehetősége, függetlenül azok mennyiségétől és tárolási helyétől.
Meg kell jegyezni, hogy az OLAP funkcionalitás megvalósítható különböző utak, kezdve az irodai alkalmazások legegyszerűbb adatelemző eszközeivel és a szervertermékeken alapuló elosztott elemző rendszerekkel. Azok. Az OLAP nem technológia, hanem ideológia.

Mielőtt a különféle OLAP-megvalósításokról beszélnénk, nézzük meg közelebbről, mi is a kockák logikai szempontból.

Többdimenziós fogalmak

Az OLAP alapelvek bemutatására a Microsofthoz mellékelt Northwind adatbázist fogjuk használni. SQL szerverés amely egy tipikus adatbázis, amely egy élelmiszer-nagykereskedelemmel foglalkozó cég kereskedelmi tevékenységéről tárol információkat. Az ilyen adatok közé tartoznak a szállítókra, ügyfelekre vonatkozó információk, a szállított áruk listája és kategóriái, a rendelésekre és a megrendelt árukra vonatkozó adatok, valamint a cég alkalmazottainak listája.

Kocka

Vegyük például a Számlák1 táblát, amely a cég rendeléseit tartalmazza. A táblázat mezői a következők lesznek:
  • Rendelés dátuma
  • Egy ország
  • Város
  • Ügyfél neve
  • Szállítócég
  • termék név
  • Áruk mennyisége
  • Rendelési ár
Milyen összesített adatokat kaphatunk ebből a nézetből? Általában ezek a válaszok olyan kérdésekre, mint:
  • Mennyi az adott országból érkező vásárlók által leadott megrendelések összértéke?
  • Mennyi a vevők által adott országban leadott és egy bizonyos cég által kiszállított megrendelések összértéke?
  • Mennyi a vevők által adott országban adott évben leadott és egy adott cég által leszállított megrendelések összértéke?
Mindezek az adatok elég nyilvánvaló SQL lekérdezések segítségével, csoportosítással nyerhetők ebből a táblázatból.

A lekérdezés eredménye mindig egy számoszlop és az azt leíró attribútumok listája (például ország) lesz – ez egy egydimenziós adatkészlet vagy matematikai nyelven egy vektor.

Képzeljük el, hogy információt kell szereznünk az összes országból érkező rendelések összköltségéről és azok szállítási cégek közötti megoszlásáról - kapunk egy számtáblázatot (mátrixot), ahol az oszlopfejlécekben a szállító cégek, a sorban országok szerepelnek. fejléceket, és a cellákban a rendelések mennyisége lesz látható. Ez egy kétdimenziós adattömb. Ezt az adathalmazt pivot táblának ( Pivot tábla) vagy kereszttábla.

Ha ugyanazokat az adatokat szeretnénk megkapni, de évenként is, akkor újabb változás jelenik meg, pl. az adathalmaz háromdimenzióssá válik (feltételes 3. rendű tenzor vagy 3 dimenziós „kocka”).

Nyilvánvalóan a maximális dimenziószám az összes attribútum (Dátum, Ország, Vevő stb.) száma, amely leírja összesített adatainkat (rendelések mennyisége, termékek száma stb.).

Így jutunk el a multidimenzionalitás fogalmához és megtestesüléséhez - többdimenziós kocka. Egy ilyen táblázatot fogunk nevezni ténytáblázat" Méretek vagy kockatengelyek ( méretek) olyan attribútumok, amelyek koordinátáit ezen attribútumok egyedi értékei fejezik ki a ténytáblázatban. Azok. ha például 2003-tól 2010-ig a rendelésekre vonatkozó információkat tartották fenn a rendszerben, akkor az idei év tengelye 8 megfelelő pontból áll majd. Ha három országból érkezik megrendelés, akkor az országtengely 3 pontot tartalmaz stb. Függetlenül attól, hogy hány ország szerepel az Országkönyvtárban. A tengely pontjait „tagjainak” nevezzük ( tagok).

Ebben az esetben magukat az összesített adatokat nevezzük „intézkedéseknek” ( Intézkedés). A „méretekkel” való összetéveszthetőség elkerülése érdekében az utóbbiakat lehetőleg „tengelyeknek” nevezzük. A mértékkészlet egy másik "Mérések" tengelyt alkot ( Intézkedések). Annyi tagja (pontja) van, ahány mérőszám (összesített oszlop) van a ténytáblázatban.

A méretek vagy tengelyek tagjai egy vagy több hierarchiával kombinálhatók ( hierarchia). Egy példával magyarázzuk el, mi a hierarchia: a városok a rendekből körzetekké, a kerületek régiókká, egy ország régióivá, az országok kontinensekké vagy más entitásokká egyesíthetők. Azok. van egy hierarchikus struktúra - kontinens- ország-régió-kerület-város– 5 szint ( Szint). Egy régióra vonatkozóan a rendszer összesített adatokat tartalmaz a benne szereplő városokról. Egy olyan régióhoz, amely az összes várost magában foglalja, stb. Miért van szükségünk több hierarchiára? Például a rendelés dátuma tengelyen szeretnénk pontokat (azaz napokat) hierarchiába csoportosítani. Év hónap nap vagy által Év-hét-nap: mindkét esetben három szint van. Nyilvánvaló, hogy a Hét és a Hónap eltérően csoportosítja a napokat. Vannak hierarchiák is, amelyekben a szintek száma nem determinisztikus, és az adatoktól függ. Például a számítógép lemezén lévő mappák.

Az adatok összesítése több szabványos függvény használatával történhet: összeg, minimum, maximum, átlag, szám.

MDX

Térjünk át a többdimenziós adatok lekérdezési nyelvére.
Az SQL nyelvet eredetileg nem programozóknak, hanem elemzőknek tervezték (ezért a szintaxisa a természetes nyelvre hasonlít). Idővel azonban egyre bonyolultabbá vált, és ma már kevés elemző tudja, hogyan kell jól használni, ha egyáltalán tudja. A programozók eszközévé vált. Az MDX lekérdező nyelvet, amelyet a pletykák szerint egykori honfitársunk, Mosha (vagy Mosha) Posumansky fejlesztette ki a Microsoft vadonjában, eredetileg szintén elemzőknek szánták, de fogalmai és szintaxisa (amely homályosan hasonlít az SQL-re, és teljesen hiába, vagyis mert csak összezavar), még az SQL-nél is bonyolultabb. Alapjai azonban még mindig könnyen érthetők.

Részletesen megvizsgáljuk, mert ez az egyetlen nyelv, amely az általános XMLA protokoll szabvány keretein belül kapott szabványos státuszt, másodszor pedig azért, mert a cég Mondrian projektje formájában nyílt forráskódú implementációja is van. Pentaho. Más OLAP-elemző rendszerek (például az Oracle OLAP Option) általában a saját SQL-szintaxis-kiterjesztéseiket használják, de deklarálják az MDX támogatását is.

Az analitikai adatkészletekkel való munka csak azok olvasását jelenti, nem pedig írást. Hogy. Az MDX-nek nincsenek adatmódosítási záradékai, de csak egy kiválasztási záradék – a select.

Az OLAP-ban többdimenziós kockákat készíthet szeleteket– azaz amikor az adatokat egy vagy több tengely mentén szűrjük, ill előrejelzések– amikor a kocka egy vagy több tengely mentén „összeesik”, adatok összesítése. Például az első példánk az országokból érkező rendelések mennyiségére a kocka kivetítése az Ország tengelyre. Az MDX-lekérdezés ebben az esetben így fog kinézni:

Válassza a ...Children on rows from
Mi van itt?

Válassza ki– a kulcsszó kizárólag a szépség miatt szerepel a szintaxisban.
a tengely neve. Az MDX-ben minden tulajdonnév szögletes zárójelben van.
a hierarchia neve. Esetünkben ez az Ország-Város hierarchia
– ez a hierarchia első szintjén lévő tengelytag neve (azaz ország) Mind – ez egy metatag, amely a tengely összes tagját egyesíti. Minden tengelyben van egy ilyen meta-kifejezés. Például az év tengelyen ott van a „Minden év” stb.
Gyermekek egy tagfüggvény. Minden tagnak több funkciója van. Ilyen például a Szülő. Szint, Hierarchia, rendre visszaadja az őst, a hierarchia szintjét és magát a hierarchiát, amelyhez ebben az esetben a tag tartozik. Gyermekek – Ennek a tagnak a gyermektagjait adja vissza. Azok. esetünkben – országok.
sorokon– Jelzi, hogyan kell elrendezni ezeket az adatokat a kapott táblázatban. Ebben az esetben - a sorok fejlécében. Lehetséges értékek itt: oszlopokon, oldalakon, bekezdéseken stb. Lehetőség van egyszerűen indexszel is jelezni, 0-tól kezdve.
tól től– ez azt a kockát jelzi, amelyből a kiválasztás történik.

Mi van akkor, ha nem minden országra van szükségünk, hanem csak néhány konkrét országra? Ehhez a kérelemben kifejezetten megadhatjuk azokat az országokat, amelyekre szükségünk van, ahelyett, hogy mindent a Gyermekek funkcióval választunk ki.

Válassza ki ( ..., ... ) a következő sorokon
A göndör kapcsos zárójel ebben az esetben a halmaz deklarációja ( Készlet). A halmaz egy lista, a tagok felsorolása egy tengelyről.

Most írjunk egy lekérdezést a második példánkhoz – a kimenet egy kézbesítő kontextusában:

Válassza a ...Children on rows .Members on columns from lehetőséget
Ide hozzáadva:
– tengely;
.Tagok– egy tengelyfüggvény, amely az összes kifejezést visszaadja. A hierarchia és a szint ugyanazt a funkciót tölti be. Mert Ezen a tengelyen csak egy hierarchia van, akkor ennek jelzése elhagyható, mert a szint és a hierarchia is megegyezik, akkor az összes tagot egy listában jelenítheti meg.

Azt hiszem, már most nyilvánvaló, hogyan folytathatjuk ezt a harmadik példánkkal évenkénti részletességgel. De inkább ne fúrjuk le évenként, hanem szűrjük - pl. szeletet építeni Ehhez a következő lekérdezést írjuk:

Válassza a ..Gyermekek a sorokon .A Tagok az oszlopokon lehetőséget, ahonnan (.)
Hol van itt a szűrés?

ahol- kulcsszó
a hierarchia egyik tagja . A teljes név az összes kifejezéssel együtt a következő lenne: .. , hanem azért, mert Mivel ennek a tagnak a neve egyedi a tengelyen belül, a név minden közbenső pontosítása elhagyható.

Miért van zárójelben a dátum kifejezés? A zárójel egy sor ( tuple). A sor egy vagy több koordináta különféle tengelyek Például, ha egyszerre két tengely mentén szeretne szűrni, zárójelben felsorolunk két kifejezést különböző a méréseket vesszővel elválasztva. Vagyis a sor meghatározza a kocka egy „szeletét” (vagy „szűrést”, ha az ilyen terminológia közelebb áll).

A sor nem csak szűrésre szolgál. A sorok sor/oszlop/oldal fejlécében stb. is lehetnek.

Erre például egy háromdimenziós lekérdezés eredményének kétdimenziós táblázatban való megjelenítéséhez van szükség.

Válassza ki a crossjoin(...Gyermekek, ..Gyermekek) elemet a sorokon .Members az oszlopokon, ahonnan (.)
Crossjoin egy függvény. Két halmaz derékszögű szorzatából származó sorokat ad vissza (igen, egy halmaz tartalmazhat sorokat is!). Azok. a kapott halmaz az országok és évek összes lehetséges kombinációját fogja tartalmazni. A sorfejlécek így egy értékpárt tartalmaznak: Ország-év.

A kérdés az, hogy hol van annak jelzése, hogy milyen számszerű jellemzőket kell megjeleníteni? Ebben az esetben az ehhez a kockához definiált alapértelmezett mértéket használjuk, azaz. Rendelési ár. Ha egy másik mértéket akarunk származtatni, akkor emlékezzünk arra, hogy a mértékek egy dimenzió tagjai Intézkedések. És pontosan ugyanúgy járunk el, mint a többi tengellyel. Azok. egy lekérdezés szűrése az egyik mérték szerint pontosan ezt a mértéket fogja megjeleníteni a cellákban.

Kérdés: Mi a különbség a hol szűrés és a tengelytagok soron belüli megadásával történő szűrés között? Válasz: gyakorlatilag semmi. Egyszerűen ott, ahol egy szelet van feltüntetve azoknak a tengelyeknek, amelyek nem vesznek részt a címsorok kialakításában. Azok. ugyanaz a tengely nem tud egyszerre legyen jelen sorokon, és be ahol.

Számított tagok

Többért összetett lekérdezések Bejelentheti a számított tagokat. Az attribútum és a mérési tengely tagjai egyaránt. Azok. Bejelenthet például egy új mértéket, amely megjeleníti az egyes országok hozzájárulását a rendelések teljes összegéhez:

taggal. mint '.CurrentMember / ..', FORMAT_STRING='0,00%' válassza ki a ...Gyermekek a sorokon, ahonnan .
A számítás egy olyan cellában történik, amelyben minden koordináta attribútuma ismert. A megfelelő koordinátákat (tagokat) a CurrentMember függvénnyel kaphatjuk meg minden kockatengelyhez. Itt meg kell értenünk azt a kifejezést .Jelenlegi Tag/..’ nem oszt egy tagot a másikkal, hanem oszt releváns összesített adatok kocka szeleteket! Azok. a jelenlegi területre vonatkozó szelet az összes terület szeletére lesz osztva, azaz. az összes megrendelés összértéke. FORMAT_STRING – beállítja az értékek megjelenítési formátumát, pl. %.

Egy másik példa a számított tagra, de az évek tengelyén:

taggal. mint '. -.'
Nyilvánvalóan a jelentés nem egységet fog tartalmazni, hanem a megfelelő szakaszok különbségét, pl. a rendelések mennyiségének különbsége ebben a két évben.

Megjelenítés ROLAP-ban

Az OLAP rendszerek így vagy úgy, valamilyen adattárolási és szervezési rendszeren alapulnak. Amikor arról beszélünk az RDBMS-ről, aztán a ROLAP-ról beszélnek (a MOLAP-ot és a HOLAP-ot hagyjuk az önálló tanulás). ROLAP – OLAP relációs adatbázison, azaz. közönséges kétdimenziós táblázatok formájában írják le. A ROLAP rendszerek az MDX-lekérdezéseket SQL-vé alakítják. Az adatbázisok fő számítási problémája a gyors aggregáció. A gyorsabb aggregálás érdekében az adatbázisban lévő adatok általában erősen denormalizáltak, pl. nem tárolják túl hatékonyan a lemezterületet és az adatbázis integritását figyelve. Ezenkívül tartalmaznak kiegészítő táblákat, amelyek részben összesített adatokat tárolnak. Ezért az OLAP-hoz általában külön adatbázissémát hoznak létre, amely csak részben replikálja az eredeti tranzakciós adatbázisok szerkezetét címtárak tekintetében.

Navigáció

Számos OLAP rendszer kínál interaktív navigációs eszközöket egy már generált lekérdezéshez (és ennek megfelelően kiválasztott adatokhoz). Ebben az esetben az úgynevezett „fúrást” vagy „fúrást” használják. A megfelelőbb fordítás oroszra a „mélyítés” szó lenne. De ez ízlés dolga, bizonyos környezetekben a „fúrás” szó megragadt.

Fúró– ez a jelentés részletezése az adataggregáció mértékének csökkentésével, más tengely (vagy több tengely) mentén történő szűréssel kombinálva. Többféle fúrás létezik:

  • lefúrás– szűrés a jelentés egyik forrástengelye mentén, a kiválasztott szűrési tag hierarchiáján belüli leszármazottak részletes információinak megjelenítésével. Például, ha van jelentés a rendelések eloszlásáról országokra és évekre lebontva, akkor a 2007-es évre kattintva megjelenik egy jelentés 2007 azonos országaira és hónapjaira lebontva.
  • fúróoldali– egy vagy több kiválasztott tengely alatti szűrés és egy vagy több másik tengely mentén történő összesítés eltávolítása. Például, ha van jelentés a rendelések eloszlásáról országokra és évekre lebontva, akkor a 2007-es évre kattintva egy másik jelentés jelenik meg, például országokra és beszállítókra lebontva, 2007-ig szűrve.
  • fúróvályú– az összes tengely mentén történő összesítés eltávolítása és egyidejű szűrés ezek mentén – lehetővé teszi a forrásadatok megtekintését abból a ténytáblából, amelyből a jelentésben szereplő érték származott. Azok. Ha rákattint egy cella értékére, megjelenik egy jelentés az összes olyan rendelésről, amely ezt az összeget adta. Egyfajta azonnali fúrás a kocka „mélységébe”.
Ez minden. Most, ha úgy dönt, hogy az üzleti intelligencia és az OLAP-nak szenteli magát, ideje elkezdeni komoly szakirodalmat olvasni.

Címkék: Címkék hozzáadása

Jó ideje Habr lakója vagyok, de soha nem olvastam a többdimenziós kockák, OLAP és MDX témájú cikkeket, pedig a téma nagyon érdekes és napról napra egyre aktuálisabb.
Nem titok, hogy az adatbázisok, az elektronikus könyvelés és az online rendszerek fejlesztésének rövid ideje alatt maga is rengeteg adat halmozódott fel. Most az archívum teljes elemzése, és talán egy kísérlet arra, hogy a jövőben hasonló modellek helyzetét előre jelezzék, szintén érdekes.
Másrészt a nagyvállalatok akár több év, hónap vagy akár hét leforgása alatt is olyan nagy mennyiségű adatot halmozhatnak fel, hogy az alapelemzésük is rendkívüli megközelítést és szigorú hardverkövetelményeket igényel. Ezek lehetnek banki tranzakció-feldolgozó rendszerek, pénzváltó ügynökök, telefonszolgáltatók stb.
Azt hiszem, mindenki jól ismeri az adatbázis-tervezés két különböző megközelítését: az OLTP-t és az OLAP-ot. Az első megközelítés (Online Transaction Processing – valós idejű tranzakciófeldolgozás) a hatékony, valós idejű adatgyűjtést szolgálja, míg a második (Online Analytical Processing – valós idejű analitikai feldolgozás) kifejezetten az adatok leghatékonyabb mintavételére és feldolgozására irányul. út.

Nézzük meg a modern OLAP kockák főbb képességeit, és milyen problémákat oldanak meg (az Analysis Services 2005/2008-as verzióját vesszük alapul):

  • gyors hozzáférés adatokhoz
  • előcsoportosítás
  • hierarchia
  • idővel dolgozni
  • többdimenziós adatelérési nyelv
  • KPI (Key Performance Indicators)
  • datolya bányászat
  • többszintű gyorsítótár
  • többnyelvű támogatás
Tehát nézzük meg kicsit részletesebben az OLAP kockák képességeit.

Egy kicsit bővebben a lehetőségekről

Gyors hozzáférés az adatokhoz
Valójában az adatokhoz való gyors hozzáférés a tömb méretétől függetlenül az OLAP rendszerek alapja. Mivel ez a fő hangsúly, az adattárház általában a relációs adatbázisoktól eltérő elvekre épül.
Itt az egyszerű adatok lekéréséhez szükséges időt a másodperc töredékeiben mérik, és a néhány másodpercet meghaladó lekérdezés valószínűleg optimalizálást igényel.

Előcsoportosítás
Amellett, hogy gyorsan lekéri a meglévő adatokat, lehetőséget biztosít a „legvalószínűbb felhasználásra” értékek előzetes összesítésére is. Például, ha napi nyilvántartásunk van egy bizonyos termék értékesítéséről, a rendszer Talán A havi és negyedéves értékesítési összegeket is előre összesíthetjük, ami azt jelenti, hogy ha havonta vagy negyedévente kérünk adatot, akkor a rendszer azonnal megadja az eredményt. Miért nem mindig jön létre az elő-aggregáció?Mert elméletileg lehetséges javak/idő/stb kombinációk. hatalmas szám lehet, ami azt jelenti, hogy világos szabályokkal kell rendelkeznie, hogy mely elemekre épül fel az aggregáció, és melyekre nem. Általánosságban elmondható, hogy ezeknek a szabályoknak a figyelembevétele és az aggregációk tényleges kialakítása meglehetősen kiterjedt, és önmagában külön cikket érdemel.

Hierarchiák
Természetes, hogy az adatok elemzése és a zárójelentések készítése során figyelembe kell venni azt a tényt, hogy a hónapok napokból állnak, és maguk is negyedéveket alkotnak, a városok pedig a területekhez tartoznak, amelyek viszont régiók vagy országok részét képezik. . A jó hír az OLAP kockák kezdetben az adatokat a hierarchiák és ugyanazon entitás más paramétereivel való kapcsolatok szempontjából veszik figyelembe, így a hierarchiák kockákban való felépítése és használata nagyon egyszerű.

Munka az idővel
Mivel az adatok elemzése főként időterületeken történik, az OLAP rendszerekben az idő kiemelt jelentőséget kap, ami azt jelenti, hogy ha egyszerűen meghatározzuk a rendszer számára, hogy hol van itt időnk, a jövőben könnyedén használhatunk olyan funkciókat, mint az Évtől dátumig, a hónapig. ( az év/hónap elejétől az aktuális dátumig tartó időszak), Párhuzamos időszak (ugyanazon a napon vagy hónapban, de tavaly) stb.

Többdimenziós adatelérési nyelv
MDX(Multidimensional Expressions) - lekérdező nyelv a többdimenziós adatstruktúrák egyszerű és hatékony elérésére. És ez mindent elmond – az alábbiakban lesz néhány példa.

Kulcsteljesítménymutatók (KPI)
Kulcsfontosságú teljesítménymutatók egy olyan pénzügyi és nem pénzügyi mérőrendszer, amely segít a szervezetnek meghatározni a stratégiai célok elérését. A kulcsfontosságú teljesítménymutatók egyszerűen meghatározhatók az OLAP rendszerekben, és felhasználhatók a jelentésekben.

A bányászat dátuma
Adatbányászat(Adatbányászat) - lényegében rejtett minták vagy a változók közötti kapcsolatok azonosítása nagy adathalmazokban.
Az angol „Data Mining” kifejezésnek nincs egyértelmű orosz nyelvű fordítása (adatbányászat, adatbányászat, információbányászat, adatbányászat, adat/információ kinyerése), ezért a legtöbb esetben az eredetiben használják. A legsikeresebb közvetett fordítás az „adatbányászat” (DMA) kifejezés. Ez azonban egy különálló, nem kevésbé érdekes téma.

Többszintű gyorsítótár
Valójában a lehető legnagyobb sebességű adathozzáférés biztosítása érdekében a trükkös adatstruktúrák és előcsoportosítások mellett az OLAP rendszerek támogatják a többszintű gyorsítótárazást. Az egyszerű lekérdezések gyorsítótárazása mellett az áruházból kiolvasott adatok részei, az összesített értékek és a számított értékek is gyorsítótárazásra kerülnek. Így minél tovább dolgozik egy OLAP kockával, annál gyorsabban kezd el dolgozni. Létezik a „gyorsítótár bemelegítésének” koncepciója is – egy olyan művelet, amely felkészíti az OLAP rendszert meghatározott jelentésekkel, lekérdezésekkel vagy ezek kombinációjával való munkára.

Többnyelvű támogatás
Igen igen igen. Az Analysis Services 2005/2008 (bár Enterprise Edition) legalább natívan támogatja a többnyelvűséget. Elég, ha megadja az adatok karakterlánc-paramétereinek fordítását, és a nyelvét megadott ügyfél honosított adatokat kap.

Többdimenziós kockák

Tehát mik is pontosan ezek a többdimenziós kockák?
Képzeljünk el egy 3 dimenziós teret, amelynek tengelyei az idő, a termékek és a vásárlók.
Az ilyen mezőben lévő pont azt a tényt jelzi, hogy az egyik vásárló egy adott terméket vásárolt egy adott hónapban.

Valójában a sík (vagy az összes ilyen pont halmaza) lesz a kocka, és ennek megfelelően az Idő, a Termékek és a Vevők a méretei.
Kicsit nehezebb elképzelni (és megrajzolni) egy négydimenziós vagy több kockát, de a lényeg nem változik, és ami a legfontosabb, az OLAP rendszerek esetében egyáltalán nem mindegy, hogy hány dimenzióban fog dolgozni (ésszerű kereteken belül). határok természetesen).

Egy kis MDX

Tehát mi az MDX szépsége? Valószínűleg az, hogy nem azt kell leírnunk, hogyan akarjuk kiválasztani az adatokat, hanem Pontosan mit mi akarunk.
Például,
KIVÁLASZTÁS
( . ) OSZLOPON,
( ., . ) SOROKRA
TÓL TŐL
AHOL (., .)

Ami azt jelenti, hogy annyi iPhone-t szeretnék eladni júniusban és júliusban Mozambikban.
Egyben leírom melyik ezeket az adatokat akarom és Hogyan Szeretném látni őket a riportban.
Gyönyörű, nem?

Itt egy kicsit bonyolultabb:

TAG AverageSpend AS
. / .
KIVÁLASZTÁS
( Átlagköltés ) OSZLOPON,
( .., .. ) SOROKRA
TÓL TŐL
AHOL (.)

* Ezt a forráskódot a Source Code Highlighter kiemelte.

Valójában először meghatározzuk az „átlagos vásárlási méret” kiszámításának képletét, és megpróbáljuk összehasonlítani, hogy ki (milyen nem) költ több pénzt az Apple bolt egyetlen látogatása során.

Maga a nyelv tanulmányozása és használata egyaránt rendkívül érdekes, és talán sok vitát érdemel.

Következtetés

Valójában ez a cikk még az alapfogalmakból is nagyon keveset fed le, én „előételnek” nevezném – lehetőség arra, hogy a Habra közösséget felkeltsük ebben a témában, és továbbfejlesszük. Ami a fejlesztést illeti, itt hatalmas felszántatlan mező van, minden kérdésére szívesen válaszolok.

P.S. Ez az első bejegyzésem az OLAP-ról, és az első publikáció a Habréról – nagyon hálás lennék az építő jellegű visszajelzésekért.
Frissítés:Átvittem SQL-be, átteszem OLAP-ra, amint megengedik, hogy új blogokat hozzak létre.

Címkék: Címkék hozzáadása

E munka részeként a következő kérdéseket veszik figyelembe:

  • Mik azok az OLAP kockák?
  • Mik azok a mértékek, dimenziók, hierarchiák?
  • Milyen típusú műveleteket lehet végrehajtani az OLAP kockákon?
Az OLAP kocka fogalma

Az OLAP fő posztulátuma az adatmegjelenítés többdimenziós jellege. Az OLAP terminológiában a kocka vagy hiperkocka fogalmát egy többdimenziós diszkrét adattér leírására használják.

Kocka egy többdimenziós adatstruktúra, amelyből a felhasználó-elemző információkat kérdezhet le. A kockák tényekből és méretekből jönnek létre.

Adat- ezek a vállalaton belüli tárgyakra és eseményekre vonatkozó adatok, amelyek elemzés tárgyát képezik. Az azonos típusú tények mércéket alkotnak. A mérték a kockacellában lévő érték típusa.

Mérések- ezek azok az adatelemek, amelyek alapján a tényeket elemzik. Az ilyen elemek gyűjteménye dimenzióattribútumot képez (például a hét napjai alkothatnak idődimenzió-attribútumot). A kereskedelmi vállalkozások üzleti elemzési feladataiban a dimenziók gyakran tartalmaznak olyan kategóriákat, mint „idő”, „értékesítés”, „termékek”, „vevők”, „munkavállalók”, „földrajzi elhelyezkedés”. A mérések leggyakrabban hierarchikus struktúrák, amelyek logikai kategóriák, amelyek segítségével a felhasználó elemezheti a tényleges adatokat. Minden hierarchiának egy vagy több szintje lehet. Így a „földrajzi elhelyezkedés” dimenzió hierarchiája a következő szinteket tartalmazhatja: „ország – régió – város”. Az időhierarchiában például a következő szintsorokat különböztethetjük meg: Egy dimenziónak több hierarchiája is lehet (egy dimenzió minden hierarchiájának a dimenziótábla kulcsattribútumaival kell rendelkeznie).

A kocka egy vagy több ténytáblázatból származó tényleges adatokat tartalmazhat, és leggyakrabban több dimenziót is tartalmazhat. Minden adott kockának általában van egy meghatározott fókusza az elemzéshez.

Az 1. ábra egy példát mutat be egy kockára, amelyet egy adott vállalat kőolajtermékek értékesítésének régiónkénti elemzésére terveztek. Ennek a kockának három dimenziója van (idő, termék és régió) és egy mérték (pénzben kifejezett értékesítési volumen). A mérési értékek a kocka megfelelő celláiban tárolódnak. Minden cellát egyedileg azonosít az egyes dimenziók tagjainak halmaza, úgynevezett sor. Például a kocka bal alsó sarkában található cellát (amely a $98399 értéket tartalmazza) a sor határozza meg [2005. július, Távol-Kelet, Diesel]. Itt a 98 399 dolláros érték a gázolaj Távol-Keleten 2005. júliusi értékesítési volumenét mutatja (pénzben kifejezve).

Azt is érdemes megjegyezni, hogy egyes cellák nem tartalmaznak értékeket: ezek a cellák üresek, mert a ténytábla nem tartalmaz rájuk vonatkozó adatokat.

Rizs. 1. Kocka információkkal a kőolajtermékek értékesítéséről a különböző régiókban

Az ilyen kockák létrehozásának végső célja az, hogy minimalizálja a lekérdezések feldolgozási idejét, amelyek a tényleges adatokból kinyerik a szükséges információkat. Ennek a feladatnak a végrehajtásához a kockák általában előre kiszámított összegeket tartalmaznak aggregációk(összesítések). Azok. a kocka a ténylegesnél nagyobb adatteret fed le - logikai, számított pontok vannak benne. Az aggregációs függvények lehetővé teszik a logikai térben lévő pontok értékeinek kiszámítását a tényleges értékek alapján. A legegyszerűbb összesítő függvények a SUM, MAX, MIN, COUNT. Így például a MAX funkció használatával a példában megadott kockánál azonosítható, hogy mikor következett be a dízeleladási csúcs a Távol-Keleten stb.

A többdimenziós kockák másik sajátossága az eredet meghatározásának nehézsége. Például hogyan állíthatja be a 0 pontot a Termék vagy régiók dimenzióhoz? A probléma megoldása egy speciális attribútum bevezetése, amely egyesíti a dimenzió összes elemét. Ez az attribútum (automatikusan létrehozva) csak egy elemet tartalmaz – Mind. Az olyan egyszerű összesítő függvényeknél, mint az összeg, az All elem egyenértékű az adott dimenzió tényleges terében lévő összes elem értékének összegével.

A többdimenziós adatmodellek egyik fontos fogalma az altér vagy alkocka. Az alkocka a kocka teljes területének egy része, a kockán belüli többdimenziós alakzat formájában. Mivel a kocka többdimenziós tere diszkrét és korlátozott, az alkocka is diszkrét és korlátozott.

Műveletek OLAP kockákon

A következő műveletek hajthatók végre egy OLAP-kockán:

  • szelet;
  • forgás;
  • konszolidáció;
  • részletezve.
Szelet(2. ábra) egy alkocka speciális esete. Ez az eljárás egy többdimenziós adattömb részhalmazának kialakítására, amely egy vagy több, ebben az alhalmazban nem szereplő dimenzióelem egyetlen értékének felel meg. Például annak megtudásához, hogy a kőolajtermékek értékesítése hogyan haladt az idő múlásával csak egy bizonyos régióban, nevezetesen az Urálban, rögzítenie kell a „Termékek” dimenziót az „Ural” elemen, és ki kell bontania a megfelelő részhalmazt (alkockát) a kocka.
  • Rizs. 2. OLAP kocka szelet

    Forgás(3. ábra) - a jelentésben vagy a megjelenített oldalon bemutatott mérések helyének megváltoztatásának művelete. Például egy elforgatási művelet magában foglalhatja egy táblázat sorainak és oszlopainak átrendezését. Ezenkívül az adatkocka elforgatásával a táblázatból kimaradt méretek a helyükre kerülnek a megjelenített oldalon lévő méretekkel, és fordítva.

    Általában minden szakember tudja, mi az OLAP ma. Legalábbis az „OLAP” és a „többdimenziós adatok” fogalma szorosan összefügg a fejünkben. Mindazonáltal azt a tényt, hogy ez a téma ismét felvetődik, remélem, az olvasók többsége jóváhagyja, mert ahhoz, hogy valaminek a gondolata idővel ne avuljon el, időnként kommunikálni kell okos emberek vagy olvass cikkeket egy jó kiadványban...

    Adattárházak (az OLAP helye a vállalat információs struktúrájában)

    Az „OLAP” kifejezés elválaszthatatlanul kapcsolódik az „adattárház” (Data Warehouse) kifejezéshez.

    Íme az adattárház „alapító atyja”, Bill Inmon által megfogalmazott definíció: „Az adattárház egy domain-specifikus, időhöz kötött, megváltoztathatatlan adatgyűjtemény, amely támogatja a vezetői döntéshozatalt.”

    A raktárban lévő adatok operációs rendszerekből (OLTP-rendszerekből) származnak, amelyeket az üzleti folyamatok automatizálására terveztek. Ezenkívül a tárat külső forrásokból, például statisztikai jelentésekből lehet feltölteni.

    Miért építsünk adattárházakat – elvégre nyilvánvalóan redundáns információkat tartalmaznak, amelyek már adatbázisokban vagy operációs rendszer fájlokban „élnek”? A válasz lehet rövid: lehetetlen vagy nagyon nehéz közvetlenül elemezni az operációs rendszerekből származó adatokat. Ennek számos oka lehet, többek között az adatok töredezettsége, különböző DBMS formátumokban és különböző „sarokban” való tárolása. vállalati hálózat. De még ha egy vállalat minden adatát egy központi adatbázis-kiszolgálón tárolja is (ami rendkívül ritka), az elemző szinte biztosan nem fogja megérteni a bonyolult, néha zavaros struktúrákat. A szerzőnek elég szomorú tapasztalata van arról, hogy az éhes elemzőket operatív rendszerekből származó „nyers” adatokkal próbálta „etetni” – ez „túl sok volt nekik”.

    A repository célja tehát az, hogy egy helyen, egyszerű, érthető szerkezetben biztosítsa az elemzéshez szükséges „alapanyagokat”. Ralph Kimball "The Data Warehouse Toolkit" című könyvének előszavában azt írja, hogy ha az olvasó a teljes könyv elolvasása után csak egy dolgot ért meg - nevezetesen, hogy a raktár felépítésének egyszerűnek kell lennie -, akkor a szerző megfontolja feladat elvégezve.

    Van egy másik ok is, ami indokolja egy különálló tár megjelenését - összetett elemző lekérdezések működési információk lassíts aktuális munka a táblák hosszú távú blokkolása és a szerver erőforrások lefoglalása.

    Véleményem szerint a repository nem feltétlenül jelent hatalmas adathalmozódást - a lényeg az, hogy kényelmes legyen az elemzéshez. Általánosságban elmondható, hogy van egy külön kifejezés a kis tárolóhelyekre - Data Marts (adatkioszkok), de orosz gyakorlatunkban nem gyakran hallani.

    OLAP - kényelmes elemző eszköz

    A központosítás és a kényelmes strukturálás nem minden, amire egy elemzőnek szüksége van. Még mindig szüksége van egy eszközre az információk megtekintésére és megjelenítésére. A hagyományos jelentések, még azok is, amelyek egyetlen adattárra épülnek, egyvalami hiányzik: a rugalmasság. Nem lehet őket "csavarni", "kibontani" vagy "összecsukni", hogy az adatok kívánt nézetét kapják. Természetesen hívhatsz egy programozót (ha jönni akar), és ő (ha nincs elfoglalva) elég gyorsan készít új jelentést - mondjuk egy órán belül (írom és nem hiszem el) én magam – az életben nem történik ilyen gyorsan; adjunk neki három órát). Kiderült, hogy egy elemző naponta legfeljebb két ötletet tud tesztelni. És ő (ha jó elemző) óránként több ilyen ötlettel is előállhat. És minél több adat „szeletét” és „szeletét” látja az elemző, annál több ötlete van, amelyek viszont egyre több „szeletet” igényelnek az ellenőrzéshez. Ha lenne olyan eszköze, amellyel egyszerűen és kényelmesen bővítheti és összecsukhatja az adatokat! Az OLAP ilyen eszközként működik.

    Bár az OLAP nem szükséges attribútuma egy adattárházban, egyre gyakrabban használják a raktárban felhalmozott információk elemzésére.

    A tipikus tárolóban található komponensek az ábrán láthatók. 1.

    Rizs. 1. Adattárház szerkezete

    A működési adatokat különféle forrásokból gyűjtik, tisztítják, integrálják és egy relációs tárolóban tárolják. Sőt, már elérhetőek a különféle jelentéskészítő eszközökkel történő elemzéshez. Ezután az adatok (részben vagy egészben) előkészítésre kerülnek az OLAP elemzéshez. Betölthetők egy speciális OLAP adatbázisba, vagy relációs tárolóban tárolhatók. Legfontosabb eleme a metaadatok, azaz az adatok szerkezetére, elhelyezésére és átalakítására vonatkozó információk. Ezeknek köszönhetően a különböző tárolóelemek hatékony interakciója biztosított.

    Összefoglalva, az OLAP-ot a raktárban felhalmozott adatok többdimenziós elemzésére szolgáló eszközkészletként határozhatjuk meg. Elméletileg az OLAP eszközök közvetlenül alkalmazhatók az operatív adatokra vagy azok pontos másolataira (hogy ne zavarják az operatív felhasználókat). De ezzel azt kockáztatjuk, hogy rálépünk a fentebb már leírt gereblyére, azaz elkezdjük elemezni az elemzésre közvetlenül nem alkalmas működési adatokat.

    Az OLAP definíciója és alapfogalmai

    Először is fejtsük meg: az OLAP az Online Analytical Processing, azaz az operatív adatelemzés. Az OLAP 12 meghatározó alapelvét 1993-ban E. F. Codd, a relációs adatbázisok „feltalálója” fogalmazta meg. Később a definícióját átdolgozták az úgynevezett FASMI tesztté, amely megköveteli, hogy az OLAP alkalmazás lehetővé tegye a megosztott többdimenziós információk gyors elemzését ().

    FASMI teszt

    Gyors(Gyors) – az elemzést egyformán gyorsan kell elvégezni az információ minden aspektusára vonatkozóan. Az elfogadható válaszidő 5 másodperc vagy kevesebb.

    Elemzés(Elemzés) - lehetővé kell tenni az alkalmazásfejlesztő által előre meghatározott vagy a felhasználó által szabadon definiált alapvető numerikus és statisztikai elemzések elvégzését.

    Megosztva(Megosztott) - sok felhasználónak hozzáféréssel kell rendelkeznie az adatokhoz, miközben ellenőrizni kell a bizalmas információkhoz való hozzáférést.

    Többdimenziós A (többdimenziós) az OLAP fő, leglényegesebb jellemzője.

    Információ(Információ) - az alkalmazásnak hozzá kell férnie minden szükséges információhoz, függetlenül annak mennyiségétől és tárolási helyétől.

    OLAP = Többdimenziós nézet = Kocka

    Az OLAP kényelmes, gyors eszközt biztosít az üzleti információk elérésére, megtekintésére és elemzésére. A felhasználó természetes, intuitív adatmodellt kap, többdimenziós kockák (Cubes) formájában rendezve azokat. A többdimenziós koordinátarendszer tengelyei a vizsgált üzleti folyamat fő jellemzői. Például értékesítés esetén ez lehet termék, régió, vevő típusa. Az idő az egyik dimenzió. A tengelyek metszéspontjain - dimenziók (Dimensions) - a folyamatot mennyiségileg jellemző adatok - intézkedések (Measures) találhatók. Ez lehet darabos vagy pénzben kifejezett értékesítési mennyiség, készlet egyenleg, költségek stb. Az információkat elemző felhasználó „felvághatja” a kockát különböző irányokba, összefoglaló (például évenkénti), vagy éppen ellenkezőleg, részletes (hetenkénti) információkat kap, és egyéb manipulációkat hajt végre, amelyek az elemzési folyamat során eszébe jutnak.

    ábrán látható háromdimenziós kockában mérve. A 2. ábrán az értékesítési mennyiségek, méretként pedig az idő, a termék és az üzlet használatosak. A mérések meghatározott csoportosítási szinteken jelennek meg: a termékek kategóriánként, az üzletek országonként, a tranzakciók időzítési adatai pedig hónaponként vannak csoportosítva. Kicsit később részletesebben megvizsgáljuk a csoportosítás (hierarchia) szintjeit.


    Rizs. 2. Kocka példa

    Kocka "vágása".

    Még egy háromdimenziós kockát is nehéz megjeleníteni a számítógép képernyőjén, hogy a kívánt mértékek értékei láthatóak legyenek. Mit mondhatunk a háromnál több dimenziójú kockákról? A kockában tárolt adatok megjelenítéséhez általában jól ismert kétdimenziós, azaz táblázatos nézeteket használnak összetett hierarchikus sor- és oszlopfejlécekkel.

    A kocka kétdimenziós ábrázolása úgy érhető el, ha egy vagy több tengelyen (dimenzión) átvágjuk: kettő kivételével minden dimenzió értékét rögzítjük, és egy szabályos kétdimenziós táblázatot kapunk. A táblázat vízszintes tengelye (oszlopfejlécek) az egyik dimenziót, a függőleges tengely (sorfejlécek) egy másikat, a táblázat cellái pedig a mértékek értékeit képviselik. Ebben az esetben egy mértékegységet tulajdonképpen az egyik dimenziónak tekintünk - vagy kiválasztunk egy mértéket a megjelenítéshez (majd két dimenziót is elhelyezhetünk a sor- és oszlopfejlécekben), vagy több mértéket is megjelenítünk (majd az egyik a táblázat tengelyeit a mértékek nevei foglalják el, a többit pedig az egyetlen „nem vágott” dimenzió értékei).

    Vessen egy pillantást az ábrára. 3 - itt van a kocka kétdimenziós szelete egy mértékhez - Eladási egység (eladott darabok) és két "vágatlan" méret - Store (Store) és Time (Time).


    Rizs. 3. 2D kockaszelet egy mértékhez

    ábrán. A 4. ábra csak egy „vágatlan” dimenziót mutat – az üzletet, de több mérőszám értékeit is megjeleníti – egységértékesítés (eladott egységek), bolti értékesítés (eladási összeg) és bolti költség (üzletköltség).


    Rizs. 4. 2D kockaszelet több méréshez

    Egy kocka kétdimenziós ábrázolása akkor is lehetséges, ha kettőnél több dimenzió marad „vágatlan”. Ebben az esetben a „kivágott” kocka két vagy több mérete a szelettengelyekre (sorokra és oszlopokra) kerül - lásd az ábrát. 5.


    Rizs. 5. 2D kockaszelet több dimenzióval egy tengelyen

    Címkék

    A méretek mentén "lerakott" értékeket tagoknak vagy címkéknek nevezzük. A címkék mind a kocka „kivágására”, mind a kiválasztott adatok korlátozására (szűrésére) szolgálnak – amikor egy „vágatlan” dimenzióban nem az összes értékre vagyunk kíváncsiak, hanem azok egy részhalmazára, például három városra. több tucat közül. A címkeértékek a 2D kockanézetben sor- és oszlopfejlécként jelennek meg.

    Hierarchiák és szintek

    A címkék egy vagy több szintből álló hierarchiákba kombinálhatók. Például az Áruház dimenzió címkéi természetesen szintekkel hierarchiába vannak csoportosítva:

    Ország

    Állapot

    Város

    Bolt.

    Az összesített értékeket a hierarchia szintjei alapján számítják ki, például az USA ("Ország" szint) vagy Kalifornia ("Állam" szint) értékesítési volumene. Egy dimenzióban több hierarchia is megvalósítható – mondjuk időre: (év, negyed, hónap, nap) és (év, hét, nap).

    Az OLAP alkalmazások architektúrája

    Minden, amit fentebb az OLAP-ról elmondtunk, alapvetően az adatok többdimenziós megjelenítésére vonatkozott. Az adatok tárolásának módja durván szólva nem érinti sem a végfelhasználót, sem az ügyfél által használt eszköz fejlesztőit.

    Az OLAP alkalmazások többdimenzióssága három szintre osztható:

    • Többdimenziós adatábrázolás - végfelhasználói eszközök, amelyek többdimenziós megjelenítést és adatkezelést biztosítanak; réteg többdimenziós ábrázolás elvonatkoztat az adatok fizikai szerkezetétől, és többdimenziósnak érzékeli az adatokat.
    • Többdimenziós feldolgozás - eszköz (nyelv) többdimenziós lekérdezések megfogalmazására (hagyományos relációs SQL nyelv itt alkalmatlannak bizonyul) és egy ilyen kérés feldolgozására és végrehajtására képes processzor.
    • A többdimenziós tárolás az adatok fizikai rendszerezésének eszköze, amely biztosítja a többdimenziós lekérdezések hatékony végrehajtását.

    Az első két szint minden OLAP-eszközben kötelező. A harmadik szint, bár széles körben elterjedt, nem szükséges, mivel a többdimenziós reprezentáció adatai a közönséges relációs struktúrákból kinyerhetők; A többdimenziós lekérdezésfeldolgozó ebben az esetben a többdimenziós lekérdezéseket SQL lekérdezésekké fordítja, amelyeket a relációs DBMS hajt végre.

    Egyes OLAP-termékek általában egy többdimenziós adatmegjelenítési eszköz, egy OLAP-kliens (például Pivot Tables Excel 2000-ben a Microsofttól vagy ProClarity a Knosys-től), vagy egy többdimenziós szerver DBMS, egy OLAP-kiszolgáló (például Oracle). Express Server vagy Microsoft OLAP Services).

    A többdimenziós feldolgozóréteg általában az OLAP-kliensbe és/vagy az OLAP-kiszolgálóba van beépítve, de tiszta formában is elkülöníthető, például a Microsoft Pivot Table Service összetevőjével.

    A többdimenziós adattárolás technikai vonatkozásai

    Ahogy fentebb említettük, az OLAP elemző eszközök közvetlenül is kinyerhetnek adatokat a relációs rendszerekből. Ez a megközelítés vonzóbb volt abban az időben, amikor az OLAP-kiszolgálók nem szerepeltek a vezető DBMS-gyártók árlistáiban. De ma már az Oracle, az Informix és a Microsoft teljes értékű OLAP szervereket kínál, és még azok az informatikai vezetők is megvásárolhatják (vagy inkább kérhetik, hogy a különböző gyártóktól származó szoftverek „állatkertjét” alakítsák ki hálózatukban). a vállalatvezetés ) A fő adatbázis-kiszolgálóval azonos márkájú OLAP-kiszolgáló.

    Az OLAP-kiszolgálók vagy többdimenziós adatbázis-kiszolgálók többféleképpen tárolhatják többdimenziós adataikat. Mielőtt megvizsgálnánk ezeket a módszereket, beszélnünk kell egy olyan fontos szempontról, mint az egységek tárolása. A helyzet az, hogy bármely adattárházban - mind a hétköznapi, mind a többdimenziós - az operációs rendszerekből kinyert részletes adatok mellett összefoglaló mutatókat (összesített mutatók, összesítések) is tárolnak, mint például az értékesítési mennyiségek összege havi bontásban, árukategóriánként stb. Az aggregátumokat kifejezetten a lekérdezések végrehajtásának felgyorsítása céljából tárolják. Hiszen egyrészt általában nagyon nagy mennyiségű adat halmozódik fel a raktárban, másrészt az elemzőket a legtöbb esetben nem a részletes, hanem az általánosított mutatók érdeklik. És ha minden alkalommal több millió egyedi eladást kellene összeadni az év összértékesítésének kiszámításához, a sebesség valószínűleg elfogadhatatlan lenne. Ezért az adatok többdimenziós adatbázisba való betöltésekor az összes összes mutatót vagy azok egy részét kiszámítja és elmenti.

    De mint tudod, mindenért fizetni kell. Az összefoglaló adatokra vonatkozó kérések feldolgozásának gyorsasága érdekében pedig fizetni kell az adatmennyiség növekedéséért és a betöltési idő növekedéséért. Sőt, a mennyiség növekedése szó szerint katasztrofálissá válhat - az egyik publikált szabványosított tesztek 10 MB eredeti adat teljes aggregátumszámítása 2,4 GB-ot igényelt, azaz az adatok 240-szeresére nőttek! Az aggregátumok kiszámításakor az adatok „duzzadásának” mértéke a kocka dimenzióinak számától és e dimenziók szerkezetétől függ, vagyis az „apák” és „gyermekek” számának arányától a különböző mérési szinteken. Az aggregátumok tárolásának problémájának megoldására néha összetett sémákat használnak, amelyek lehetővé teszik a lekérdezés teljesítményének jelentős növekedését, amikor nem minden lehetséges aggregátumot számítanak ki.

    Most az információ tárolásának különféle lehetőségeiről. Mind a granulált adatok, mind az aggregátumok tárolhatók relációs vagy többdimenziós struktúrákban. A többdimenziós tárolás lehetővé teszi az adatok többdimenziós tömbként történő kezelését, amely biztosítja a teljes mutatók egyformán gyors számítását és a különböző többdimenziós transzformációkat bármely dimenzió mentén. Néhány évvel ezelőtt az OLAP termékek támogatták a relációs vagy többdimenziós tárolást. Ma általában ugyanaz a termék biztosítja mindkét ilyen típusú tárolást, valamint egy harmadik típust - vegyes. A következő feltételek érvényesek:

    • MOLAP(Többdimenziós OLAP) – mind a részletes adatok, mind az aggregátumok egy többdimenziós adatbázisban tárolódnak. Ebben az esetben a legnagyobb redundanciát kapjuk, mivel a többdimenziós adatok teljes mértékben tartalmaznak relációs adatokat.
    • ROLAP(Relációs OLAP) - a részletes adatok ott maradnak, ahol eredetileg „éltek” - a relációs adatbázisban; az aggregátumokat ugyanabban az adatbázisban tárolják, speciálisan létrehozott szolgáltatási táblákban.
    • HOLAP(Hibrid OLAP) - a részletes adatok a helyükön maradnak (egy relációs adatbázisban), az aggregátumokat pedig egy többdimenziós adatbázisban tárolják.

    Ezen módszerek mindegyikének megvannak a maga előnyei és hátrányai, és ezeket a feltételektől függően kell használni - az adatmennyiség, a relációs DBMS teljesítménye stb.

    Ha többdimenziós struktúrákban tárolja az adatokat, az üres értékek tárolása miatt lehetséges a "felfúvódás" probléma. Hiszen ha egy többdimenziós tömbben a dimenziócímkék minden lehetséges kombinációja számára le van foglalva a hely, de valójában csak egy kis része van kitöltve (például számos terméket csak kis számú régióban értékesítenek), akkor a legtöbb kocka üres lesz, bár a hely foglalt lesz. A modern OLAP termékek képesek megbirkózni ezzel a problémával.

    Folytatjuk. A jövőben a vezető gyártók által gyártott konkrét OLAP termékekről lesz szó.

    2011.07.04. Derek Comingore

    Ha dolgozott bármilyen technológiával kapcsolatos területen, valószínűleg hallotta már a "kocka" kifejezést; azonban a legtöbb átlagos adatbázis-adminisztrátor és fejlesztő nem dolgozott ezekkel az objektumokkal. A kockák hatékony adatarchitektúrát biztosítanak a többdimenziós információk gyors összesítéséhez. Ha szervezetének nagy mennyiségű adatot kell elemeznie, akkor ideális megoldás egy kocka lesz

    Mi az a kocka?

    A relációs adatbázisokat úgy tervezték, hogy több ezer egyidejű tranzakciót kezeljenek, miközben megőrzik a teljesítményt és az adatok integritását. A relációs adatbázisok tervezésüknél fogva nem hatékonyak nagy mennyiségű adat összesítésében és keresésében. Nagy mennyiségű adat összesítéséhez és visszaadásához egy relációs adatbázisnak halmazalapú lekérdezést kell kapnia, amelynek információit a rendszer menet közben gyűjti össze és összesíti. Az ilyen relációs lekérdezések nagyon drágák, mert több csatlakozásra támaszkodnak és összesített függvények; Az összesített relációs lekérdezések különösen hatástalanok, ha nagy mennyiségű adattal dolgozik.

    A kockák többdimenziós entitások, amelyeket a relációs adatbázisok ezen hiányosságainak kezelésére terveztek. A kocka használatával olyan adatstruktúrát biztosíthat a felhasználóknak, amely gyors választ ad a nagy összesítési volumenű lekérdezésekre. A kockák ezt az „összesítési varázslatot” úgy hajtják végre, hogy először több dimenzióban összesítik az adatokat (dimenziókat). A kocka elő-aggregálása általában a feldolgozás során történik. A kocka feldolgozásakor előre kiszámított adatösszesítéseket hoz létre, amelyek bináris formában kerülnek tárolásra a lemezen.

    A kocka a központi adatstruktúra operációs rendszer SQL Server Analytical Services (SSAS) OLAP adatelemzés. A kockák általában egy dimenziós modellnek nevezett mögöttes relációs adatbázisból épülnek fel, de különálló technikai entitások. Logikailag a kocka egy olyan adattárház, amely méretekből (dimenziók) és mérésekből (mérésekből) áll. A dimenziók leíró jellemzőket és hierarchiákat tartalmaznak, míg a dimenziók a dimenziókban leírt tények. A dimenziók logikai kombinációkba vannak csoportosítva, amelyeket dimenziócsoportoknak nevezünk. A méreteket a mérési csoportokhoz kapcsolja egy jellemző - a részletezettség - alapján.

    BAN BEN fájlrendszer a kocka összekapcsolt bináris fájlok sorozataként van megvalósítva. A kocka bináris architektúrája lehetővé teszi nagy mennyiségű többdimenziós adat gyors visszakeresését.

    Említettem, hogy a kockák egy mögöttes relációs adatbázisból, az úgynevezett dimenziós modellből épülnek fel. A dimenziómodell relációs táblázatokat tartalmaz (tény és dimenzió), amelyek összekötik a kocka entitásokkal. A ténytáblák olyan méreteket tartalmaznak, mint az eladott termék mennyisége. A dimenziótáblák olyan leíró attribútumokat tárolnak, mint a terméknevek, dátumok és alkalmazottak nevei. A ténytáblák és a dimenziótáblák általában elsődleges idegenkulcs-megszorításokon keresztül kapcsolódnak egymáshoz, a ténytáblában található idegen kulcsokkal (ez a relációs kapcsolat a fent tárgyalt kocka granularitási attribútumhoz kapcsolódik). Ha a dimenziótáblákat közvetlenül egy ténytáblához kapcsolják, akkor csillagséma jön létre. Ha a dimenziótáblázatok nincsenek közvetlenül összekapcsolva egy ténytáblázattal, az eredmény egy hópehelyséma.

    Kérjük, vegye figyelembe, hogy a méretmodelleket az alkalmazás szerint osztályozzák. Az adatpiac egy olyan dimenziós modell, amelyet egyetlen üzleti folyamathoz, például értékesítéshez vagy készletkezeléshez terveztek. Az adattárház egy dimenziós modell, amelyet az üzleti folyamatok összetevőinek rögzítésére terveztek, így megkönnyíti az üzleti folyamatok közötti elemzést.

    Szoftverkövetelmények

    Most, hogy már rendelkezik alapvető ismeretekkel arról, hogy mik azok a kockák, és miért fontosak, bekapcsolom a fogaskerekeket, és lépésről lépésre végigvezetem az első kocka SSAS használatával történő megépítésében. Van néhány alapvető összetevő szoftver, amire szüksége lesz, ezért mielőtt elkezdené az első kocka felépítését, győződjön meg arról, hogy rendszere megfelel a követelményeknek.

    Példa Internet Sales kockám az AdventureWorksDW 2005 tesztadatbázisból lesz felépítve, a tesztadatbázisban található táblák egy részhalmazából építem fel a tesztkockát, amely hasznos lesz az internetes értékesítési adatok elemzéséhez. Az 1. ábra az adatbázistáblák alapvető elrendezését mutatja. Mivel a 2005-ös verziót használom, követheti az utasításaimat az SQL Server 2005 vagy az SQL Server 2008 használatával.

    1. ábra: Az Adventure Works Internet Sales adatpiaci részhalmaza

    Az Adventure WorksDW 2005 képzési adatbázisa megtalálható a CodePlex weboldalán: msftdbprodsamples.codeplex.com. Keresse meg a „Az SQL Server 2005 termékminta adatbázisai továbbra is elérhetők” hivatkozást (http://codeplex.com/MSFTDBProdSamples/Release/ProjectReleases.aspx?ReleaseId=4004). A képzési adatbázis az AdventureWorksBI.msi fájlban található (http://msftdbprodsamples.codeplex.com/releases/view/4004#DownloadId=11755).

    Amint már említettük, hozzáféréssel kell rendelkeznie az SQL Server 2008 vagy 2005 egy példányához, beleértve az SSAS és a Business Intelligence Development Studio (BIDS) összetevőit. Az SQL Server 2008-at fogom használni, így az SQL Server 2005 használatakor apró eltéréseket tapasztalhat.

    SSAS projekt létrehozása

    Az első dolog, amit meg kell tennie, egy SSAS-projekt létrehozása a BIDS segítségével. Keresse meg a BIDS elemet a Start menüben, majd a Microsoft SQL Server 2008/2005 menü SQL Server Business Intelligence Development Studio alpontjában. A gombra kattintva elindítja a BIDS-t az alapértelmezett kezdőképernyővel. Teremt új projekt SSAS a Fájl, Új, Projekt kiválasztásával. Megjelenik az Új projekt párbeszédpanel, amelyet az 1. ábra mutat be. Válassza ki az Analysis Services Project mappát, és állítsa be a projekt leírását az SQLMAG_MyFirstCube értékre. Kattintson az OK gombra.

    A projekt létrehozása után kattintson rá jobb gombbal a Solution Explorerben, és válassza ki helyi menü Tulajdonságok elem. Most válassza ki a Bevezetés részt az SQLMAG_MyFirstCube: Property Pages párbeszédpanel bal oldalán, és tekintse át a Target Server and Database beállítási beállításait, ahogy a 2. ábra mutatja. Ha elosztott SQL Server környezetben dolgozik, meg kell felelnie a Target Server tulajdonság a kiszolgáló nevével, amelyre telepíteni kívánja. Kattintson az OK gombra, ha elégedett az SSAS-projekt telepítési beállításaival.

    Az adatforrás meghatározása

    Az első objektum, amelyet létre kell hoznia, az adatforrás. Az adatforrás-objektum biztosítja a kockához és a kockához társított objektumok felépítéséhez használt sémát és adatokat. Adatforrás-objektum létrehozásához a BIDS-ben használja a Forrásvarázslót Adat Forrás varázsló.

    Indítsa el az Adatforrás varázslót úgy, hogy jobb gombbal kattintson az Adatforrás mappára a Solution Explorer panelen, és válassza az Új adatforrás lehetőséget. Látni fogja, hogy az SSAS-objektumok BIDS-ben történő létrehozása fejlesztő jellegű. A varázsló először végigvezeti az objektum létrehozási folyamatán és az általános beállításokon. Ezután megnyitja az eredményül kapott SSAS-objektumot a tervezőben, és szükség esetén részletesen testreszabja. Miután túljutott a prompt képernyőn, az Új gombra kattintva határozzon meg új adatkapcsolatot. Válasszon ki és hozzon létre egy új kapcsolatot a Native OLEDB\SQL Server Native Client 10 alapján, amely a kívántra mutat SQL szerver A kívánt adatbázispéldány tulajdonosa. Az SQL Server környezeti beállításaitól függően Windows vagy SQL Server hitelesítést is használhat. Kattintson a Kapcsolat tesztelése gombra, hogy megbizonyosodjon arról, hogy helyesen azonosította az adatbázis-kapcsolatot, majd kattintson az OK gombra.

    Ezután következik az Impersonation Information, amely az adattársításhoz hasonlóan az SQL Server környezet felépítésétől függ. A jogosultságkölcsönzés az a biztonsági környezet, amelyre az SSAS az objektumai feldolgozása során támaszkodik. Ha a telepítést elsődleges, egyetlen kiszolgálón (vagy laptopon) kezeli, ahogy azt feltételezem a legtöbb olvasó, egyszerűen kiválaszthatja a Szolgáltatásfiók használata lehetőséget. Kattintson a Tovább gombra az Adatforrás varázsló befejezéséhez, és állítsa be az AWDW2005-öt adatforrásnévként. Nagyon kényelmes, hogy ezt a módszert tesztelési célokra használhatod, de valódi éles környezetben nem ez a legmegfelelőbb legjobb gyakorlat- használjon szolgáltatási fiókot. Jobb a domain megadása Fiókok SSAS csatlakozási jogokat kölcsönözni az adatforráshoz.

    Adatforrás nézet

    Az Ön által meghatározott adatforráshoz az SSAS kockaépítési folyamat következő lépése egy adatforrás-nézet (DSV) létrehozása. A DSV lehetővé teszi a kocka által elvárt séma és az alapul szolgáló adatbázis sémájának elkülönítését. Ennek eredményeként a DSV használható a mögöttes relációs séma kiterjesztésére kocka felépítésekor. A DSV néhány kulcsfontosságú funkciója az adatforrás-sémák kiterjesztésére: elnevezett lekérdezések, logikai kapcsolatok a táblák között és elnevezett számított oszlopok.

    Menjünk tovább, kattintson a jobb gombbal a DSV mappára, és válassza az Új adatforrás nézet lehetőséget az Új DSV nézet létrehozása varázsló elindításához. A párbeszédpanel Adatforrás kiválasztása lépésében válasszon ki egy relációs adatbázis-kapcsolatot, majd kattintson a Tovább gombra. Válassza ki a FactInternetSales, DimProduct, DimTime, DimCustomer táblákat, és kattintson a jobbra nyíl gombra, hogy áthelyezze ezeket a táblázatokat az Included oszlopba. Végül kattintson a Tovább gombra, és fejezze be a varázslót az alapértelmezett név elfogadásával és a Befejezés gombra kattintva.

    Ezen a ponton rendelkeznie kell egy DSV-nézettel a Solution Explorer Data Source Views mappájában. Kattintson duplán az új DSV-re a DSV-tervező elindításához. Mind a négy táblázatot látnia kell egy adott DSV-hez, ahogy az a 2. ábrán látható.

    Adatbázis dimenziók létrehozása

    Amint azt fentebb kifejtettem, a dimenziók a dimenziók és hierarchiák leíró jellemzőit biztosítják, amelyek lehetővé teszik a részletezettségi szint feletti összesítést. Fontos megérteni a különbséget az adatbázis-dimenzió és a kocka dimenzió között: az adatbázisból származó dimenziók biztosítják a mögöttes dimenzióobjektumokat a kocka több dimenziójához, amelyeket a kocka felépítéséhez használunk.

    Az adatbázis- és kockaméretek elegáns megoldást kínálnak a „szerepdimenziók” néven ismert koncepcióra. A szerepkör alapú dimenziók akkor használatosak, ha egy kockában egyetlen dimenziót többször kell használni. A dátum tökéletes példa ebben a kockapéldányban: egyetlen dátumdimenziót hoz létre, és egyszer hivatkozik rá minden olyan dátumhoz, amelyre vonatkozóan az online értékesítést elemezni kívánja. A naptári dátum lesz az első dimenzió, amelyet létrehoz. Kattintson a jobb gombbal a Dimensions mappára a Megoldáskezelőben, és válassza az Új dimenzió lehetőséget a Méretezés varázsló elindításához. Válassza a Meglévő táblázat használata lehetőséget, majd kattintson a Tovább gombra a Létrehozási módszer kiválasztása lépésben. A Forrásinformáció megadása lépésben adja meg a DimTime táblát a Fő tábla legördülő listában, majd kattintson a Tovább gombra. Most a Dimenzióattribútumok kiválasztása lépésben ki kell választania az idődimenzió attribútumait. Válassza ki az egyes attribútumokat, ahogy a 3. ábra mutatja.

    Kattintson a Tovább gombra. Utolsó lépésként írja be a Dim Date a Név mezőbe, majd kattintson a Befejezés gombra a Méretezés varázsló befejezéséhez. Most látnia kell az új Dim Date dimenziót a Dimensions mappában a Solution Explorerben.

    Ezután használja a Méretezés varázslót a termék- és vevődimenziók létrehozásához. Kövesse ugyanazokat a lépéseket az alapdimenzió létrehozásához, mint korábban. Amikor a Dimenzióvarázslóval dolgozik, győződjön meg arról, hogy az összes lehetséges attribútumot kijelölte a Dimenzióattribútumok kiválasztása lépésben. A többi beállítás alapértelmezett értékei megfelelőek egy tesztkocka példányhoz.

    Internetes értékesítési kocka létrehozása

    Most, hogy elkészítette az adatbázis méreteit, megkezdheti a kocka felépítését. A Megoldáskezelőben kattintson a jobb gombbal a Kockák mappára, és válassza az Új kocka lehetőséget a Kockavarázsló elindításához. A Létrehozási módszer kiválasztása ablakban válassza a Meglévő táblák használata lehetőséget. Válassza ki a FactInternetSales táblát a mérési csoporthoz a Mérési csoporttáblázatok kiválasztása lépésben. Törölje a jelet a Promóciós kulcs, a Pénznem kulcsa, az Értékesítési terület kulcsa és a Revíziószám dimenziók melletti jelölőnégyzetekből a Méretek kiválasztása lépésben, majd kattintson a Tovább gombra.

    A Meglévő dimenziók kiválasztása képernyőn győződjön meg arról, hogy az összes meglévő adatbázisdimenzió ki van választva kockaméretként való használatra. Mivel szeretném ezt a kockát a lehető legegyszerűbben tartani, törölje a FactInternetSales dimenzió kijelölését az Új dimenziók kiválasztása lépésben. A FactInternetSales dimenzió kijelölve hagyásával létrehozza az úgynevezett ténydimenziót vagy degenerált dimenziót. A ténydimenziók olyan dimenziók, amelyeket a hagyományos dimenziótáblákkal szemben egy alapvető ténytáblázat használatával hoztak létre.

    Kattintson a Tovább gombra a varázsló befejezése lépéshez való lépéshez, és írja be a "My First Cube" (Első kockám) lehetőséget a Kocka neve mezőbe. Kattintson a Befejezés gombra a Kocka létrehozása varázsló folyamatának befejezéséhez.

    Kocka bővítése és feldolgozása

    Most készen áll az első kocka üzembe helyezésére és feldolgozására. Kattintson a jobb gombbal az új kocka ikonra a Solution Explorerben, és válassza a Folyamat lehetőséget. Megjelenik egy üzenetdoboz, amely szerint a tartalom elavultnak tűnik. Kattintson az Igen gombra az új kockának a cél SSAS-kiszolgálóra történő telepítéséhez. Amikor telepít egy kockát, akkor elküldi XML fájl az Analisis (XMLA) számára a cél SSAS-kiszolgálóhoz, amely magán a szerveren hoz létre egy kockát. Ahogy már említettük, a kocka feldolgozása feltölti a bináris fájljait a lemezen a fő forrásból származó adatokkal, valamint a hozzáadott további metaadatokkal (kocka méretei, méretei és beállításai).

    A telepítési folyamat befejezése után egy új Process Cube párbeszédpanel jelenik meg. Kattintson a Futtatás gombra a kocka feldolgozásának megkezdéséhez, amely megnyílik a Folyamat előrehaladása ablakkal. Ha a feldolgozás befejeződött, kattintson a Bezárás gombra (kétszer a két párbeszédpanel bezárásához) a kocka telepítési és feldolgozási folyamatának befejezéséhez.

    Most megépítette, telepítette és feldolgozta első kockáját. Ezt az új kockát úgy tekintheti meg, ha a Solution Explorer ablakban jobb gombbal rákattint, és kiválasztja a Tallózás menüpontot. Húzza a méreteket a kimutatás közepére, a méretattribútumokat pedig sorokra és oszlopokra az új kocka felfedezéséhez. Figyelje meg, milyen gyorsan dolgozza fel a kocka a különböző összesítő lekérdezéseket. Most már értékelheti az OLAP kocka korlátlan erejét, és ezáltal üzleti értékét.

    Derek Comingore ( [e-mail védett]) a B. I. Voyage vezető építésze, amely Microsoft Partner státusszal rendelkezik az üzleti elemzés területén. SQL Server MVP címmel és számos Microsoft-tanúsítvánnyal rendelkezik





  • 
    Top