INFORMATIKAI PROJEKTELLENŐR 30 MB Dr. Horváth Gábor KLASSZIKUS ADATTÁRHÁZAK 2017.03.23. MMK- Informatikai projektellenőr képzés
Tartalom Elemző Adatbázisok Az adattárházak komponensei Adatmodell Adatbázis-kezelő ETL Front-end : BI eszköz Operatív döntéstámogatás: kimenő interfészek Adatbányász eszköz Meta-adat kezelés és data governance Jogosultság-kezelés, adat biztonság Egy kis kitekintés: Klasszikus adattárházak és Big Data Architektúrák Az adattárház projekt főbb elemei Agilis módszerek alkalmazása az adattárház projektekben Az adattárház projektek sikerességének alapjai 2017.03.23. MMK-Informatikai projekt ellenőr képzés 2
Informatika Elemző adatbázisok OLTP vs Elemző adatbázisok A tranzakciós rendszerek működésének melléktermékei az adatok. Ez a vállalat az adatvagyona. Az tranzakciós adatok felhasználása : VIR, MI és egyéb elemzések Más funkció Más típusú adatbáziskezelés Más adatmodell Más hardver környezet 2017.03.23. MMK-Informatikai projekt ellenőr képzés 3
A vállalati adatvagyon részei Exabytes User Generated Content Social Network BIG DATA User Click Stream Mobile Web Sentiment Petabytes Web Logs Offer History Dynamic Pricing A/B Testing WEB External Demographics Business Data Feeds Terabytes Offer Details Segmentation CRM Affiliate Networks Search Marketing HD Video Speech to Text Gigabytes Purchase Detail ERP Customer Touches Behavioral Targeting Product/ Service Logs Purchase Record Payment Record Support Contacts Dynamic Funnels SMS/MMS INCREASING Data Variety and Complexity DECREASING Value Density in the Data 2017.03.23. MMK-Informatikai projekt ellenőr képzés 4
Az adattárházak komponensei 2017.03.23. MMK-Informatikai projekt ellenőr képzés 5
Az adattárházak adatarchitektúrája, adatfolyam Stage System of Records/ DW Aggregációk Adatpiacok Források 2017.03.23. MMK-Informatikai projekt ellenőr képzés 6
Az adattárházak adatarchitektúrája, adatfolyam STAGE forrásrendszerrel megegyező tárolási struktúra forrásadatok többnyire napi táblapartíciókban adatfogadás vagy beszerzés forrásadatok változtatásmentes archiválása Teljes újratöltés lehetősége DW egységes üzleti adatmodell helyettesítő kulcs képzése forrás természetes kulcsainak tárolása történeti adattárolás elsődleges, egyedi és idegen kulcsok beállítása forrásrendszeri fix értékkészletek egységes tárolása forrásoldali fizikai törlés kezelése szótár-, törzs-, kapcsoló- és esemény típusú táblák technikai mezők: OBJ_TIPUS, FORRAS_AZON_1 5 DM helyettesítő kulcs megtartása különböző aggregáltsági szint több rétegen keresztül újrafuttathatóság a folyamatos bővítések miatt aggregátumok üzleti paraméterezés alapján helygazdálkodás kérdése, visszamenőleges adattárolás 2017.03.23. MMK-Informatikai projekt ellenőr képzés 7
Informatika Adatpiac és adattárház: Adatarchitektúrák 2017.03.23. MMK-Informatikai projekt ellenőr képzés 8
Informatika Adatpiac és adattárház: Adatarchitektúrák 2017.03.23. MMK-Informatikai projekt ellenőr képzés 9
Informatika Adatpiac és adattárház : adatarchitektúrák tervezési szempontok Elemzési célok sokrétűsége Az elemzési adatbázis szerepe a vállalati architektúrában A felhasználók széleskörűsége, típusai, száma Az elemzendő adatok (forrásrendszerek ) száma Adatbázis méret, history..stb 2017.03.23. MMK-Informatikai projekt ellenőr képzés 10
Az adattárházak komponensei: adatmodell Relációs vs. dimenzionális Kész adatmodellek vs. custom developed Az adatmodell karbantartása házon belülre vs. szállítónál Adatmodellező team : rend vs. szűk keresztmetszet CASE eszköz használata metaadat kezelés 2017.03.23. MMK-Informatikai projekt ellenőr képzés 11
Az adattárházak komponensei: adatbázis kezelés Egyszeri bulk insert No update Select Időkezelés Particionálás Párhuzamos felhasználás Real-time igény Index kezelés Index vs full table scan Jogosultság kezelés Tuningolás, adminisztráció Shared everything vs shared nothing vs in memory Appliance megközelítés 2017.03.23. MMK-Informatikai projekt ellenőr képzés 12
Az adattárházak komponensei: ETL ETL eszközök vs kézzel írt kódok - ODI - Informatica - IBM DataStage - SAS - Talend stb - Custom developed Tervezési szempontok meta-adat kezelés CASE eszközök használata: Enterprise Architect, Powerdesigner Ütemező modul ETL eszköz kiválasztás szempontjai: - funkcionalitás - ár - szakemberek elérhetősége 2017.03.23. MMK-Informatikai projekt ellenőr képzés 13
Az adattárházak komponensei: ETL - ETL folyamat minősége függ Épített adatmodell minőségétől Mappelés minőségétől Betöltési folyamatvezérlés és naplózás teljességétől 2017.03.23. MMK-Informatikai projekt ellenőr képzés 14
Az adattárházak komponensei: ETL Fejlesztő eszköz független formalizált tervezés Egységes meta adatok képzése Egységes adatmodellre és kulcsolási mechanizmusra épülő mappelés Futtatható kód generálás az adatbázisban ill. interface-en keresztül A generálási folyamat hátterét egy adatbázis objektumokból álló alkalmazás adja, ami a paraméterezésnek megfelelő mappingeket állít elő. History képzése : egyedi kulcs alapú history képzés standard mezők felhasználásával history kezelt mezők meghatározása automatikusan - dictionary alapján céltáblával azonos szerkezetű munkatáblák használata Fizikai mapping a logikai mapping alapján könnyen elkészíthető DW töltése egyszerűbb DM töltése aggregáltsági szinttől függően több lépésben valósítható meg Mapping logikák egymásba ágyazhatók Bonyolultabb forráslekérdezések nézetbe rendezhetők Generált kód kézi továbbfejlesztése kizárja a központi meta adattár további használatát Újraindítható kódok 2017.03.23. MMK-Informatikai projekt ellenőr képzés 15
Az adattárházak komponensei: ETL A tervezés előtt a fizikai modell ismeretén kívül szükséges a betöltés szabványainak és névkonvencióinak definiálása. Adatbázis objektumokból álló generálási folyamat háttér, háromszintű paraméterezés: -Alapadatok definiálása 1.Map neve, csoportja 2.Céltábla és tulajdonosa, alias 3.Töltés típusa: DELTA/FULL History képzés típusa 4.SQL paraméterezés/hintek -Forrástáblák és kapcsolatok definiálása 1.Forrás táblák, tulajdonosok, aliasok 2.Forrásként használt táblák kapcsolási feltételei: JOIN Halmazműveletek DISTINCT Analitikus függvények használata 3.Filterek megadása 4.SQL paraméterezés (hintek) 5.Automatikus forrás struktúra forgatások tipikusan DM töltéskor aktuális és history adatok együttes használata (ACT_HIST_FL = I ) -Mezőszintű mappelés 1.Forrás-cél mezőpárok 2.History képzés egyedi kulcs alapján 3.Helyettesítő kulcs képzése szekvenciából egységes rövidnevek alapján 4.Lookup kapcsolatok egyszerű paraméterezése forrás objektumok és idegen kulcsok alapján 2017.03.23. MMK-Informatikai projekt ellenőr képzés 16
Az adattárházak komponensei: Operatív döntéstámogatás kimenő interfészek i) Bejövő interfészek : file, db-link, connectors, SOA megközelítés szerepe. Szabványok kialakítása ii) Kimenő interfészek : illeszkedés a SOA architektúrába Adattárház funkciók vs. Core rendszer funkciók: A DWH túlnő az eredeti terjedelmén Rugalmasabban lehet fejleszteni mint a Core rendszereket Integrált adatok szükségesek Historikus adatok szükségeke Integrált és historikus adatok szükségesek Vállalati szintű adat architektúra Rövid távú határidők vs. rend 2017.03.23. MMK-Informatikai projekt ellenőr képzés 17
Az adattárházak komponensei: BI - eszköz 2017.03.23. MMK-Informatikai projekt ellenőr képzés 18
Az adattárházak komponensei: adatbányászat 2017.03.23. MMK-Informatikai projekt ellenőr képzés 19
Az adattárházak komponensei: metaadat kezelés, adatminőség, data governance i) Átláthatóság üzleti meta-adatok ii) Értékkészletek és hierarchiák karbantartása iii) Auditálhatóság technikai meta-adatok iv) Adatminőség automatikus ellenőrzések / hibák javítása v) Meta-adat kezelési architektúra -- rajz vi) Data governance az adattárházakat menedzselő szervezet és folyamatok szerepe 2017.03.23. MMK-Informatikai projekt ellenőr képzés 20
Target Adatmodell Forrás adatmodell Mapping szabályok Meta-adat repository Üzleti definíciók Ütemezési meta-adatok Adatminőségi szabályok Info portál Adatminőség ellenőrzés ETL eszköz Ütemező eszköz ETL program 2017.03.23. MMK-Informatikai projekt ellenőr képzés 21
SalesLT.Dim_Geography Geography_Key City StateProvince CountryRegion PostalCode meta_validfrom_date meta_validto_date meta_status_flag... numeric(10) nvarchar(30) nvarchar(50) nvarchar(50) nvarchar(15) datetime datetime SalesLT.Dim_Date DateKey FullDateAlternateKey DayNumberOfWeek EnglishDayNameOfWeek HungarianDayNameOfWeek DayNumberOfMonth DayNumberOfYear WeekNumberOfYear EnglishMonthName HungarianMonthName MonthNumberOfYear CalendarQuarter CalendarYear CalendarSemester FiscalQuarter FiscalYear FiscalSemester meta_validfrom_date meta_validto_date meta_status_flag... Geography_Key = Geography_Key numeric(8) date nvarchar(10) nvarchar(10) smallint nvarchar(10) nvarchar(10) smallint smallint datetime datetime <pk> <pk> <ak> Geography_Key = ShipTo_Address_Key Geography_Key = BillTo_Address_Key DateKey = OrderDate_Key DateKey = DueDate_Key DateKey = ShipDate_Key Customer_Key CustomerID Geography_Key NameStyle Title FirstName MiddleName LastName Suffix CompanyName SalesPerson EmailAddress Phone PasswordHash PasswordSalt AddressLine1 AddressLine2 meta_validfrom_date meta_validto_date meta_status_flag... SalesLT.Dim Customer numeric(10) int numeric(10) bit nvarchar(8) nvarchar(50) nvarchar(50) nvarchar(50) nvarchar(10) nvarchar(128) nvarchar(256) nvarchar(50) nvarchar(25) varchar(128) varchar(10) nvarchar(60) nvarchar(60) datetime datetime Customer_Key = Customer_Key SalesLT.Fact SalesOrder SalesOrder_Key SalesOrderID SalesOrderDetailID Product Key Customer_Key ShipTo_Address_Key BillTo_Address_Key OrderDate_Key DueDate_Key ShipDate_Key OrderQty UnitPrice UnitPriceDiscount LineTotal RevisionNumber Status OnlineOrderFlag SalesOrderNumber PurchaseOrderNumber AccountNumber ShipMethod CreditCardApprovalCode SubTotal TaxAmt Freight TotalDue Comment meta_lastmodification_date meta_status_flag... numeric(10) int int numeric(10) numeric(10) numeric(10) numeric(10) numeric(8) numeric(8) numeric(8) smallint money money money bit nvarchar(25) nvarchar(25) nvarchar(15) nvarchar(50) varchar(15) money money money money nvarchar(max) datetime <pk> <fk> <pk> <fk4> <fk1> <fk2> <fk3> <fk5> <fk6> <fk7> Product Key = Product Key SalesLT.Fact ProductModel Description ProductDescription Key Product Key Culture Description... Product Key = Product Key Product Key ProductID Name ProductNumber Color StandardCost ListPrice Size Weight ProductSubCategory_Key SellStartDate SellEndDate DiscontinuedDate ThumbNailPhoto ThumbnailPhotoFileName Product Model Name CatalogDescription meta_validfrom_date meta_validto_date meta_status_flag... ProductSubCategory_Key = ProductSubCategory_Key SalesLT.Dim ProductCategory ProductSubCategory_Key ProductSubCategoryID ProductSubCategory_Name ProductCategory_Name meta_validfrom_date meta_validto_date meta_status_flag... numeric(10) numeric(10) nchar(6) nvarchar(400) SalesLT.Dim Product numeric(10) int nvarchar(50) nvarchar(25) nvarchar(15) money money nvarchar(5) decimal(8, 2) numeric(10) datetime datetime datetime varbinary(max) nvarchar(50) nvarchar(50) XML datetime datetime numeric(10) int nvarchar(50) nvarchar(50) datetime datetime <pk> <fk> <pk> <fk> <pk> <ak> 2017.03.23. MMK-Informatikai projekt ellenőr képzés 22
Stage Adatminőség biztosítás egy lehetséges módja - Hibás adatok kezelése - Hogyan töltsük? - Mit ne töltsünk? - Speciális esetek pl: - Banki környezetben kötelező jelentések Adatminőségi riportok DWH Javítások a DWH-ban (adattárház hibák) Adatminőségi riportok Adattisztító alkalmazás Javítások a forrásrendszerekben 2017.03.23. MMK-Informatikai projekt ellenőr képzés 23
Az adattárházak komponensei: jogosultság kezelés és adatbiztonság i) Jogosultsági szintek ii) Érzékeny adatok iii) Üzemeltetés fejlesztés környezetek 2017.03.23. MMK-Informatikai projekt ellenőr képzés 24
Az adattárházak komponensei: Klasszikus adattárház és Big Data 2017.03.23. MMK-Informatikai projekt ellenőr képzés 25
Az adattárházak komponensei: Klasszikus adattárház és Big Data 2017.03.23. MMK-Informatikai projekt ellenőr képzés 26
Az adattárház projektek főbb elemei Üzleti követelmény felmérés IT követelmény felmérés Jogosultság kezelés Tesztelés tervezés Meta-adat tervezés Adatmodellezés ETL tervezés Logikai mapping - BA Fizikai mapping - fejlesztés Adatbázis fizikai terv Üzemeltetés tervezés Tesztelés Adatpiac tervezés (adatmodellezés, riport tervezés, logikai, fizikai map, riport fejlesztés tesztelés) Szervezet kiépítés Oktatás 2017.03.23. MMK-Informatikai projekt ellenőr képzés 27
Tipikus adattárház projekt szervezet Projekt Irányító Bizottság Projekt Szponzor Kulcs Stakeholderek PM DW Architect / Technikai vezető Üzleti elemző Team Adatmodellező(k) ETL Team BI Team Üzemeltetés Team Üzleti elemzők/ Tesztelők ETL Fejlesztők/ Tesztelők BI Fejlesztők/ Tesztelők 2017.03.25. MMK-Informatikai projekt ellenőr képzés 28 DBA Release Manager ETL Üzemeltetés Rendszer Admin
Agilitás az adattárház építésben Back-end: töltési megközelítés: vigyünk mindent, modellezzük ami kell Front-end : klasszikus agilis módszerek: SCRUM, prototípus - Megfelelő BI eszközök Klasszikus Bi eszközök vs önkiszolgáló BI - Sand-box az éles környezetben 2017.03.23. MMK-Informatikai projekt ellenőr képzés 29
Mitől sikeres egy adattárház projekt - Terjedelem : ne lőjünk nagyra de legyen hosszú távú víziónk rugalmasság, időtállóság a legfőbb tervezési szempont - Megfelelő szervezet / data governance - Az üzlet és az IT szoros együttműködése : nem kínai fal, üzleti célok vs IT költségek - Agilitás - Szponzor - Több beszállító vs. Egységes adattárház építési módszertan (monopólium vs verseny) - Ügyfél beszállítók partnersége (Saját szervezet vs beszállítók) - Kulcs ügyfél oldali pozíciók: - PM - Adatmodellező - Data steward - BI helpdesk - Üzemeltetés - Adatminőség biztosítása - Tesztelés tervezése időben 2017.03.23. MMK-Informatikai projekt ellenőr képzés 30
Köszönöm a figyelmet! 2017.03.23. MMK-Informatikai projekt ellenőr képzés 31