Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Adattárházak 2011.11.26. Láng András. Üzleti Intelligencia Cél: Jó minőségű adat Helyesen felhasznált információ + tudás + profit Üzleti Intelligencia.

Hasonló előadás


Az előadások a következő témára: "Adattárházak 2011.11.26. Láng András. Üzleti Intelligencia Cél: Jó minőségű adat Helyesen felhasznált információ + tudás + profit Üzleti Intelligencia."— Előadás másolata:

1 Adattárházak Láng András

2 Üzleti Intelligencia Cél: Jó minőségű adat Helyesen felhasznált információ + tudás + profit Üzleti Intelligencia Business Intelligence (BI)

3 Üzleti Intelligencia Adatvagyon menedzsment Adatminőség  konszolidáció, adattisztítás Adatleltár  adatkatalógusok, metaadat-kezelés Törzsadatok  MDM,egyéb törzsadat nyilvántartások Központi riportfejlesztés és riportmenedzsment Adattárházból  integrált, historikus forrásból Más rendszerekből  forrásrendszerből, adatbázis linken keresztül Törzsadat mulplikátumok felderítése, számuk csökkentése Adatpótlás, helyesbítés érvényes adatokkal Zajok kiszűrése Technikai és üzleti metaadatok nyilvántartása Off-line, on-line metaadat karbantartás Törzsadat-kezelés (Master Data Management) Pl. Központ Ügyféltörzs Pl. címadatszótárak, cégnyilvántartások

4 Adattárházak létjogosultsága Egymástól elszigetelt rendszerek Lekérdezés csak az adott rendszer adataira készíthető Operatív rendszerek Általában csak aktuális adatok Normalizált struktúrák Adattárház Integrált Historikus Denormalizált adatszerkezet

5 Az adattárházak jellemzői Az adattárházak olyan adatbázisok, amelyek az elemzésre szánt adatokat integráltan: több forrásrendszer bevonásával historikusan: nem csak aktuális, hanem visszamenőleges adatok is rendelkezésre állnak elemzésre optimalizált formában: denormalizáltan, OLAP struktúrában tartalmazzák.

6 OLTP  OLAP OLTPOLAP szerkezetnormalizáltdenormalizált orientációtranzakcióklekérdezések időszakaktuálishistorikus felhasználók számának nagyságrendje 100 – – 10 jellemző műveletekDQL, DMLDQL, ETL tárhely igény nagyságrendje MB – GBGB – TB elvárt rendelkezésre állásfolyamatosidőszakos

7 Az idő dimenzió Az OLAP rendszerekből kinyert információk szinte mindig valamilyen időszakra/időszakokra vonatkoznak. időszakokat tartalmazó dimenzió szükségessége Az idő dimenzió tartalma előre meghatározható, üzemeltetésszerű, rendszeres töltése nem szükséges. Természetesen ez alól kivétel, amikor új időszakot kell nyitni. Például amikor az idő dimenzió a évi időszakot tartalmazza, és tudjuk, hogy nemsokára szükség lesz a 2011 évi időszakokra, kiegészítjük azt ezzel az intervallummal. Az idő dimenzió általában az alábbi szintekkel rendelkezik:  év > negyedév > hónap (> nap) és/vagy  év > hét (> nap)

8 ROLAP MOLAP HOLAP ROLAPMOLAP Adatbázis típusaRelációsMultidimenzionális ÉpítőelemekTénytáblák, dimenziótáblákAdatkockák, dimenziók Adatok szemcsézettségeGyakran elemi isJellemzően csak aggregált Tárhely igényKisebb Nagyobb (az adatkocka üres cellái is helyet foglalnak) MűveletekSQL műveletek: csoportfüggvények, analitikus függvények Lefúrás, felgörgetés, szeletelés, részkocka képzése A HOLAP (Hibrid OLAP) rendszerek a ROLAP és a MOLAP rendszerek ötvözete: A kis szemcsézettségű (alacsony szinten lévő) adatokhoz a MOLAP struktúrából a ROLAP struktúrába történő átfúrással juthatunk el.

9 Normalizáltság Az OLTP rendszerekben az adatok normalizált állapotban tárolódnak, így biztosítva az adatok integritását illetve az adatbázis anomáliák (beszúrási, módosítási, törlési) megelőzését. COUNTRY_IDCOUNTRY_ISO_CODECOUNTRY_NAMECOUNTRY_NAME_HISTCOUNTRY_SUBREGION_ID 52790USUnited States of America DEGermany GBUnited Kingdom NLThe Netherlands IEIreland DKDenmark FRFrance ESSpain TRTurkey PLPoland BRBrazil ARArgentina MYMalaysia JPJapan INIndia AUAustralia NZNew Zealand ZASouth Africa SASaudi Arabia CACanada CNChina SGSingapore ITItaly52799 COUNTRY_SUBREGION_IDCOUNTRY_SUBREGIONCOUNTRY_REGION_ID 52799Western Europe Northern America Southern America Africa Eastern Europe Australia Middle East52804 COUNTRY_REGION_IDCOUNTRY_REGION 52803Europe 52801Americas 52804Middle East 52802Asia 52805Oceania 52800Africa

10 Normalizáltság Az OLAP rendszerekben az adatok denormalizált állapotban tárolódnak, ezáltal az adatok tárolása redundáns lesz. COUNTRY_IDCOUNTRY_ISO_CODECOUNTRY_NAMECOUNTRY_NAME_HISTCOUNTRY_SUBREGION_IDCOUNTRY_SUBREGIONCOUNTRY_REGION_IDCOUNTRY_REGION 52790USUnited States of America52797Northern America52801Americas 52776DEGermany52799Western Europe52803Europe 52789GBUnited Kingdom52799Western Europe52803Europe 52784NLThe Netherlands52799Western Europe52803Europe 52780IEIreland52799Western Europe52803Europe 52777DKDenmark52799Western Europe52803Europe 52779FRFrance52799Western Europe52803Europe 52778ESSpain52799Western Europe52803Europe 52788TRTurkey52799Western Europe52803Europe 52786PLPoland52795Eastern Europe52803Europe 52775BRBrazil52798Southern America52801Americas 52773ARArgentina52798Southern America52801Americas 52783MYMalaysia52793Asia52802Asia 52782JPJapan52793Asia52802Asia 52781INIndia52793Asia52802Asia 52774AUAustralia52794Australia52805Oceania 52785NZNew Zealand52794Australia52805Oceania 52791ZASouth Africa52792Africa52800Africa 52787SASaudi Arabia52796Middle East52804Middle East 52772CACanada52797Northern America52801Americas 52771CNChina52793Asia52802Asia 52769SGSingapore52793Asia52802Asia 52770ITItaly52799Western Europe52803Europe

11 ROLAP rendszerek felépítése A tény- illetve dimenziótáblák háromféle struktúrába rendeződhetnek, azaz egy ROLAP rendszer felépítését tekintve háromféle lehet:  csillag (Star): egy ténytábla van és ahhoz közvetlenül kapcsolódnak a dimenziótáblák  hópehely (Snowflake): egy ténytábla van, de van olyan dimenziótábla, ami egy másik dimenziótáblához kapcsolódik  csillagkép (Galaxy): több ténytábla van és a dimenziótáblák egyszerre több ténytáblához ténytáblához kapcsolódhatnak Dimenzió- tábla Tény- tábla Csillag séma Dimenzió- tábla Tény- tábla Hópehely sémaCsillagkép séma Dimenzió- tábla Tény- tábla Dimenzió- tábla Tény- tábla Dimenzió- tábla Tény- tábla Dimenzió- tábla Tény- tábla Dimenzió- tábla

12 ROLAP rendszerek felépítése A ROLAP rendszerek építőelemei:  Dimenziótáblák: egy vagy több hierarchiát tartalmaznak, amelyek szintekre bontódnak (A legalsó szint minden hierarchiában ugyanazokból az elemekből áll. Amennyiben a legfelső szint minden hierarchiánál a teljes összegzettség, úgy (értelemszerűen) ez is azonos és csak egy elemből áll.)  Ténytáblák: dimenzióazonosítókból és tényadatokból épülnek fel A végfelhasználó amit lát, nem más, mint a dimenziókombinációk és a hozzájuk tartozó tényadatok. dimenzió-azonosító hierarchia 1 szint n … szint 1 hierarchia 2 szint m … szint 1 … hierarchia p szint o … szint 1 dimenzió-azonosító 1 … dimenzió-azonosító q tényadat 1 … tényadat r Dimenziótábla Ténytábla dimenzió- azonosító: elsődleges kulcs (egyedi) hierarchiák: legalább egy, de lehet több is (pl.: ügyfél dimenzió esetén: típus, életkor, cím) szintek: minden hierarchia szintekből épül fel, az elemi szinttől akár a teljes összegzettségig (pl.: ügyfél dimenzió cím hierarchia esetén: ügyfél > település > megye > ország > összes) dimenzió-azonosítók: idegen kulcsok, kapcsolómezők a dimenziókhoz tényadatok: más szóval mértékek, mérőszámok, ezek maguk a megjelenítendő mennyiségek (minden esetben valamilyen aggregátum, például: összeg, átlag, minimum, maximum, szórás, számosság.)

13 Normalizáltság Az OLTP – OLAP struktúraváltás szkriptje az alábbi: select c.*, csr.country_subregion, cr.* from country c, country_subregion csr, country_region cr where c.country_subregion_id = csr.country_subregion_id and csr.country_region_id = cr.country_region_id; Az OLAP – OLTP transzformációé pedig ez: create table country as select c.country_id, c.country_iso_code, c.country_name, c.country_name_hist, c.country_subregion_id from countries c; create table country_subregion as select distinct c.country_subregion_id, c.country_subregion, c.country_region_id from countries c; create table country_region as select distinct c.country_region_id, c.country_region from countries c;

14 ROLAP rendszerek felépítése ROLAP dimenziótáblaROLAP ténytábla (dimenzióként megjelenítve) (adatkockaként megjelenítve)

15 ROLAP műveletek Csoportosítások (csoportfüggvények alkalmazásával): select t.CALENDAR_YEAR, t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME, sum(c.UNIT_COST) from costs c, times t where c.TIME_ID = t.TIME_ID group by t.CALENDAR_YEAR, t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME order by 1,2,3; CALENDAR_YEAR_NAMEQUARTER_OF_YEARMONTH_OF_YEARSUM(C.UNIT_COST) , , , , ,71 ………… , , , , ,26

16 ROLAP műveletek Szűrések (feltételek alkalmazásával): select t.CALENDAR_YEAR, t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME, sum(c.UNIT_COST) from costs c, times t where c.TIME_ID = t.TIME_ID and t.CALENDAR_YEAR = 1999 group by t.CALENDAR_YEAR, t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME order by 1,2,3; CALENDAR_YEAR_NAMEQUARTER_OF_YEARMONTH_OF_YEARSUM(C.UNIT_COST) , , , , , , , , , , , ,69

17 ROLAP műveletek Dimenzió(k) elhagyása: Tételezzük fel, hogy a következő dimenziók léteznek: PRODUCTS, PROMOTIONS, TIMES, CHANNELS Amennyiben így van, az előbbi oldalakon bemutatott lekérdezések dimenziószűkítést alkalmaznak. Az összes dimenziót tartalmazó lekérdezés a következőképpen festene: select p.PROD_CATEGORY_DESC, pm.PROMO_CATEGORY, t.CALENDAR_QUARTER_DESC, ch.CHANNEL_CLASS, sum(c.UNIT_COST) from costs c, products p, promotions pm, times t, channels ch where c.TIME_ID = t.TIME_ID and c.PROD_ID = p.PROD_ID and c.PROMO_ID = pm.PROMO_ID and c.CHANNEL_ID = ch.CHANNEL_ID group by p.PROD_CATEGORY_DESC, pm.PROMO_CATEGORY, t.CALENDAR_QUARTER_DESC, ch.CHANNEL_CLASS order by 1,2,3;

18 ROLAP műveletek További lehetőségek:  rollup  cube  analitikus függvények Példa a rollup-ra: select t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME, sum(c.UNIT_COST) from costs c, times t where c.TIME_ID = t.TIME_ID and t.CALENDAR_YEAR = 1999 group by rollup(t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME) order by 1,2; Példa a cube-ra: select t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME, sum(c.UNIT_COST) from costs c, times t where c.TIME_ID = t.TIME_ID and t.CALENDAR_YEAR = 1999 group by cube(t.CALENDAR_QUARTER_DESC, t.CALENDAR_MONTH_NAME) order by 1,2;

19 MOLAP rendszerek felépítése 2500 adatkocka dimenzió tényadat szintek aggregáltság

20 MOLAP műveletek lefúrás felgörgetés szeletelés részkocka képzése dimenzió elhagyása

21 MOLAP műveletek – ROLAP műveletek lefúrás – csoportosítás finomítása felgörgetés – összevontabb csoportosítás szeletelés – szűrés egy dimenziónál egy konkrét értékre részkocka képzése – szűrés dimenzió elhagyása – dimenziók szűkítése

22 Az adattárház helye DWH OS (PS) IS (TS) ED (PS) PS ED (TS) OS (PS) OS (PS) OS (PS) IS (TS) IS (TS,SS) PS: Operatív rendszer (Production System) SS: Forrásrendszer (Source System) TS: Célrendszer (Target System) IS: Információs rendszer (Information System) ED: Elektronikus dokumentum (Electronic Document)

23 Az adattárház típusai Adattárház adattisztítás, historizálás, struktúraváltás, kalkulációk, szűrés Célrendszerek információs rendszerek Forrásrendszerek operatív és egyéb rendszerek staging réteg transzformációs réteg adatpiac réteg staging réteg adatpiac réteg háromrétegű kétrétegű

24 Az adattárház egy lehetséges felépítése Forrásrend- szerek Információs rendszerek Adattárház Metaadat-kezelő rendszer … PS 1 PS 2 PS 3 PS 4 PS n IS 1 IS 2 IS 3 IS 4 IS n … Forrásrendszerek előző napi lenyomata (OLTP struktúrában) Integrált előző napi adatok (ROLAP struktúrában) Historikus adatok (ROLAP struktúrában) Szűrés, közös platformra hozás Struktúraváltás, tisztítás, transzformálás Delta-képzés (historizálás) Információ kinyerése Adatpiacok (ROLAP vagy MOLAP struktúrában) Kocka- generálás, Adatpiacosítás

25 Sokrétű felhasználás Adatbányászat Rejtett összefüggések algoritmus segítségével vagy manuálisan történő feltérképezése, számszerűsítése. Mutatószámok képzése Kulcsfontosságú (KPI) mutatószámok előállítása és prezentálása közérthetó, esztétikus formában. Elemzések készítése Nagy mennyiségű információ megjelenítése úgy, hogy az szükség szerint szűrhető, kategorizálható legyen. Riportok, jelentések készítése Táblázatos vagy azzá alakítható formátumú, rögzített adattartalommal rendelkező lekérdezések eredménytáblái. Operatív/front-end rendszerek ellátása adatokkal Jellemzően tételes, könnyen származtatható adatok előállítása és továbbítása. Általában kiemelt fontosságú a rendelkezésre állás. Komplexitás, erőforrás igény

26 Az adattárházak felhasználási területei (példák) A kinyert információ felhasználásaVégfelhasználó Rövid- és hosszútávú stratégiai döntések meghozatalához szükséges jelentések Felső- és középvezetők, a menedzsment Jelentésszolgálat a felügyeleti szervek felé A jelentéseket szolgáltató területek dolgozói (illetve később természetesen az érintett felügyeleti szerv dolgozói) Multinacionális vállalatok esetén adatszolgáltatás az anyavállalat felé Az anyavállalatnál dolgozó elemzők illetve a csoportszintű menedzsment tagjai A szervezet normális működéséhez szükséges elemzések például egy bankban a hitelkockázat-elemzési területen dolgozók

27 Az adattárházak fejlesztése Kétféle fejlesztési metódus: Big Bang A Big Bang fejlesztés során felmérik a szervezek különböző egységeiben az aktuális és lehetséges (releváns) igényeket, majd felépítik az adattárházat, beleértve az adatpiacokat is. Inkrementális Az inkrementális fejlesztés alkalmazásánál egy igény jelentkezése során felépítenek egy (esetleg több) adatpiacot. Az igénynek nyilvánvalóan olyannak, kell lennie, amely kielégítése adattárház igénybe vételével lenne célszerű. Az előbbi értelemszerűen hosszabb átfutási idejű ás költségesebb fejlesztést igényel, mint az utóbbi. (Természetesen a változáskövetéssel elkészülő újabb adatpiac verziók is fejlesztés révén valósulnak meg.)

28 Az adattárházak fejlesztése Az inkrementális fejlesztés ábráján az egy nem egy adatforrást jelez, hanem a fejlesztéshez felhasznált forrásrendszerek halmazát. DWH PS DWH DM PS 1. fejlesztés2. fejlesztés3. fejlesztés Inkrementális Big Bang DM PS DM PS

29 Az adattárházak fejlesztése A fejlesztés menete (mindkét esetben): 1.Igények felmérése, követelmények meghatározása 2.Logikai adatmodell elkészítése (az igények lefordítása) 3.Forrásadatok megkeresése, forrásrendszerek feltérképezése 4.Fizikai adatmodell elkészítése (platformfüggően valamennyi objektumra) 5.Megvalósítás 6.Tesztelés (felhasználói – adattartalmi, performanciális, regressziós) 7.Ősfeltöltés (az adattárház feltöltése a régebbi adatokkal pl. archív adatbázisokból) A két legalapvetőbb különbség a hagyományos és az adattárház fejlesztés között a fenti 3. és 7. pont. A 3. pont a forrásrendszerek integrálásából, a 7. pont az adatok historikus mivoltából adódik.

30 Az adattárházak fejlesztése Előny (+)/Hátrány (-)Big BangInkrementális Igények felmérése - Az egyes szervezeti egységek nem biztos, hogy szükségét érzik a fejlesztésnek, ezért az együttműködés csorbát szenvedhet. + Mivel az érintett terület nyújtotta be az igényt, bizonyosan teljes mértékben együttműködik. Többletmunka újabb igények felmerülése esetén + Általában már tartalmazza az adattárház a szükséges adatokat. - Gyakran nem tartalmazza még az adattárház a szükséges adatokat. Fejlesztési, üzemeltetési költségek Fejlesztés időigénye - Sokszorosa az inkrementálisnak. + Töredéke a Big Bang-nek. Tárhely igény - Már a kezdetekkor nagy. + Eleinte kevesebb, az egyes inkrementumok beépülésével nő.

31 Az adattárház adattartalma folyamatosan nő A tárhely igény folyamatosan, meglehetősen nagy léptékben növekedik Erős szerver választása, újabb diszkek hozzárendelése Az adattárház töltése történhet rendszeresen (naponta, hetente, havonta) vagy ad-hoc jelleggel A rendszeres töltések ütemezetten szoktak végbemenni Ütemezett, egymástól függő áttöltő processzek (egy processz jellemzően egy objektumot tölt Üzemeltetési sajátosságok

32 Kérdések?

33 Köszönöm a figyelmet!


Letölteni ppt "Adattárházak 2011.11.26. Láng András. Üzleti Intelligencia Cél: Jó minőségű adat Helyesen felhasznált információ + tudás + profit Üzleti Intelligencia."

Hasonló előadás


Google Hirdetések