Üzleti igények kielégítése az SQL Server 2000 Analysis (OLAP) Services segítségével Kővári Attila OLAP csoport vezető [email protected] NOVOSYS kft. http://www.novosys.hu Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az Interneten keresztül … 10 évvel ezelőtt Valamit ki kell találni Túl sok adat - túl kevés információ Do while van türelmem Kérdés Riport End A vezetőség a válaszokat tegnapra kéri A megoldás: A cél: Egy olyan technológia, vagy adatmodell kialakítása amely eleget tesz a következő követelményeknek Gyorsaság Felhasználó barátság Elemzés/Döntés központúság Új fogalom született: OLAP Mi az OLAP? 2. A szó jelentése Betűszó: On-Line Analytical Processing Az “On Line” kifejezés jelentése az OLAP szóban: OLAP ≠ On Line adathozzáférés a tranzakciós rendszerekhez: OLAP = Egy tetszőleges döntés meghozatalához szükséges információ lekérdezése nem lehet több, mint néhány másodperc A gyorsaság megvalósítása Ahhoz, hogy a gyorsaság megvalósuljon szakítanunk kell a meglévő adatmodellekkel, az elemzéshez szükséges információkat egy új helyen vagy modellben kell tárolni A gyorsaság megvalósítása három lehetőség I. Új adatmodellek kialakítása relációs alapokon (Csillag és hópihe sémák) II. Új tárolási struktúra kialakítása. Kialakult a többdimenziós adatbázis III. A kettő előnyeit ötvöző új technológia kialakítása ROLAP, MOLAP(OLAP), HOLAP A gyorsaság megvalósítása Szeparált adatbázisok Működtető rendszerek Döntés támogató (OLAP) Rendszerek Az elemzéshez Szükséges információk átemelése Elemi tranzakciók Egyirányú, periódikusan ismétlődő, ellenőrzött folyamat Elemi és aggregált adatok Az elemzés központúság megvalósítása 1. Technikai követelmények Csak és kizárólag a döntéshozáshoz és elemzéshez szükséges információk tárolása Aggregáltság idősor Az elemzés központúság megvalósítása 1. Funkcionális követelmények Többdimenziós BelföldKülföld Össz. Vevő nézet Szeletelés 300 330 Összes Lefúrás cikk 150 160 Rotálás Almaíz 100 110 Beágyazás Narancsíz 50 60 360 390 170 180 120 130 70 80 Q3 Q4 Barackíz Q1 Q2 Az elemzés központúság megvalósítása 2. Adatbázis Objektumok Adatbázis Adatkocka Dimenziók Hierarchiák Mértékek Külföld Belföld Össz. Vevő 300 330 360 390 cikk 150 160 170 180 Almaíz 100 110 120 130 50 60 70 80 Q3 Q4 Összes Narancsíz Barackíz Q1 Q2 Összefoglalás 1. Az OLAP egy technológia: Lehet relációs és többdimenziós és mindkettő A Kulcs: Sebesség (lekérdezés sebessége): Függ Tárolás típusa, Dimenzió elemeinek számától Adatbázis méretétől dimenziók számától NEM Elemzési képesség Függ: Adattartalom Kliens Összefoglalás 2. OLAP Stratégiai döntéshozatalt Támogató többdimenziós rendszerek Működtető rendszerek (OLTP) Lassú adatbeolvasás Napi működést támogató tranzakciós rendszerek Könnyen és gyorsan (Mission Critical) Elkészíthető Gyors adatbeolvasás és Komlex hatékony tárolás lekérdezések Nehezen, lassan elkészíthető komplex lekérdezések Táblázatkezelők Kevés adat hatékony elemzése Inkonzisztencia (hiányzó kódrendszer) Összefoglalás 3. OLAP technológiát használhatnak a következő rendszerek Vezetői Információs Rendszerek (Management Information System), (VIR, MIS) Döntéstámogató Rendszerek (Desision Support System, DSS) üzleti intelligencia (Business intelligence, BI) EIS (Executive Information System) Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az interneten keresztül OLAP és Data Warehousing A folyamat Adattárház, adatraktár OLAP OLTP adatok Transzformáció Külső adatok Az OLAP a felhasználók eszköze Felhasználók Adatbázis építés (elmélet) Relációs elemek Többdimenziós adatbázis építéséhez szükségesek a következő elemek* Dimenzió táblák Tény táblák Ezek kapcsolatát leíró csillag séma vagy hópihe séma * Nem szükséges SQL srv, de célszerű Adatbázis építés (elmélet) Dimenzió tábla VevoCode VevoDesc RegioCode OrszCode key1met Metro Regio1 H key1int Interfruct Regio1 H key2pro Profi Regio2 H Nemzbul Shifer NULL D A dimenzió táblák tartalmazzák az egyes dimenzióértékek azonosítóit, megnevezéseit, tulajdonságait, és szülő-gyerek kapcsolatukat A dimenzió táblák denormalizáltak Adatbázis építés (elmélet) Dimenzió tábla A dimenziót leíró információkat elhelyezhetjük egy vagy több táblában Ha egy dimenzión több különböző szintszámú hierarchia helyezkedik el akkor célszerű külön táblában tárolni. Adatbázis építés (Elmélet) Tény táblák Dátum Dimenziók Cikk Vevő Liter Mértékek Forint A tény tábla az adatkocka relációs megfelelői Adatbázis építés (elmélet) Tény tábla Datum 99/1/1 99/1/1 99/1/1 99/1/1 99/1/2 99/1/2 99/1/2 99/1/2 Cikk ALMA10 ALMA10 Kajszi10 Kajszi10 ALMA10 ALMA10 Kajszi10 Kajszi10 Vevo Key1int Key1met Key1int Key1met Key1int Key1met Key1int Key1met Liter 250 92 105 81 125 302 144 171 Forint 3 295 1 422 1 750 1 090 2 105 3 988 2 675 3 009 Adatbázis építés (elmélet) A csillag séma A csillag séma tartalma Egy központi tény tábla dimenzió táblák csillag formát alkotva Adatbázis építés (elmélet) Csillag séma Tény tábla Dimenzió tábla Adatbázis építés (elmélet) Hópehely séma A dimenzió hierarchiáját több dimenzió tábla írja le Normalizáltabb, mint a csillag séma Gyengébb teljesítmény Nehezebben átlátható Adatbázis építés (elmélet) Hópehely séma Dimenzió táblák Tény tábla OLAP és Data Warehousing Adatbetöltés OLTP adatok DTS Külső adatok DW tároló OLAP Server OLE DB for OLAP, ADO-MD Ügyfél alkalmazás OLAP és Data Warehousing A költségek kocka feltöltése Az előadás végén árbevétel arányos nyereséget fogunk számítani Költségek kocka Értékesítés kocka Költségek kocka felépítése Dimenziók: Cikkek, Időszakok, mutatószámok(fix és vált ktg.) Mértékek: Ft Demo… Összefoglalás OLAP helye a DW terminológiában Csillag és hópihe sémák Hogyan tölthetjük fel a relációs adatbázist és a kockákat Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az Interneten keresztül Analysis Services felépítés Analysis Services Analysis Server OLAP tároló Feldolgozás OLAP motor Data Mining motor TCP/IP HTTP Lekérdezés Alkalmazás Egyéb OLE DB adatforrás ADO MD DSO PivotTable Service SQL Server Data Warehouse OLEDB for OLAP OLE DB for DM Analysis Manager Analysis Services felépítés Rugalmas OLAP tároló A felhasználók és az alkalmazások csak a kockát, mint struktúrát látják Analysis Services felépítés Client/Server gyorsítótár Lekérdezés 1: Jan98, Feb98, és Mar98 eladások Lekérdezés 2: Q1 98 eladások Kliens A kliens is számol 1) Jan98, Feb98, és Mar98 eladások 2) Q1 98 eladások Lekérdezés 3: Q1 98 & Q1 97 eladások 3) Q1 97 eladások Szerver Csak a Q1 97 kell 1) Jan98, Feb98, és Mar98 eladások 3) Q1 97 eladások Analysis Services felépítés Adattárolás - nincs adatrobbanás Adatrobbanás Más OLAP rendszerek régi problémája 100% sűrű tárolás Az üres cellákat nem tároljuk Intelligens összegzések Üres cellák tárolása Összegzések tárolása Csak a lehetséges összegzések egy (kis) részét számítjuk ki előre Adattömörítő algoritmusok Analysis Services felépítés Részleges aggregálás 1. Analysis Services felépítés Részleges aggregálás 2. Kérem az összes eladást, az összes termékre, az összes . . . Az összegzés legmagasabb szintje Legrészletesebb összegzések Tény tábla Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az interneten keresztül Értékesítés elemzése Üdítő italok értékesítésével foglalkozó vállalat Dimenziók Cikk (Kiegyensúlyozott) Időszak (Kiegyensúlyozott) Vevő (NEM kiegyensúlyozott) Mértékek Ft, Liter Értékesítés elemzése Kiegyensúlyozott hierarchiák ország Mo Reg1 Győr Miskolc Régió Reg3 Pécs Komló Paks város Egyforma dimenzió szintek Zeg Reg2 Azonos mélység Nincsenek rések Adott szinten minden tagnak ugyanannyi őse van Értékesítés elemzése Szakadozott hierarchiák All Magyaro. Régió1 Győr Lengyelo. Régió2 Zeg Miskolc Nincs vagy Nem szükséges Krakkó Varsó ország Régió város Eltérő mélység Demo… Értékesítés elemzése TovábbFúrás (Drill-through) Régió 1 2000. Január Cikk Liter Alma 66 Ananász Birsalma 100 Ft 300 10 10 Dátum 1-Jan 5-Jan 9-Jan 10-Jan 17-Jan 24-Jan SzlaSzám Ft 6.5 1234 20 1235 7.25 1236 6.75 1237 5.75 1238 20 1239 Demo… Értékesítés elemzése Actions Linkek Kapcsolódhatnak Office dokumentumhoz Internet/Intranet oldalakhoz Futtatható állományokhoz… stb… Cellákhoz Dimenzió értékhez Dimenzióhoz Kockához Pl.: Szerződések Demo… Értékesítés elemzése Multi-Dimensional Expressions (MDX) Lekérdező nyelv Számított mezők Biztonsági szabályok az MDX segítségével beállíthatók Actions Az OLE DB for OLAP spec. része TM1, SAS, Analysis Services, Whitelight, stb. Értékesítés elemzése A kocka részei A kocka cellákból áll Minden cellának van egy címe Egy-egy koordináta, minden dimenzió szerint Egy cellához az összes koordinátájának meghatározásával juthatunk el Értékesítés elemzése (Cikk.barackital , Time.Q2, Vevo.[Vevők összesen]) (Cikk.Narancsital , Time.2000, Vevo.[Vevők összesen]) (Cikk.[Cikkek összesen] , Time.Q1, Vevo.külföld) Külföld Belföld Vevők összesen Cikkek összesen Almaital Narancsital Barackital Q1 2000 Banánital Értékesítés elemzése Rendezett n-esek (tuples) (Cikk.Almaital, Time.Q2, Vevo.[Vevők összesen]) KÜLÖNBÖZŐ dimenziókból származó tagok vesszővel elválasztott listája (Cikk.Almaital, Time.Q2) = (Cikk.Almaital, Time.Q2, Vevo.CurrentMember) Értékesítés elemzése Halmazok AZONOS dimenziókból származó tagok vesszővel elválasztott listája {Almaital, Barackital} [1999].Children Sum(Time.members) Demo… Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az interneten keresztül Pénzügyi modellezés Szülő-gyerek dimenziók Árbevételarányos nyereség Nyere: ség Árbev Fedezet Fix költség Árbev Vált. Költség Dim érték Arbev ValtKTG Fedezet FixKtg Nyereseg Arbev2 ArbevNyer Szülő Fedezet Fedezet Nyereseg Nyereseg ArbevNyer ArbevNyer Demo… Pénzügyi modellezés Visszaírás (write-Back) A kockán engedélyezni kell a visszaírást Az adatkocka tetszőleges cellájába írhatunk vissza Nem közvetlenül a kockába, vagy a tény táblába írunk Változás tábla a relációs adatbázisban Az Office 2000-ben nincs felhasználói felület a visszaírásra Pénzügyi modellezés Biztonság Cella adatára vonatkozó jogosultság Dimenzió értékre vonatkozó jogosultság Cella szint Alkalmazott Összes fizetés Terület Kelet 50 N/A 16 500 Közép 75 $7,600 20 625 Alkalmazott Terület Nyugat 35 N/A 10 500 Kelet 50 16 500 Közép 75 20 625 Nyugat 35 10 500 Dimenzió elem Tartalom Alapfogalmak Az Analysis (OLAP) Server felépítése Tárolás Felösszegzés Adatbázis építés Mi az OLAP? Az OLAP-pal szemben támasztott követelmények OLAP és DW, Adatbázis építés (elmélet) Eladások elemzése Pénzügyi modellezés Nagy mennyiségű adatok kezelése Elemzés az interneten keresztül Nagy mennyiségű adatok Élő példa (még SQL 7-en) Jellemzők Felösszegzési idők Dimenziók száma Hierarchiák száma Cellák száma … Válaszidők … Nagy mennyiségű adatok Particionálás Aktuális év Előző év Régi adatok MOLAP 35% Agg HOLAP 20% Agg ROLAP 0% Agg Eltérő tárolási módok, aggregáltsási szintek Több kiszolgáló támogatása Nagy mennyiségű adatok Nagyon nagy dimenziók támogatása "Large" MOLAP dimenziók "Huge" ROLAP dimenziók Több 100 millió tag Új fajta virtuális dimenzió támogatás Nem memória rezidens (10 millió tagig) Nincs kihatással a tárolásra Nincs probléma a dimenzió tagjainak számával Több hierarchia szint támogatása Egy dimenzió tagnak >64K gyereke lehet Automatikus gyűjtő szint beiktatása Opcionálisan látható Elemzés az Interneten Virtuális és kapcsolt kiszolgálók Helyi és távoli kockák összekapcsolása Belső és külső kockák East Sales West 3rd-Party – External Kérdések? Könyvek Microsoft OLAP Solutions by Eric Thomsen OLAP Solutions – Building Multidimensional Information systems by Eric Thomsen Microsoft OLAP Unleashed by Tim Peterson További információk WWW.OLAPINFO.HU www.microsoft.com/sql/productinfo/olap.htm www.olaptrain.com www.olapreport.com www.microsoft.com/sql/ msdn.microsoft.com www.microsoft.com/sql/bizsol/datawarehousing.htm
© Copyright 2026 Paperzz