Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
Adattárházak
Méréstechnika és Információs Rendszerek Tanszékhttps://www.mit.bme.hu/oktatas/targyak/vimiac04
1
Termelés, Szolgáltatás => Adatbázis
Adattárház
Adatbányászat
Adatok kinyerése, transzformálása
Döntés
Modell
Tisztított, feldolgozott
adatok
Nyers adatok
Hasznos információ
Tudás reprezentázió
Adatfeldolgozási folyamat
Motiváció
• Az adattárházak lehetőséget biztosítanak, hogy a termelő és üzleti folyamatokban keletkező adatokból, az üzleti döntések számára releváns információk legyenek kinyerhetők.•
• Hogyan építsünk adattárházat?• Hogyan rendezzük adatainkat?• Hogyan nyerhetünk ki információt?
Eszközök, felhasználók
VégfelhasználóDöntéshozó
Üzleti elemző
Adatelemző
Adatbázisadmin.
Megjelenítési technikákModellek, szabályok, ábrázolás
AdatbányászatGépi tanulás, MI, Számítási Intelligencia
Adat kinyerésStatiasztikai eszközök, Lekérdezések, Jelentések
Adattárházak / Adat piacokOLAP, MDA
Adat forássokPapírok, Fájlok, Személyek, Adatbázis rendszerek, OLTP
Tipikus nagyvállalati adattárház
Logisztika
Termékek
Adattárház
Felhasználók
Pénzügy
Logisztika
Számlázás
Termékek
Felhasználók
Termékek
Felhasználók
SzámlázásPénzügy
Felhasználók Termékek
Adattárház, mint információs környezetInformációs környezet:
• Olyan folyamatok, eszközök tervezése és implementálása, amelyek alkalmasakelemzésekhez és döntéshozatalhoz szükséges teljes, pontos és áttekinthető információk adatokból történő kinyerésére.
• Minden olyan tevékenységet magába foglal, amit egy szervezetnek el kell végeznie, hogy egy adattárházat hozzon létre és üzemeltessen
Adattárház definiálása Döntéstámogató adatbázis, amelyet külön üzemeltetnek a
szervezet működéséhez kapcsolódó adatbázistól Támogató információ feldolgozó egység, mely egy
megbízható, feldolgozott hisztorikus, elemzések céljából összegyűjtött adatokat tartalmaz.
“A data warehouse is a subject-oriented, integrated, time-variant, and nonvolatile collection of data in support of management’s decision-making process.”—W. H. Inmon
Integrátor megközelítés: Kimball modell
Témaorientált
Témakörök köré szervezett, pl. vásárlók, termékek, eladások.
A döntéshozók számára szükséges adatok modellezéséhez és elemzéséhez kötődik, nem a napi működéshez, illetve adatátvitelhez.
Egyszerű és tömör nézetet nyújt a fontos témakörökben, de nem tartalmazza azokat az adatokat, melyek nem fontosak a döntéshozatal szempontjából.
Integrált
Több, különböző jellegű adatforrás integrálásával épül fel Relációs adatbázisok, különálló fájlok, online
adatátviteli források Adattisztítási és adatintegrációs eszközöket alkalmaznak
Amikor az adat bekerük az adattárházba konvertálódik
A konzisztenciát az elnevezési konvenciók, struktúrákbiztosítják a különböző adatforrások között
Idővariáns Az időhorizont sokkal nagyob mint egy operációs
adatbázisban.
Operációs adatbázis: aktuális adatok (pl. az elmúlt nap).
Adattárház: hisztorikus adatok elemzésére(pl., előző 5-10 év)
Minden fontosabb (kulcs) struktúra tartalmaz
Idő elemet (explicit vagy implicit módon)
Nem "illékony"
Fizikailag külön tárolt, a működési környezetből transzformált adatok.
Az üzemvitelből adódó adatfissítés nem fordul elő azadattárházban:
Nincs szükség online adatátvitelre, adat mentésre ésvisszatöltésre, illetve adatkonzisztenciát biztosítóeljárásokra
Csak két adatkezelési mód megengedett:
adattárház töltése és adatok lekérdezése
Adattárház vagy elosztott adatbázisok Hagyományos elosztott, heterogén adatbázis integráció:
Wrapper-ek/mediator-ok a heterogén adatbázisok felé illesztve Lekérdezés alapú megközelítésmód
Kliens oldali lekérdezés hatására a mediátorban tárolt metainformációk alapján a kérés a heterogén adatbázis egy-egyeleméhez kapcsolódó lekérdezésre fordítódik, és az egyes lekérdezések eredményei egy egységes válasszá integráljuk.
Adattárház: feltöltés-alapú integritás biztosítása, nagyteljesítményű adatelérés: A heterogén adatforrások információi a lekérdezés előtt
kerülnek integrálásra és tárolódnak a központi szerveren Direkt lekérdezésekhez és elemzések
Adattárház alkalmazásai Jelentések
a szervezeten belüli információ megosztás hatékony eszköze automatikus riportok (web, e-mail, intranet) egyedi jelentések (infohoz való hozzáférés,
munkamegosztás, teljes áttekintés) Statisztika, elemzések
Klasszikus statisztikai eszközök Gépi tanulás alapú adatelemzés Valószínűségi modellek építése
Minta (szignifikáns) Összefüggések, modellek kinyerése
adatbányászat „big data”
Végfelhasználók igényei• Tipikus felhasználók
• Alkalmi felhasználók („non-frequent user”)• nem érdekli őket az adattárház teljes tartalma,
csak időről időre információra van szükségük
• Előre definiált, friss jelentéseket igénylő felhasználók• Speciális érdeklődés, rendszeres időközönként
• Dinamikus, ad hoc lekérdezéseket igénylő felhasználó• Üzleti elemző
• Rendszerfejlesztő, üzemeltető felhasználó• Számára minden adat fontos• Specializált adatpiacokat alakítanak ki
OLAP (On‐line Analytical Processing)• OLAP ötletét E.F. Codd, a relációs adatbázisok atyja 1993-ban egy
Computerworld cikkben vetette fel.• Codd szerint a tranzakciós adatbázisok (OLTP) elérték
alkalmazásaiknak határait. Igen nagy számítási igény szükségesáltalános felépítésű nagy méretű adatbázisok lekérdezéseihez. Az operációs adatok sok esetben nem elégségesek a döntéstámogatáshoz, historikus adatok elemzése szükséges.
• Relációs adatbázis képes válaszolni tipikus kérdésekre,mint „Mi?, Mit?”
• Az adattárházak a múltbeli adatok összesítésével képesek válaszolni olyan kérdésekre, mint„Mi volt a teljes forgalom az előző öt évben a második negyedévben ?”
• Az OLAP célja az adatok elemzése és megértése alapján a„Miért?, Mi lenne ha?” típusú kérdések megválaszolása.
OLAP• OLAP és az adattárház komplementer fogalmak
• az adattárház tárolja és menedzseli,
• az OLAP stratégiai információvá alakítja az adatokat
• Az OLAP alapötlete, hogy a menedzserek képesek legyenek az adatok többdimenziót figyelembe vevő vizsgálatára, térbeli, időbeli eloszlásoknak az elemzésére.
• Felhasználási területe:
• Piac szegmentálás, marketing kutatás, termelés tervezés, ...
• A megoldás a sok dimenziós adatbázis („multi‐dimensional”).
Codd 12 szabálya• 1. Többdimenziós áttekintés• 2. Felhasználó számára egyszerű elérhetőség• 3. Folyamatos elérhetőség• 4. Konzisztens naplók készítése• 5. Kliens‐szerver architektúra• 6. Általános dimenzió aggregálás• 7. Dinamikus ritka mátrixok kezelése• 8. Multi‐user támogatás• 9. „Cross‐dimensional operations”• 10. Intuitív adatkezelés• 11. Rugalmas jelentések
• 12. Korláttalan dimenziók
OLTP vs. OLAP
OLTPadatrögzítő, informatikusnapról napra történőalkalmazás-orientáltaktuális, naprakész, részletes, relációkba foglalt izoláltIsmétlődőírás/olvasás
OLAPadatelemződöntés támogatástémakör-orientált történeti,összesített, többdimenziósintegrált, konszolidált ad-hocsok lekérdezés
FelhasználóFunkcióTervezésAdat
HasználatElérés
Munka egységeElért rekordokszámaFelhasználók számaMéretMérték
rövid, egyszerű tranzakcióktizes nagyságrend
komplex lekérdezésmilliós nagyságrend
ezres nagyságrend100MB-GB
Tranzakciós idő
százas nagyságrend100GB-TB
Lekédzezési idő
Mikor hasznláljunk OLAP‐ot ?
Az adatok iránti igény nem tranzakciós hanem elemző jellegű
Az elemzett információ nem elérhető közvetlen módon
Jelentős számítási (pl. összesítés) igény
Főként numerikus adatok
Az elemek, melyek az adatpontokat definiálják nem változnak időben
Miért külön adattárház?• Mindkét megközelítés jó teljesítményt nyújthat:
• Relációs adatbázis OLTP-re hangolva: közvetlen elérésimódok, indexelés
• Adattárház—OLAP-ra hangolva: összetett OLAP lekérdezések, többdimenziós nézet, konszolidáció.
• Különböző funkciók és különböző adatok:• Hiányzó adatok: döntéstámogató rendszer olyan historikus
adatokat kíván, melyeket egy tipikus relációs adatbázisban nem tárolnak
• Adat konszolidáció: pl. heterogén forrásból származó adatok aggregálása, összegzése
• Adat minőség: Különböző adatforrások általában inkonzisztens reprezentációt alkalmaznak, pl. eltérő idő formátumok
Dimenzionális adatmodellezés
Koncepciók I.
• Tények• Kapcsolódó adategységek• üzleti egységet, tranzakciót, eseményt jelöl• Kulcs tábla, melyben numerikus adatok szerepelnek
Dimenzionális adatmodellezés
Koncepciók II.• Dimenziók
• A tények hátterét definiálják (pl. idő, hely, üzletkötő …)• Gyakran nem numerikus egységek
• pl. termék márka, alkalmazott• Diagrammokban tengelyként ábrázolva
• Paraméterek, melyekre OLAP elemzést szeretnénkvégezni
• pl. Idő, Hely, Vásárló ...
lnformáció granuláltság, hierarchikus dimenziók
Record
Alacsonygranuláltság- sok részlet
Nagygranuláltság
- kevés részlet
elemek perc berendezés
termék
termék típus
nap
üzleti év
üzem
gyár
Operátor
Üzemvezető
Menedzsment
Koncepciók hierarchiája:Dimenziók hirearhiája
összes
Európa Észak-Amerika
... MexicoKanadaBelgiumMagyarország...
Vancouver ...
Belvárosi fiók
...
Budapest ...
összes
kontinens
kirendeltségek
ország
Torontováros
Dimenzionális adatmodellezés
Koncepciók III.
• Mértékek (Measures)• Egy tény numerikus értéke (pl. eladott mennyiség)
Koncepcionális modellezés
• Csillag diagram: Középen ténytábla körülötte dimenzió táblák
• Hópihe séma:A csillag séma finomítása ahol a dimenziók
hierarchiája normált, azaz kisebb dimenzió táblákra osztott
• Tény konstellációk: Több ténytábla, csillag sémák összessége,
ezért galaxis sémának is hívják
• Adatkocka
Példa csillag sémára
Eladások tény tábla
Measures
timetime_key dayday_of_the_week monthquarter year
locationlocation_key streetcity province_or_streetcountry
itemitem_key item_name brandtype supplier_type
branchbranch_key branch_name branch_type
time_key
item_key
branch_key
location_key
units_sold
dollars_sold
avg_sales
Példa hópihe sémára
location_key street city_key
location
Eladások tény tábla
time_key
item_keybranch_key
location_key
units_sold
dollars_sold
avg_salesMeasures
city_keycityprovince_or_streetcountry
city
timetime_key dayday_of_the_week monthquarter year
itemitem_key item_name brandtype supplier_key
branchbranch_key branch_name branch_type
supplier
supplier_key supplier_type
Példa galaxis sémára
location_keystreetcityprovince_or_street country
location
Eladások ténytábla
Measures
item_keyitem_namebrandtype supplier_type
itemSzállítások ténytábla
time_key
item_key
shipper_key
from_location
to_location
dollars_cost
units_shipped
shipper_key shipper_namelocation_key shipper_type
shipper
time_key
item_keybranch_key
location_key
units_sold
dollars_sold
avg_sales
time
time_keydayday_of_the_weekmonthquarter year
branchbranch_key branch_name branch_type
Többdimenziós adatkocka
• Az eladási mennyiség a termék, az idő, és a régió függvényében
Dimenziók: Termék, Hely, IdőEgységek hierarhikus összegzése
Term
ék
Idő
Iparág Régió Év
Kategória Ország Hónap
Termék Város Hét
Hivatal Nap
Példa adatkockáraTeljes éves TV eladás
Ors
zág
Idő2 .n.év 3 .n.évTV
PCVideó
sum
sum1.n.év 4 .n.évU.S.A
Kanada
Mexikó
sum
Tábláktól az adatkockáig• Az adatkocka, pl. eladások, lehetővé teszi, hogy több szempont figyelembevételével vizsgáljuk azadatokat:
• Dimenzió táblák, (pl. árucikk, cikk_név, márkanév, típus),vagy idő(nap, hét, hónap, negyedév, év)
• Tény táblamértékeket (pl. dollár_forgalom) és kapcsolatokat tartalmaz melyek a dimenzió táblákhozkapcsolódnak
Az adattárház felépítése
• Három tipikus komponens• Maga az adattárház, az adatokkal és a hozzá
tartozó szoftverrel,• Adatgyűtjő (back end) szoftver, mely a külső
forrásokból származó adatokat konszolidálja, összegzi és betölti az adattárházba,
• Kliens oldali (front-end) szoftver, mely lehetővé teszi a felhasználóknak, hogy elérjék és elemezzék az adatokat.
Adattárház struktúrális elemei
Adat források Operációs adatbázisok Hisztorikus adatok Külső adatforrások (internet) Különböző platformokon Különböző módon strukturált
információk Nem strukturált források: képek,
multimédia, szöveg
Exktrakció/propagálás
Különböző forrásokból az adatok gyűjtése
Szelektív folyamat (releváns információk)
Pulling (kinyerés) Pushing (propagáció)
Transzformáció/tisztítás• Kódolások feloldása
• kódtáblák• pl. 1: férfi, 2 nő …
• rejtett üzleti szabályok feloldása
• pl. számlaszám, vonalkódfelépítése
• Tisztítás (cleaning)• hiányzó értékek pótlása• normalizálás (pl. egységes
deviza használata)• konzisztens reprezentáció
Finomítás
Rész adathalmazok generálása Számított mezők Információk összegzése
(summarize) granuláltság szintjét
változtatja pl. heti adatok
Információk aggregálása Csoportok generálása pl. termékcsoportok
Adatpiac
Speciális döntésekhez szabottelőzetesen aggregált információk
Végfelhasználók hozzáférésének kontrollálása
Speciális információkhoz gyors hozzáférés
Végfelhasználók fele interfész
Adattárház kiegészítése Egyensúly az adatpiacok száma
és specializáltsága(egyszerűsége) között
Meta‐adatok
Kategóriák segítségévelstruktúrálja az adattárházadatait
Téma orientált: a valósegyedek absztrakciói
Definiálja, hogy kell atranszformált adatotinterpretálni, pl. dátum 5/9/99
A válaszidő becslésére alkalmas,pl. rekordok száma
A származtatottváltozók számításának leírása