TARTALOMJEGYZÉK BEVEZETÉS................................................................................................................... 2 1. A PROBLÉMAMEGOLDÁS ÉS AZ ADAT KAPCSOLATA............................... 4 1.1 A vállalatok működési környezete .......................................................................... 4 1.2 Az adat szerepe a problémamegoldás során............................................................ 5 2. ADATVAGYONMENEDZSMENT.......................................................................... 8 2.1 A vállalkozások által elérhető adatforrások ............................................................ 8 2.2 Az adatvagyon architektúrája .................................................................................. 9 2.3 Adatvagyon-menedzsment .................................................................................... 10 2.4 Az értékközpontú megközelítés ............................................................................ 15 3. AZ ADATMINŐSÉG FEJLESZTÉSE................................................................... 16 3.1 Adatminőség dimenziói ........................................................................................ 17 3.2 Adathibák osztályozása ......................................................................................... 17 3.3 Az adatminőség-menedzsment értelmezése .......................................................... 20 3.4 Az adatminőség fejlesztésének folyamata ............................................................ 22 4. MÓDSZERTAN ÉS TECHNOLÓGIAI ESZKÖZTÁR ....................................... 26 4.1 Preventív kontroll .................................................................................................. 26 4.2 Adatprofilozás ....................................................................................................... 29 4.3 Adattisztítás ........................................................................................................... 38 4.4 Az adatminőség magyar specialitásai ................................................................... 41 5. SZOFTVERTÁMOGATÁS ..................................................................................... 45 5.1 Funkcionális követelmények ................................................................................. 46 5.2 Kereskedelmi alkalmazások .................................................................................. 48 5.3 Szabad felhasználású alternatívák ......................................................................... 51 5.4 A szabad felhasználású szoftverek értékelése ....................................................... 55 5.5 A javasolt alkalmazás ............................................................................................ 59 6. RENDSZERTERV.................................................................................................... 60 6.1 A rendszer magas szintű logikai architektúrája .................................................... 61 6.2 Szerkezeti modell .................................................................................................. 63 6.3 Viselkedési modell ................................................................................................ 68 ÖSSZEFOGLALÁS...................................................................................................... 70 SUMMARY ................................................................................................................... 71 IRODALOMJEGYZÉK .............................................................................................. 72 FÜGGELÉK .................................................................................................................. 75
1
BEVEZETÉS Napjainkban a hagyományos erőforrások mellett egyre hangsúlyosabb szerepet kap az adat és az információ. Az adatok rohamosan növekedő mennyiségének tárolása technikailag jól kezelhető a skálázható adatbázisokkal és adattárházak bevezetésével, de az adatmennyiség expanziója új kihívások elé állítja a szervezeteket. A vállalkozások eredményességét nagyban meghatározza az adatok kezelésének menedzsment szemléletű megközelítése, különös tekintettel az adatok minőségére vonatkozóan. Az adatok csak akkor értékesek, ha az üzleti döntéshozatal szempontjából teljes körűek, megbízhatók és naprakészek. A különböző adatforrások eltérő struktúrái, adattartalmi problémái a felhasználhatóságát és végső soron az üzleti döntés minőségét veszélyeztetik. A vállalatok e-gazdaságban való szerepvállalását támogató technológiák újabb lökést adnak a vállalati adatvagyon tudatos, stratégiai szinten való kezelése és felhasználása iránti igénynek. Az adatmennyiség növekedését a technológiai fejlődés új dimenziói, az elektronikus üzletvitel, az e-kereskedelemben rejlő lehetőségek kihasználása és az ellátási láncokhoz való csatlakozás fokozza. Napjainkban az adatminőség tudatos fejlesztésének hiányában már nem csupán az adott vállalat szembesül a silány adatminőségből fakadó hátrányokkal, hanem a vállalat partnerei, esetleg vállalatok egész láncolata. A felhalmozott adatvagyonból feltárt információk fontos részét képezik a szervezetek intellektuális tőkéjének. Az adatvagyonból kinyert ismeretek integrálása az üzleti folyamatokkal közvetlen versenyelőnyt jelent a dolgozat által fokuszált, kompetitív piacon versenyző kis- és közepes vállalkozások (KKV) számára. A nagyvállalatok körében elterjedt korszerű döntéstámogatási technológiákat a KKVnak is ki kell használniuk ügyfeleik jobb kiszolgálása, a versenyben való sikeres helytállás, végső soron a folyamatos fejlődés érdekében. A hazai szakértők szerint várhatóan a következő években (2015-2016) kezdődik meg a döntéstámogatás jelenleg csúcstechnológiáját jelentő adatbányászat elterjedése a magyar KKV-k körében. Az elterjedés kulcstényezője, hogy elegendő mennyiségű és megfelelő minőségű adat halmozódjon fel náluk ahhoz, hogy az adatbányászat fontos üzletviteli kérdésekre adhasson válaszokat. Dolgozatomban olyan technológiai megoldást keresek, amely elősegíti a letisztult jövőképpel rendelkező KKV-k alkalmassá válását az adatvagyon tudatos és korszerű felhasználására. A dolgozat első felében az irodalomkutatást kiegészítve integrálni kívánom a vállalati információs rendszerek szakirányon hallgatott kurzusok és az Adattárházak építése valamint az Adat- és szövegbányászat választható tárgyak óráin szerzett ismereteimet, hiszen mindegyik tárgyterület kiemelten foglalkozik az adatminőség kérdéskörével.
2
A jelen bevezetést követő általános irodalmi áttekintés célja az egymással versenyző vállalatok üzleti döntési környezetének ismertetése, majd az adat fogalmának bevezetése és a döntéshozatalban játszott szerepének hangsúlyozása. Az elméleti áttekintés után a 2. fejezetben felépítem és bemutatom egy korszerű szervezet adatvagyonának logikai architektúráját, amelynek implementálására egy innovatív szemlélettel rendelkező KKV-nak is törekednie kell. A modell alapján megvizsgálom az adatvagyon, mint rendszer szerkezeti jellemzőit, valamint felhasználásának korszerű eszközeit. A fejezet végén bemutatom az adatvagyonmenedzsment funkcióit és az üzleti célok elérésének elősegítésében játszott szerepét. Az értékközpontú megközelítés hangsúlyozása során rámutatok arra, hogy az adatvagyon értékét alapjaiban meghatározza az adatminőség magas szinten tartása. A megfelelő adatminőség növeli az adatok felhasználásának értékét, javítja a feldolgozás hatékonyságát és csökkenti az adatvagyon fejlesztésére fordítandó kiadásokat (TCO). A dolgozat második felében az adatminőség magas szinten tartásának módszertanát és technológiai támogatását vizsgálom. A 3. fejezetben bemutatom, hogy az adatokban bekövetkező hibák hogyan tipizálhatók és ezek megelőzése illetve javítása milyen technikákkal lehetséges. Az adathibák detektálását és az adattisztítást is lehet automatikus, algoritmikus úton segíteni, ezért az adatminőség fejlesztéséhez és fenntartásához kapcsolódó folyamatokat, lehetőség szerint technológiai megoldásoknak is támogatniuk kell. Az adatprofilozás és az adattisztítás módszertani kérdéseit az 4. fejezetben mutatom be, majd a fejezet végén részletesen kitérek az adatminőség hazai sajátosságaira is. Az 5. fejezetben az adatminőség fejlesztésének bemutatott technikái alapján megfogalmazom a folyamatok támogatását célzó szoftvereszközökkel szemben támasztott követelményeket. Célom egy olyan követelményrendszer megfogalmazása volt, amely az adatok teljes életciklusának felölelésére törekedve, minden felhasználási szinten támogatja az adatminőség biztosítását, végső soron az üzleti döntéshozatalt. A specifikáció alapján megvizsgálom az elérhető professzionális és nyílt forráskódú alkalmazásokat, majd értékelem a KKV-k számára releváns megoldásokat. Az értékelés alapján javaslatot fogalmazok meg a KKV-k számára a követelményrendszernek legnagyobb mértékben megfelelő alkalmazás bevezetésére. Amennyiben egy vállalkozás számára a javasolt eszköz nem teljesen felel meg, felmerül az igényekhez jól illeszkedő rendszer saját fejlesztés keretében való kialakítása. Ehhez kíván kiindulópontot nyújtani a 6. fejezet, amelyben a fejlesztés támogatását megcélozva bemutatom egy adatminőség keretrendszer magas szintű logikai tervét. A dolgozat záró fejezetében röviden összefoglalom az elért eredményeket és a hozzájárulást a felvetett problémák megoldásához.
3
1. A PROBLÉMAMEGOLDÁS ÉS AZ ADAT KAPCSOLATA 1.1 A vállalatok működési környezete Az üzleti vállalkozások működésének alapvető célja a fogyasztói igények kielégítése, nyereség elérése mellett. A cél elérése a vállalkozások erőforrásai és azok felhasználására vonatkozó képességei függvényében kialakított értékteremtő folyamatokon keresztül valósul meg[1]. Az alapvető cél elérésére törekvés közben a profitorientált vállalat folyamatos versenyhelyzetben áll a termékeivel és szolgáltatásaival azonos fogyasztói csoportot megcélzó konkurens vállalatokkal. Az azonos iparágban működő vállalatok termékeik és technológiájuk hasonlósága miatt nem csupán a fogyasztókért, hanem a zökkenőmentes termeléshez szükséges, szűkösen rendelkezésre álló erőforrásokért is versenyeznek. A verseny során a piaci szereplők folyamatosan az egymással szembeni előny megszerzésére és fenntartására törekednek. Végső soron azért, hogy a fogyasztók részére a versenytársaiknál nagyobb értéket teremtve tartós versenyelőnyt szerezzenek. A gazdasági környezet dinamikusan változó kihívásaira a vállalatnak reagálnia kell, a kitűzött stratégiai céljainak megfelelően. A reagálás folyamatosan, a szervezeti hierarchia minden szintjén döntési szituációkat eredményez, amelynek a vállalat stratégiája szab keretet. A stratégia cselekvések sorozatát írja elő arra nézve, hogy hogyan juthat el a vállalat egy számára kedvező kép megvalósulásához, illetve hogyan képes az azt elősegítő cselekvési alternatívák végrehajtására. A kompetitív piac minden résztvevője döntésének eredményét befolyásolja a többiek lehetséges választása. Minden vállalatnak figyelembe kell vennie a versenytársak várható reakcióit, kiemelten amikor a termelési mennyiséggel, az árszinttel, illetve beruházással kapcsolatos döntést hoz. Egy vállalat döntései hatással vannak versenytársaira, amelyek ezen döntésekre való reagálásukkal visszahatnak a vállalatra1. Az üzleti döntési szituációkat tovább bonyolítja, hogy a fogyasztói igények és termelési technológia változik, új versenytársak lépnek be és a régiek is keresik az új megoldásokat. A kihívásokra vonatkozó reakciókat, lépéseket a vállalat vezetése határozza meg. A vezetés folyamata döntések sorozataként fogható fel. A vállalat eredményessége ennek megfelelően a reakcióikon, következtetésképp az ezekhez szükséges döntéshozatal minőségén, sebességén múlik.
1
A több szereplős verseny- és együttműködési helyzeteket a játékelmélet tanulmányozza és elemzi.
4
Az A. Függelékben elsősorban Sántáné et al.[2], Cserny[3] és Chickán[1] munkájára támaszkodva áttekintésre kerülnek a dolgozat témája szempontjából releváns döntéselméleti alapfogalmak, eljutva az adat döntéshozatalban játszott szerepének bemutatásáig. 1.2 Az adat szerepe a problémamegoldás során Az adat fogalmának egy definiálását adja Juhász[4], az adatok forrásának kiemelésével: „Az adat mérés vagy közvetlen tapasztalat eredményeképpen létrejövő elemi ismeretet jelent” Halassy[5] meghatározása az adatok felhasználhatóságát hangsúlyozza: „Az adat tények, fogalmak, eligazítások olyan formalizált reprezentációja, amely alkalmas az emberi vagy az automatikus eszközök által történő kommunikációra, értelmezésre és feldolgozásra” Ahogyan a bemutatott definíciók rámutatnak, az adat a valóságos világ egy önálló eleméről, objektumáról (továbbiakban: egyed, elem, objektum, entitás) szerzett ismeret, amely alkalmas a kommunikációra, értelmezésre és feldolgozásra. A valóságos világ egy t objektumának formalizált leírása: =〈 ,
,…,
〉
ahol
∈
1
×
2
× …×
Az objektumot n darab tulajdonság (dimenzió) jellemzi. Egy tulajdonságnak attribútum felel meg, amelynek értékkészletét a Ti halmaz jelenti.
∈
Az egyes tulajdonságokat leíró adatok információ-nyújtásra való felhasználása fő alkotóeleme a szervezeti folyamatoknak és minden döntéshozatal alapját képezi. Tekintettel arra, hogy a problémamegoldás során egy döntés mindig a valós világról megismert jellemzők alapján és a valós világról alkotott modellek felhasználásával történik, a hatékony döntéshozatal megkívánja a probléma szempontjából kulcsfontosságúnak ítélt jellemzők gondos kiválasztását és az attribútumok értékeinek, azaz az adatoknak a pontos megadását. Azzal, hogy a valóságos világ egy objektumának mely tulajdonságai ítélendők meg a probléma megoldása szempontjából tipikus jellemzőknek és hogy azok értékeinek megragadása hogyan történik, az adatmodellezés foglalkozik. Az adatmodellezés lényege a valós jelenségek (egyedek) feltárása, a döntéshozatal során figyelembe venni szükséges sajátosságainak (tulajdonságok) és összefüggéseinek (kapcsolatok) szemantikai leképezése.
5
1.1 ábra - Az adatmodell különböző absztrakciós szintjei Az adatmodell biztosítja azt a formalizmust, melynek segítségével megadható a vizsgált problémakör adatelemeinek szerkezetén túl azok viselkedése és az adatelemekre vonatkozó megszorítások is. Az adatmodell az alábbi három összetevőből áll[6]: -
adatok struktúrája: adatok rendszerezett ábrázolása, amely meghatározza az attribútumokat és azt, hogy azok miként kapcsolódnak egymáshoz adatokon végezhető műveletek véges halmaza adatra tett megszorítások, értékmegkötések arra nézve, hogy milyen adatok engedélyezettek (intervallumtól az összetett korlátozásokig)
Az adatmodell2 döntéselméleti jelentősége abban rejlik, hogy alapjaiban meghatározza a probléma felismerést. Az adatmodell minősége befolyásolja a valóság visszatükröződését a döntéshozó számára. A valóság minél pontosabb reprezentálása a probléma megismerése és a megoldáshoz szükséges ismerethiány csökkentése szempontjából kritikus tényező. A rossz adatmodell (pl.: releváns attribútumok hiánya, hibás megszorítások) gátolja a döntési környezetről való információszerzést. A döntéshozatal elválaszthatatlan az információ fogalmától. A döntés lényegében azt jelenti, hogy a környezetből és a vállalat korábbi működéséből származó információk
2
Az első és legrégebbi adatmodellező módszer az Egyed-Kapcsolat modell, amelynek 3 alapvető eleme: egyedhalmazok, attribútumok, kapcsolatok
6
alapján olyan új információkat hoz létre, amelyek a vállalati működést biztosítják és az erőforrásokat mozgásba hozzák. Az információ új ismeretté értelmezett olyan adat, amely a döntéshozó számára releváns és ismerethiányt csökkent. Az adat és az információ világosan megkülönböztethető egymástól. Az adat csupán közölt, de nem értelmezett ismeret. Az adatból levont egyéni, szubjektív, tudást megváltoztató következtetés az információ3.
1.2 ábra - Adat, információ, tudás[7] Az információ minden emberi tevékenység alapvető összetevője, az emberi értelem és a környező világ kapcsolatának megteremtője. A környezet alapvető bizonytalansági tényezői miatt folytonosan szükséges az eligazodáshoz mindenki számára, így a vállalatok működésében is kulcsfontosságú szerepet játszik. A tudás az információ felhasználásával jön létre és gyarapszik, ugyanakkor a már megszerzett tudás meghatározza az adatok értelmezésének kontextusát. Az információ az üzleti döntések inputja és szerepel a tevékenységek eredményei között is. Mivel a vállalat fel is használ és termel is információkat, így a működését integráló folyamatok egyik összetevője, a vállalat életében ugyanolyan nélkülözhetetlen, mint a többi, hagyományos erőforrás (munkaerő, tőke, stb.). Az anyagi folyamatok és az információs folyamatok egymástól elválaszthatatlanok.
3
Az adat átalakításának módjai: kontextusba helyezés, osztályozás, számítás, javítás, tömörítés (aggregálás).
7
2. ADATVAGYONMENEDZSMENT Napjainkban a tárolókapacitások méretének bővülése a tárolt adatok feldolgozásának és megjelenítésének javuló technológiai lehetőségeivel társul. Az informatika fejlődése a döntéshozók számára rendelkezésre álló adatmennyiség exponenciális növekedéséhez vezetett (big data jelenség). 2.1 A vállalkozások által elérhető adatforrások A vállalat adatvagyonát a vállalat működése során keletkező (belső) és a külvilágból származó (külső) adatok képezik. A számítógépen tárolt adatok strukturáltságuk szerint három formában jelennek meg: -
-
strukturálatlan: kötetlen adatállomány (szöveg, multimédia, stb.), amelynél nincsenek előre meghatározott terjedelmi korlátok és szabályok, nem illeszthető jól használható adatmodell félig-strukturált: a modellben az adatok gráf vagy fa szerkezetbe vannak szervezve strukturált: a logikai, döntően relációs adatmodell fizikai leképezése
A strukturálatlan adatokat nehéz feldolgozni és értelmezni, de az adatok kezelése kívánatos, miután a szervezetek adatainak zöme ebben a formában létezik. A strukturálatlan adatok hatékony feldolgozását a B Függelékben tárgyalt szövegbányászat támogatja. A dokumentumtárolási és feldolgozási formátumként gyakran használt XML a féligstrukturált adatmodellek egyik fontos példája4. Az XML általános célú leíró nyelv, amely amellett, hogy képes a legtöbb általános számítástudományi adatstruktúra ábrázolására, mind ember, mind gép számára olvasható és elemezhető. A szigorú szintaktikus és elemzési követelmények támasztása biztosítja, hogy a szükséges elemzési algoritmus egyszerű és ellentmondásmentes legyen. Az alkalmazások közötti integráció és kommunikáció során kitüntetett szerepet játszanak a félig strukturált adatformátumok. Az XML fontos szerepet tölt be a vállalati alkalmazások közötti adatcsere során, amely a korszerű alkalmazásintegrációs technológia, a webszolgáltatásokra erősen támaszkodó SOA esetében is elterjedt formátum. Az XML szintaxis hátránya, hogy elég bőbeszédű és részben redundáns. Ez nehezítheti az emberi olvashatóságot és a feldolgozás hatékonyságát, valamint nagyobb tárolási költséggel jár.
4
A táblázatkezelők (Excel) által használt állományok (.xls, .xlsx) és a CSV fájlok is a félig-strukturált formátumok közé sorolhatók.
8
Az adatok megbízható, hosszútávon tartós (perzisztens) tárolása és gyors visszakereshetősége a strukturált adatbázisok segítségével biztosítható. A strukturált adattárolási forma a feldolgozási lehetőségek legszélesebb tárházát teszi lehetővé. A legtöbb adatelemző algoritmus kizárólag strukturált formában tárolt adatokon képes dolgozni, ezért a vállalatok a döntéstámogatás hatékonyságának biztosítása érdekében törekednek adataikat strukturált formába szervezni. A vállalatok belső, a működés során keletkező adataikat tipikusan rendezett állományokban, relációs adatbázisokban tárolják. A relációs adatmodell fogalma elválaszthatatlanul kapcsolódik az adatbázisokhoz, a kereskedelmi adatbázisrendszerek többsége is erre támaszkodik. A modell hatékony struktúrát ad a valóságos világban található jelenségeket reprezentáló adatok tárolásához és zárt matematikai alakban biztosítja azok visszakeresését és feldolgozását5. A relációs adatmodellezés egyik fő célja az optimalizálás, a modellt alkotó egyedek lehető legjobb belső és külső szerkezetének megkeresése, amelynek eszköze a normalizálás. A normalizálás olyan eljárás, amelynek célja az átfedések, redundancia kiküszöbölése. Az eljárás az egyedek tulajdonságai közötti sajátos viszonyok, a funkcionális függőségek6 alapján az adatmodell átalakítását7 jelenti. 2.2 Az adatvagyon architektúrája Az adat megjelenése nem statikus, különböző folyamatokon keresztül áramlik az eltérő felhasználási célokat támogató adattároló elemek között, miközben gyakran a struktúrája is megváltozik. A dolgozat témája szempontjából vizsgálatra szorul a vállalati adatok megjelenése az eltérő felhasználási célokat támogató strukturált adatbázisokban. A 2.1 ábra bemutatja egy tipikus példáját a vállalati adatok áramlásának, kiemelve a felhasználás főbb állomásait és az adatvagyon kezelése szempontjából kritikus tevékenységeket. A séma egyben megadja az adatvagyon és technológiai támogatásának vizsgálati kereteit is.
5
A matematikai reláció fogalma halmazok (attribútumok) direkt szorzatának egy részhalmazát jelenti. A relációs adatmodell műveletei között öt alapművelet és számos származtatott művelet definiálható. Az alapműveletek: Descartes-szorzat, unió, különbség, kiválasztás (szelekció), vetítés (projekció). A legfontosabb származtatott műveletek: metszet, természetes illesztés (natural join), általános (Theta) illesztés. 6 Egy állítás, amely azt mondja, hogy ha egy reláció két sora megegyezik néhány megadott attribútumon, akkor megegyezik attribútumok egy másik halmazán is. 7 Egy egyed harmadik normálformában van, ha minden leíró attribútuma csak egy adatot tartalmaz és függ a kulcsától (nincs összetett attribútum, 1NF), csak a teljes kulcsától (nincs részleges függőség, 2NF) és semmilyen más tulajdonságától, csak a kulcsától (nincs belső függés, 3NF). BCNF formában a kulcsattribútumoknak nincs olyan részhalmaza, amely más attribútumtól függ (nincs kulcstörés).
9
2.1 ábra - Az adatok útjának fő állomásai a döntési szintek tükrében Az adatvagyon elemei és a köztük lévő kapcsolatok rendszert képeznek. Az adatvagyon architektúrájának fenti ábrázolása tartalmazza mindazokat a tipikus elemeket (adatforrások, tranzakciós adatbázisok, adattárházak, adatpiacok), amelyekben napjainkban egy vállalat adatai jelen vannak és azokat a folyamatokat (adatrögzítés, betöltés, ETL folyamat, tematizálás, adatelőkészítés), amelyek révén az egyes elemek közötti adattranszmissziók megvalósulnak. A vállalati adatvagyon és később az adatminőség tárgyalása során kitüntetett vizsgálati szempontokat képez az adatok döntési szintek szerinti felhasználási formája és az adatvagyon elemeket kezelő rendszerek kapcsolata. Az adatvagyon architektúra a dolgozat B. Függelékében kerül részletesen bemutatásra. 2.3 Adatvagyon-menedzsment Egy vállalat életében az adatvagyon fejlődése végigkíséri a cég növekedését, gazdasági fejlődését. Ahogyan a vállalat tevékenységének komplexitása növekszik és a gazdaság szereplőinek egyre nagyobb körével kerül kölcsönhatásba, az üzleti és az azokat kísérő információs kapcsolatok kiszélesednek. Az információs kapcsolatok expanziójával párhuzamosan a döntéshozók számára rendelkezésére álló adatmennyiség is nő. Az adatmennyiség növekedését a technológiai fejlődés új dimenziói, az elektronikus üzletvitel, az e-kereskedelemben rejlő lehetőségek kihasználása és az ellátási láncokhoz való csatlakozás tovább fokozza. Az e-gazdaság olyan széles körű hálózatépítést tesz lehetővé, amely a gazdasági kapcsolatok szerkezetének korábban elképzelhetetlen gyors változásához vezet. A folyamatokat kísérő technológiák (CRM, SCM, EDI, SOA alkalmazás integráció, stb.) újabb lökést adnak a vállalati adatvagyon tudatos, stratégiai
10
szinten való kezelése és felhasználása iránti igénynek. Egyre nagyobb kihívást jelent a dinamikusan változó üzleti folyamatokhoz szükséges adatok biztosítása, frissítése, a megfelelő adatminőség fenntartása. Az ellátási láncokban a vevők megkövetelik beszállítóiktól a részletes, nekik megfelelő mélységben és formában történő adatközlést. A tudatos gazdálkodás hiányában már nem csupán az adott vállalat szembesül a menedzsment szemlélet hiányából fakadó hátrányokkal, hanem a vállalat partnerei, esetleg vállalatok egész láncolata. Kihívás
Következmény
több és többféle adat
belső és külső, strukturált és strukturálatlan adatok mennyiségének és féleségének gyors növekedése
több változás és bizonytalanság
az előre nem kalkulált üzleti igényeket nem lehet előre definiált modellekkel, jelentésekkel és vizualizációval kielégíteni
több váratlan kérdés
növekszik az igény az önkiszolgálás képességére: a felfedező adatfelhasználásra, új adatok hozzáadására, elemzési témakörök gyors kialakítására
2.1 táblázat - Új kihívások az adatvagyon gazdálkodásban Az adatok kezelése meghatározza a vállalatok eredményességét. A meglévő adatok hatékonyabb felhasználása és a folyamatosan keletkező új adatforrások bevonása a vállalati döntéshozatalba újszerű, adatközpontú szemléletet követel meg a szervezettől. Annak érdekében, hogy az adatvagyon elemei és a közöttük kapcsolatot létesítő folyamatok hosszú távon és hatékonyan szolgálják a vállalat céljainak elérését, a vállalatnak az adatvagyonra úgy kell tekintenie, mint erőforrásra, amellyel folyamatosan gazdálkodnia kell. Az adatvagyon menedzsment szemléletű megközelítése képes biztosítani azokat a szervezeti és technológiai kereteket, amelyek hozzájárulnak ahhoz, hogy a megfelelő minőségű adatok a megfelelő személyekhez, a megfelelő időben és a megfelelő költségek mellett jussanak el. Az adatvagyon menedzselésének hiánya esetén az adatok biztosítása késik az információigény felmerüléséhez képest. Rosszabb esetben a szükséges adatok egyáltalán nem állnak rendelkezésre a döntéshozó számára, esetleg a különböző adatforrásból érkező adatok ellentmondásosak. Az adatminőség olyan silány, hogy alkalmatlan a felhasználásra a problémamegoldás során. „Az adatvagyon-menedzsment olyan architektúrák, irányelvek, gyakorlatok, eljárások fejlesztése és végrehajtása, amelyek összessége megfelelően szolgálja ki a vállalati adatok teljes életciklusa során felmerülő igényeket, ezáltal folyamatosan emeli az adatvagyon értékét.” [web1]
11
Funkció
Tevékenységek
architektúra menedzsment
a vállalati architektúra részeként a vállalati adatvagyon architektúra fejlesztésével és karbantartásával járó tevékenységek
adatfejlesztés
a szoftverfejlesztési életciklus (SDLC) részeként az adatfókuszált tevékenységek (adatmodellezés, követelmény analízis, tervezés, implementáció és karbantartás)
dokumentum és tartalom menedzsment
tervezési, implementációs és irányítási tevékenységek a strukturálatlan adatok tárolásához, védelméhez és a hozzáférés biztosításához kapcsolódóan
adatbázis-üzemeltetés menedzsment
a strukturált fizikai adatelemek teljes életciklusát kísérő tervezési, implementációs és támogatási tevékenységek
adatbiztonság menedzsment
tervezési, implementációs és kontroll tevékenységek az adatok védelmének biztosítása és a jogosulatlan hozzáférések elkerülése érdekében
referencia- és törzsadat menedzsment
a belső törzsadatok és a külső referencia adatok biztosításával járó tervezési, implementációs és kontroll tevékenységek
metaadat menedzsment
a magas minőségű, integrált metaadatok biztosításához szükséges tervezési, implementációs és kontroll tevékenységek
adatminőség menedzsment
az adatminőség meghatározására, monitorozására és fejlesztésére irányuló tervezési, implementációs és kontroll tevékenységek (mérés, értékelés, fejlesztés)
adattárház és üzleti intelligencia menedzsment
tervezési, implementációs és kontroll tevékenységek a döntéstámogató adatokhoz való hozzáférés biztosítása, az elemzés és jelentéskészítés támogatása érdekében
2.2 táblázat - Az adatvagyon menedzsment funkciói Az adatvagyon-menedzsment a vállalat adatvagyonát érintő vezetési-irányítási kérdésekkel foglalkozik, az architektúra tervezésétől a felhasználhatóság biztosításán át az egyes elemek esetleges megszüntetéséig bezárólag. Minden funkciója leírható úgy, mint az adatvagyonon végrehajtott tevékenységekre irányuló folyamatos döntéssorozat. Az elterjedt PDCA ciklus logikáját követve felkarolja az adatvagyon tervezését, implementálását, folyamatos ellenőrzését és szükség esetén meghatározza a beavatkozásokat az összes funkció vonatkozásában.
12
2.2 ábra - Az adatvagyon menedzsment folyamatciklusa A tervezés adja meg az adatvagyon-menedzsment tevékenységeinek stratégiai kereteit. A fiatal, növekedési szakasza elején járó vállalatok (KKV) többsége rendelkezik a tranzakció-feldolgozó rendszerek jól kialakított alapjaival, amely a tervezés kiindulópontját jelenti. Az adatvagyon architektúra tervezésekor azonban a legszélesebb összefüggéseiben kell egy vállalat adataival foglalkozni. A vállalatoknak aktív szerepet vállalva kell gondoskodniuk arról, hogy a szervezet számára szükséges és hasznos adatok bekerüljenek a rendszerbe és a rendszer által szolgáltatott információk eljussanak a döntéseket hozó felhasználókhoz. A tervezés kiterjed az üzleti folyamatok által igényelt adatok azonosítására és definiálására, valamint annak meghatározására, hogy ezeket az adatokat hogyan szerzik meg és használják fel. Egy jövőképpel rendelkező vállalat az adatvagyon tervezése során nem csupán azokkal az adatvagyon elemekkel és folyamatokkal foglalkozik, amelyek az információs rendszerekben már jelen vannak, hanem figyelmet fordít azokra is, amelyek az érettség egy későbbi szakaszában kerülnek bevezetésre és alapjaiban meghatározzák a további fejlődést (pl. adattárházak és adatbányászat). Fajszi et al.[8] az adatbányászat várható hazai fejlődésében 2015-2016 időszakra teszi az adatbányászat KKV-knál való elterjedését. Az elterjedés leginkább két tényezőtől függ: az adatbányászati eszközök tömeges használatba kerülésétől (használhatóság relatív alacsony ára) és hogy elegendő nagy mennyiségű olyan adat halmozódik-e fel náluk, amely megfelelő minőségű és fontos üzletviteli kérdésekre adhat választ. A technológiai tényezők mellett kiemelt feltétel továbbá a hazai menedzsment kultúra fejlődése is. Az adatvagyon architektúráját összehangoltan kell megtervezni, és már a tervezés korai szakaszában tekintettel kell lenni az architektúra újabb elemekkel vagy felhasználási módokkal való bővítése esetén felmerülő követelményekre. A tervezés folyamata együtt jár a vállalat adatvagyon architektúrájának átfogó kialakítási felelősségével, amely támogatja az üzleti stratégia megvalósítását és szorosan kapcsolódik az egyes üzleti folyamatokhoz.
13
Az összehangolt tervezés megkönnyíti az egész rendszer működtetését és fenntartását, mivel az egyes elemek közötti kapcsolatot megtestesítő folyamatok rugalmasan biztosítják az adatvagyon bővítését és az adatok áramlása követi az üzleti logikát. A működtetés magában foglalja az adatforrásokból kinyerhető adatok gyűjtésének, tárolásának és elosztásának vezérlését. Köteles támogatni a szervezeten belül és az egyéb szervezetekkel felmerülő kommunikációs problémák megoldását, amelyekkel kölcsönös az adatok cseréjére és megosztására kiterjedő függőség. Az adatvagyon működtetését technológiák (szoftver- és hardvereszközök), folyamatok és személyek testesítik meg. Akkor lehet sikeres, ha tudatosítja az adatvagyon menedzsment szerepét a szervezeti célok elérésében és segíti a felhasználókat abban, hogy az adatokat és információkat összefüggően használják fel működési területükön és rendszereikben Kulcsfontosságú az adatvagyon-menedzsment folyamatainak összehangolása a szervezeti struktúrával. Meg kell határozni, hogy milyen kompetenciák kellenek az adatkezelés ellátásához, milyen hatáskört kell biztosítani az adat kezelője számára és mindez milyen felelősséggel jár. A működtetés tartalmazza a felelősséget a szervezet metaadatbázisai karbantartásáért, a teljesítmény felügyeletéért és a biztonságot szolgáló előírások betartásáért. Az adatvagyon-menedzsment funkciói helyes működésének ellenőrzése kiterjed a vállalat összes vagyonelemére és azok kapcsolataira. Ennél szűkebb felfogás korlátozza a beavatkozási képességet a rendszer rendellenességei esetén. A rendszerbe kerülő inkonzisztenciák kezelése költségesebb, mint az elkerülésüket biztosító olyan kontroll fenntartása, amelyek segítségével már az adatbevitelekor (rögzítés, betöltés, alkalmazásintegráció) felismerhetőek a hibák, beleértve a jogosulatlan hozzáférést, illetéktelen adatmódosítást. A korszerű adatvagyon-menedzsment segíti a vállalat adatvagyonának kézben tartását, miközben a vállalatot körülvevő külső környezetről sem feledkezik meg. Az üzleti folyamatok dinamikus változásával járó igazodás mellett a vállalatnak fel kell készülni az új technológiák iránti nyitásra is (pl: napjainkban a Hadoop, MapReduce, noSQL, felhő alapú infrastruktúra és szolgáltatások, mobilinformatika). Az adatvagyon-menedzsment jelenti azt az integráló koncepciót, amely az innovatív technológiai megoldásokat el tudja helyezni a szervezet működésében és az adatvagyon értékének folyamatosan emelkedéséhez vezet. Az új technológiák és eljárások implementálása újra elvezet a folyamatciklus először tárgyalt eleméhez, az adatvagyon és vele való gazdálkodás folyamatainak fejlesztéséhez, újratervezéséhez.
14
2.4 Az értékközpontú megközelítés A vállalati adatvagyon tudatos felhasználása értékteremtő lehetőséget jelent a döntéshozók számára. Az adatvagyon-menedzsment legfőbb célja az adatvagyon értékének folyamatos emelése. Az értékközpontú megközelítés teszi képessé a szervezetet arra, hogy adatai a lehető legnagyobb hasznot hajtsák a vállalat számára. Ez akkor valósul meg, ha az adatvagyon alkalmas a szervezet céljainak és törekvéseinek előmozdítására. (pl.: adatmegosztás javításán keresztül gyorsabb döntéshozatal, adatbányászat segítségével korábban nem ismert összefüggések felismerése stb.) Az adatvagyon hasonlóan viselkedik más erőforrásokhoz, bővítése és működtetése ráfordítást igényel. Az adatvagyon felhasználása akkor hatékony, ha az adatokból kinyerhető üzleti információk haszna meghaladja az adatok megszerzésével, tárolásával, kezelésével és feldolgozásával járó ráfordításokat. Nagy adathalmazok fölösleges fenntartása, a kihasználásuk rejtette lehetőségek elmulasztása mellett kézzelfogható költségeket jelent.
2.3 ábra - Az adatvagyon-menedzsment értékközpontú megközelítése Az adatvagyon értékelésére nincs általánosan elfogadott koncepció. Az adatok üzleti értékére a hiányzó információ következtében fellépő költségekből (pl. kötbér, téves kiszállítás) ill. az elszalasztott üzleti haszonból kiindulva lehet következtetni. Az értékelés során tekintettel kell lenni a használat gyakoriságára, a megkövetelt elérhetőségi szintre és az adathiány pénzügyi és a vállalat működésére gyakorolt kihatásaira. Egy törzsvásárló megrendelésének kielégítéséhez szükséges adat rendkívül magas értéket képvisel, míg egy piacról kivezetett termék forgalmához kapcsolódó nyilvánvalóan alacsonyabbat.
15
Az érték becslése során segítenek a következő kérdéseket: -
Mi történne, ha nem állna rendelkezésre az adott információ? Milyen veszteségek lépnének fel ennek következtében? Mi történne, ha a kulcsinformációk kétszer akkora mennyiségben állnának rendelkezésre? Hogyan változik az információ értéke 1 nap, 1 hét vagy 1 év elteltével?
A döntéshozatali folyamatban fontos a vagyon használati értékének és az elfogadható kockázat szintjének megbízható ismerete. Az értékalapú adatvagyon felfogás lehetővé teszi az adatvagyon kockázat alapú menedzselését, ezáltal az optimális költség-haszon szint fenntartását. A kockázat alapú megközelítés az értéket befolyásoló (a kinyerhető információk hasznosságát vagy a ráfordításokat változtató) események hatásának és bekövetkezésük valószínűségének figyelembe vételével találja meg a helyes egyensúlyt a műszaki-gazdasági kockázat és a jövedelemtermelő képesség között. Érték teremt, ha az üzletileg nem kritikus (alacsony hasznot hozó) adatokat alacsonyabb biztonsági szinten kezelik. A vállalkozásnak fel kell ismernie, hogy az adatbányászati potenciál adja az adatvagyon egyik legértékesebb elemét, hiszen a piaci összefüggések versenytársakat megelőző felismerése és megértése konkrét versenyelőnyként realizálódik. Az adatvagyon értékét alapjaiban meghatározza az adatminőség magas szinten tartása. A megfelelő adatminőség növeli az adatok felhasználásának értékét, javítja a feldolgozás hatékonyságát és olcsóbbá teszi az adatvagyon fejlesztését. A dolgozat további részében az adatminőség magas szinten tartásának technológiai támogatása (módszertan, eljárások és szoftvereszközök) kerül vizsgálatra.
3. AZ ADATMINŐSÉG FEJLESZTÉSE Az adatminőség az adatok arra irányuló jellemzése, hogy milyen mértékben felelnek meg a felhasználási céloknak. Az adatok minősége minden döntési szinten alapjaiban meghatározza az adatok interpretálását, így a döntéshozatal eredményességét is. Az adatok csak akkor értékesek, ha az üzleti döntéshozatal szempontjából teljes körűek, megbízhatók és naprakészek. Ha az elemzések nem megfelelő minőségű adatokra épülnek, félrevezetik a döntéshozót. Ha pedig az adatok minőségbeli hiányosságai tudatosulnak a felhasználókban, az ahhoz vezet, hogy a felhasználók nem bíznak meg az információs rendszerekben. Az adatminőség felfogható egy állapotként, amely egy pillanatban jellemzi az adatvagyon elemeit és egyúttal teljes egészét. Az adatminőség megváltozása az adatvagyon elemek közötti kapcsolatot megtestesítő folyamatokon keresztül valósítható meg (adatrögzítés, adatfogadás, ETL folyamat, adat előkészítése adatbányászathoz).
16
3.1 Adatminőség dimenziói A döntések a valós világ objektumainak ismert tulajdonságai alapján születnek meg. Egy adat akkor tekinthető megfelelő minőségűnek, ha pontosan reprezentálja a reálszféra azon elemét, amelynek absztrakcióját képezi. Az adat hibás, ha az alkalmazása a problémamegoldás során rossz eredményt ad, vagy a döntéshozó nem képes az adat problémái miatt megoldást találni. A teljes adatvagyon minőségét az adatok pontossága, teljessége, konzisztens volta és értelmezhetősége határozza meg. Az adatminőség dimenziók megértése az első lépés az adatminőség fejlesztéséhez. Az adatminőséget a szakirodalom a jó adatminőség kritériumainak leírásával közelíti meg. Sántáné et al.[2] alapján az adatminőséget a következő dimenziók jellemzik: -
pontosság (accuracy): az adat hitelesen reprezentálja a valóságot vagy az ellenőrizhető adatforrást teljesség (completeness): valamennyi szükséges adat jelen van érvényesség (validity): az adat az üzleti követelmények által meghatározott értéktartományba esik konzisztencia (consistency): az adatelemeket következetesen, ellentmondások nélkül definiálták sértetlenség (integrity): az adatszerkezet, az entitások közötti kapcsolatok és az attribútumok nem tartalmaznak ellentmondást időszerűség (timeliness): az adat naprakészsége, avulásának jellemzője elérhetőség (accessibility): az adat elérhető, megérthető, használható
Magas szintű adatminőség esetén az adatok eleget tesznek a fenti kritériumoknak. Ha egy adat sérti az adatminőség dimenziók legalább egyikét, akkor adathiba lép fel. 3.2 Adathibák osztályozása A gyakorlatban előforduló adatforrásokban és operatív rendszerekben hemzsegnek a hibás adatok. Némely adatok hiányosak vagy szélsőséges értékeket vesznek fel (zajok), mások az adatelemek közötti ellentmondások miatt sértik az adatminőség dimenzióit. Az adatok hiánya, sértve a teljesség dimenzióját, információvesztéshez vezet. Hiányos adatok előfordulásának egyik oka az lehet, hogy a valós világ objektumának releváns jellemzője nem hozzáférhető vagy az adatgyűjtés idején nem tartották fontosnak. Az adatok hiányához vezethet az is, ha félreértések miatt nem rögzítették, esetleg törölték a tárolt adatot. Különösen az operatív rendszerek adatai hiányosok, amit gyakran a rendszer hibás működése vagy emberi mulasztás okozhat. Az adatok kézi rögzítése során gyakori, hogy nem minden attribútum kitöltése történik meg. A különféle gépi úton rögzített adatoknál is előfordul, hogy egyes rekordokból hiányzik vagy nem a megfelelő attribútumba kerül a betöltött adat.
17
A zajos adatok az érvényesség kritériumát sértik, értékeik nem tartoznak az adott attribútum valóságos értékkészletébe. A hibás, értelmezhetetlen értéknek is számos oka lehet. Előfordulhat, hogy az adatot hibásan rögzítették vagy tévesen felülírták, de az adatforrások és a feldolgozási eljárások hibáival is számolni kell. A teljes és érvényes adatok esetében is előfordulhatnak hibák. A szerkezeti kritériumoknak és a megszorításoknak eleget tevő, de egymásnak logikailag ellentmondó adatok inkonzisztenciához vezetnek. Tipikus jelenség az adatrögzítések többszörözése. A redundancia azzal jár, hogy ugyanaz az adat egynél több példányban szerepel az adatbázisban. Ha a valós világ objektuma állapotának változása során a felhasználó az egyiken átvezeti az új tartalmat, a másikon nem, akkor megsérül az adatvagyon épsége, hiszen ellentmondásos ismereteket tárol. Az inkonzisztenciából fakadó tökéletlen állapotot legtöbbször a szerkezetet meghatározó adatmodell nem megfelelő kialakítása eredményezi. Az inkonzisztenciák gyakori oka az elnevezési konvenciók alkalmazásának hiánya és az eltérő kódolási struktúrák miatti félreértés. Egy adat téves kontextusban való felhasználása félrevezeti az adatkezelőt. Az inkonzisztencia egyik példája a homonima. Homonima esetén több azonos nevű tulajdonság értékkészlete különbözik. Ekkor a felhasználó annak ellenére igyekszik összekötni az ismereteket, hogy logikailag nem tárható fel kapcsolat. Technikai szinonimát jelent, ha két eltérően írt nevű tulajdonság értékkészlete megegyezik. Ha egy attribútum eltérő névvel, de azonos tartalommal több objektumhoz kötődik, akkor a logikai átfedés rejtve marad. Az adathibák az adatstruktúra különböző szintjeit érintik. Míg a hiányzó és zajos adatok attribútum szinten jellemzik az adatvagyont, addig az inkonzisztenciák az objektumok (rekordok) szintjén okoznak anomáliákat.
3.1 ábra - A strukturált adatok tipikus szervezésének modellje
18
A modell az adatstruktúra granularitása tekintetében négy szintet határoz meg. Oliveira et al.[14] halmazelméleti eszközök felhasználásával végzi el az egyes szinteken felmerülő adathibák azonosítását és formalizálását. Az osztályozást példákkal illusztrálva részletesen bemutatja az C. Függelék.
3.2 ábra - Az adatminőség problémák osztályozása az adatszerkezet szintje szerint Az adathibákra hierarchikus dekompozíció segítségével alternatív osztályozást nyújt Kim[15], amelynek összefoglalását a dolgozat D. Függeléke tartalmazza. Az adathibák strukturált osztályozása hozzájárul az adathibák bekövetkezésének és megtestesülésének megértéséhez és kiindulópontot nyújtanak az adatminőség fejlesztéséhez (adathibák megelőzéséhez, ellenőrzéséhez és tisztításához). Az adathibák formális definiálása és osztályozása egyúttal megalapozza egy korszerű adathiba detektáló eszközzel szemben támasztott követelmények meghatározását valamint az egyes eszközök adathiba felderítő képességének vizsgálatát és értékelését.
19
3.3 Az adatminőség-menedzsment értelmezése Az adatvagyon gazdálkodásnak az adatminőség fejlesztését és fenntartását stratégiai kérdésként kell kezelnie. A 2.2 ábrán az adatminőség-menedzsment az adatvagyon gazdálkodás egyik önálló funkciójaként szerepel. A továbbiakban az adatminőség tágabban, a metaadat-, valamint a referencia- és törzsadat-kezelést is magában foglalva kerül bemutatásra. Mindkét funkció szorosan kötődik az adatminőség kialakításához és fenntartásához. A metaadatok az adat interpretálását, a referencia- és törzsadatok pedig az adatminőség kontrollját szolgálják. Az adatok félreértelmezése vagy figyelmen kívül hagyása sok esetben a megértés hiányából fakad. Az adat-elnevezéseknek értelmesnek kell lenniük, az attribútumokat konvenciók alkalmazásával, beszédesen kell elnevezni. Az elnevezési szabványok önmagukban nem jelentenek teljes megoldást az interpretálással járó nehézségek elkerülése érdekében. Az értelmezési hiányosságok miatt zajos adatok, valamint a homonimák és szinonimák okozta problémák elkerülésében a metaadatok játszanak kitüntetett szerepet. A metaadatok célja, hogy a felhasználó megkapjon minden fontos információt ahhoz, hogy döntést tudjon hozni az adat felhasználásáról. A metaadat olyan adat, amely egy másik adatot ír le. A metaadatok összefoglalják a használt adatra vonatkozó összes fontos jellemzőt - az értéke kivételével -, amelyek alapján az adatokat interpretálni, kezelni, elemezni lehet. Segítik az adat mind technikai, mind üzleti szempontú értelmezését és minőségének értékelését, így hozzájárulnak az adatminőség fejlesztéséhez és fenntartásához. Az egyik legelterjedtebb csoportosítás a metaadatok három fő kategóriájára hivatkozik: technikai, üzleti és adminisztratív metaadat [9]. A technikai metaadatok olyan, tipikusan az adatszervezést jellemző adatok, amelyek definiálják az adatstruktúrákat: relációkat, attribútumokat, adattípusokat, megszorításokat, stb. A technikai metaadatok leírják az adatmodellt, továbbá olyan információkat őrizhetnek, mint pl. a feldolgozási korlátozások, az érvényesítési szabályok és azoknak az eljárásoknak a megnevezése, amelyek hozzáférnek az adatbázishoz. A technikai metaadatok jól definiáltak, könnyen rendszerezhetőek és elemezhetőek, ezért felhasználásukkal hatékonyan támogatható az adatminőség elemzése. A technikai metaadatok elsődleges felhasználói a rendszertervezők, fejlesztők és adminisztrátorok. Az adatok interpretálása nem függetleníthető az üzleti folyamatok megértésétől. Az üzleti metaadat az adat tartalmát írja le az üzleti felhasználókhoz közeli megfogalmazásban, rövid értelmező magyarázattal. Az üzleti metaadat meghatározásoknak minimálisan tartalmaznia kell a működésből levezetett elnevezéseket (üzleti folyamatokhoz kapcsolás), és érhető leírását az adat rendeltetésének. Az üzleti metaadat gondoskodik arról, hogy az adat a szervezeten belül
20
mindenki számára ugyanazt jelentse. Az üzleti metaadatok többnyire szöveges, leíró jellegű információk, ezért nehezen tipizálhatóak. Adatmodellbe implementálásuk esetén a cél, hogy minél kevésbé leíró adatokkal, minél inkább skálázható és könnyen elemezhető adatstruktúrákkal írják le azokat. Az adminisztratív, folyamatokat jellemző metaadatok a különböző adatoperációk (kinyerések, betöltések, frissítések, transzformációk) leírására használhatók. Tartalmazhatják például az adott attribútumot feldolgozó folyamatok futtatásának kezdési, befejezési idejét, a transzformációs algoritmusokat. A metaadatbázisok tipikusan relációs adatmodell szervezésűek. Babos[16] kidolgozta mind a technikai, mind az üzleti metaadatok egy lehetséges modelljét. Metaadattípus
Funkció
Példa
technikai leíró
indexek, megszorítások,…
kulcsok,
ügyféltábla kulcsai: érvényességi időszak
technikai strukturális
feldolgozási előfeltételei
folyamat
az ügyfelek tranzakcióit tartalmazó tábla töltésének előfeltétele: ügyfél és számlatáblák töltése
technikai adminisztratív
az objektumhoz rendelt fejlesztő, az objektum érvényessége, stb.
a terméktáblákat utoljára admin tartotta karban 2013.10.04-én
üzleti leíró
üzleti definíció, szabály
2009. júl. 1. előtt 20% az áfa-kulcs, utána 25%
üzleti strukturális
információ elterjedtsége, az üzleti függőségek objektumoktól (szervezetben, folyamatban elfoglalt helye)
az új fiókok dolgozói a szervezeti hierarchiába minden hónap elején kerülnek bele, a HR folyamataival összhangban
üzleti adminisztratív
felelősök, üzleti szaktudás birtokosai, ezek elérhetősége
a termékfejlesztési osztály vezetője: Gipsz Jakab
ügyfél-azonosító,
3.1 táblázat - Példák metaadatokra[8] A metaadatbázis erősen támaszkodik a jellemzett adatok modelljére. Már az adatmodell implementálása során ki kell alakítani, a fejlesztések esetén pedig aktualizálást igényel. A metaadat-nyilvántartás akkor igazán hatékony, ha támogatni képes az adatvagyon fejlesztésének követését, az adatstruktúrákban és az adat üzleti felhasználásában bekövetkező változások dokumentálását (metaadat érvényességi ideje). Jellegüknél fogva a különböző metaadatok egy adattárház architektúrához hasonló felépítésben integrálhatók, historizálhatók, tárolhatók és publikálhatók hatékonyan. A törzs- és referenciaadatbázisok az adatminőség kontrollálásának alapját jelentik. A törzsadatok olyan kulcsfontosságú információk az üzleti folyamatokban, amelyek az
21
üzleti tranzakciók dimenzióit jellemzik. Az alapvető üzleti adatok kizárólagos forrásai az operatív rendszerek, alkalmazások és folyamatok számára. A törzsadattár egy központi adatbázis, amit minden érintett rendszer és felhasználó elér, így adatintegrációs pontot képez a heterogén adatforrások számára. Biztosítja az inkonzisztenciák elkerülését azáltal, hogy nem tartalmaz duplikátumokat és referenciaként szolgál a tranzakciós adatok validálása során. A referencia adatokat különböznek a törzsadatoktól. A törzsadatok a szervezet, környezet változásával együtt bővülnek és módosulnak (vevők, termékek, telephelyek, stb.). Ezzel szemben a referencia adatok a szervezeten kívülről származnak (gyakran szabványügyi szervezetektől), statikusak, frissítésük alkalmi jellegű. 3.4 Az adatminőség fejlesztésének folyamata Amikor egy vállalatban kialakul az adatirányultság szemlélete, a szervezet elköteleződik az adatminőség-menedzsment iránt. Az adatminőség-gazdálkodás bevezetése során kiemelt figyelmet kell fordítani az adatminőség feltérképezésére és a hibásnak minősülő adatok megtisztításra. Ki kell alakítani a megtisztított adatok központi kezelésének kereteit, a törzs- és metaadat-gazdálkodást. Mindezekhez jól definiált folyamatoknak kell tartozniuk.
3.3 ábra - Az adatminőség-menedzsment folyamatciklusa Az adatminőség biztosítás nem egyszeri tevékenység, hanem stratégiai üzleti folyamat. Ciklikus, mert minden egyes tevékenység, újabb adatminőség-javító tevékenységet generál. Az első lépés az adatminőség feltérképezése. Az adatfeltárás célja az adatok profiljának megismerése. Az adatprofil a feltárás során előállt mérőszámok olyan érték együttese, amely alapján következtetni lehet az adat funkciójára, tartalmára és az adatdimenzióknak való megfelelésre.
22
Az adatdimenziók struktúrát biztosítanak az üzleti területek által elvárt adatminőség meghatározásához és méréséhez. Az adatminőség a dimenziók által mérhető és számszerűsíthető. Az adatprofilozás eredményeinek kiértékelését követő lépés az adatminőséget jellemző minőségi kritériumok megfogalmazása. Az adat minőségének elvárt szintjét annak az üzleti területeknek kell meghatározni, amely adott üzleti probléma megoldása során az adatot felhasználja. Az adatminőség elvárt szintjének megfogalmazása során az üzleti folyamatok jelentik a kiindulópontot. A minőségi kritériumok meghatározásának első lépése az egyes üzleti folyamatokat kísérő kulcsadatok meghatározása. A felmérés során össze kell gyűjteni azokat az üzleti folyamatokat, amelyeket információs rendszerek támogatnak. A folyamatokat jellemző adatok összegyűjtését és az adatok üzleti folyamatokhoz rendelését a folyamat – dimenzió mátrix támogatja. üzleti folyamatok
dimenziók idő
termék
szállító
ügyfél
raktár
üzlet
beszerzés raktározás átmozgatás értékesítés leltározás 3.2 táblázat - Egy kereskedelmi vállalat lehetséges folyamat - dimenzió mátrixa A dimenziók dekomponálhatók attribútumokra és a mátrix az adathibák által érintett üzleti tevékenységek kritikussága alapján súlyozható. A folyamat kulcsfontosságú dimenzióinak meghatározása után ki kell jelölni, azokat a mérőszámokat (tényadatok), amelyek egy adott üzleti tranzakciót jellemeznek (darabszám, ár, átfutási idő, stb). Az adatminőség fejlesztéséhez és fenntartásához adatszabályokat kell beépíteni az üzleti folyamatokba. Az adatszabályok az üzleti elvárások alapján határozhatók meg. Olyan szabályszerűségek, amelyek teljesülése elvárt az üzleti felhasználótól és az adatminőség fenntartásáért a felelősség mellett megfelelő hatáskörrel is rendelkezik. Az attribútum szintű adatszabályok az alábbiak szerint csoportosíthatók[8]: -
formai: az adat tartalmat leíró írásjelekre megfogalmazott szabályok (reguláris kifejezések) tartalmi: az adat tartalmi megszorításai, értékkészlet meghatározása matematikai: valamilyen matematikai szabály megfogalmazása kevert: formai és tartalmi adatszabályok keveréke
23
Az adatminőség egy pillanatnyi állapota jellemezhető egy szinttel, amelyet az összes adatszabály aktuális értékének együttese alkot. Ha az adatvagyon minősége elér egy definiált referenciaszintet, akkor a rendszer a felhasználók elvárásai mentén megfelelőnek tekinthető. A referenciapontok olyan ismérvek, amelyekhez képest az adatok eltérése hibának minősül.
3.4 ábra - Az adatminőség mérőszámrendszere[17] Praktikus megközelítés, ha az összes adatminőség szabály százalékban kerül meghatározásra és mérésre (pl.: a téves elemek száma 100 bevitt elemre), ahol a 100% érték jelenti a minőség legmagasabb szintjét. A viszonyszámok alkalmazása segíti az adatminőség egyes aspektusainak összehasonlíthatóságát, az adatminőség riportolását és megértését. Például egy „forgalom = mennyiség x egységár” üzleti szabály 99%-os teljesüléséből következik, hogy a rekordok 1%-a nem felel meg a szabálynak. Miután lefektette a minőségi célokat és meghatározták a hibaforrásokat, a szervezetnek ki kell alakítania a minőségi követelmények betartásához szükséges stratégiát. Az adatminőség-menedzsment célja, hogy az egyedi adattisztítási projektek helyett állandó és hosszú távú adatminőség megoldást biztosítson, felelős az adatok és a metaadatok minőségi szabványainak lefektetéséért és felügyeletéért. Az aktuális adatprofilok időről időre történő vizsgálatának eredményei és az adatszabályok összevetésével ismerhető meg az adatminőség változása. Ha a vállalat folyamatosan mérni tudja az adatminőséget, akkor kép alkotható egy-egy szervezeti egység vagy felhasználó által vétett adathibák számáról vagy például egy adatmigráció által okozott adatminőség-változásról. Az adatmonitorozás gyors beavatkozást tesz lehetővé az adathibák kezelése érdekében. Az adatminőséget az egyes adatvagyon elemeket összekötő folyamatok végrehajtása során lehet hatékonyan kezelni. Az adatrögzítés (beleértve a módosítást és a törlést is) és az adatbetöltés esetén a preventív kontrollok jelentenek hatékony eszközt a hibák
24
elkerülése érdekében, míg az adathibák korrekciója tipikusan az ETL folyamat illetve az adatok adatbányászati felhasználásra való előkészítésének része. Az adatbevitelt követően az adatminőség javításának eszköze az adattisztítás. A detektált tipikus hiba esetek egy része algoritmikus módszerekkel kezelhetők. Az adathiba típusok többségének javítása azonban az érintett üzleti terület szakemberének beavatkozását igényli. Az algoritmikus hibajavítással nem kezelhető problémák féligautomatizáltan, vagy manuálisan javíthatók. Az adatminőség bővebb fogalom az operatív rendszerekben található adatok minőségénél. Amellett, hogy egy vállalat adatvagyonának minősége komoly hatást gyakorol a működés hatékonyságára, gyengesége fenyegeti az adattárház bevezetésének sikerét és igencsak megnehezíti az adatbányászati felhasználást is. Az adattárházak bevezetésének kiemelt kockázatát jelentik az operatív rendszerekben található adatok tartalmának dokumentáltságát és a megfelelő szintű adatminőséget érintő hiányosságok [8]. Az adatminőség az adattárházban a forrásrendszerek által determinált. Az adatok kitöltöttsége, helyessége az operatív rendszerekben általában nem megfelelő az elemzések jó minőségű elkészítéséhez. A különböző adatforrások eltérő struktúrái, adattartalmi problémái a felhasználhatóságát és végső soron az üzleti döntés minőségét veszélyeztetik. Az információkinyerés eszközeinek konzisztens és tisztított adatokon kell dolgoznia, amely költséges adattisztító, adattranszformáló és adategyesítő lépéseket igényel. Az adatok integrációjáig az operatív működést nem zavaró hibák rejtve maradhatnak. (pl. különféle dátum-, telefonszám- és címformátumok, gépelési, beírási hibák, de akár egyszerű rövidítések is). Az adattárházak bevezetésének egyik célja, hogy a javítsák az operatív rendszerekből az elemzési felhasználás céljából bekerülő adatok minőségét. A sikeres adattárházak egyik jellemzője, hogy az adat minősége a bevezetés folyamán fokozatosan javul és a teljes kialakítás után pedig legalább szinten marad. Az adathibák hatása az adatbányászat esetében is jelentkezik. Adatbányászati célokra az operatív rendszerek adatai gyakran nem hasznosíthatók közvetlenül. Szükség van egy adatelőkészítési lépésre, amelyek során az alacsony absztrakciós szintű, zajos, az elemzés számára nem megfelelő formátumú, hibás vagy hiányzó értékeket is tartalmazó adathalmazok egy további feldolgozás számára alkalmasabb, egységes formára transzformálhatók. Az adatbányászat amellett, hogy megköveteli az adatok magas minőségét, értékes eszköze is az adattisztításnak (pl.: duplikáció detektálás). A magasabb szintű adatintegráció folyamatához szorosan kapcsolódó kérdéskör a metaadat-kezelés megfelelő megvalósítása. A különböző forrásból érkező adatok kezelésének kulcsát a megfelelően megtervezett, átgondolt és kezelt adatleíró-adatok jelentik.
25
4. MÓDSZERTAN ÉS TECHNOLÓGIAI ESZKÖZTÁR Az adatminőség-menedzsment technológiai támogatásának tárgyalása középpontjában a napjainkban domináns relációs adatbázisok állnak, de a leírt elvek és módszerek más adatmodellekre is alkalmazhatóak. 4.1 Preventív kontroll Az adatbeviteli (rögzítési és töltési) folyamatok során tárolt új adatok gyakran hibásak. Ha az adatbázisból nem nyerhető vissza a szükséges adat, vagy az nem a várt tartalommal jelenik meg, annak leggyakoribb oka, hogy a felhasználó vagy nem töltötte ki, vagy tévesen vitte be a kérdéses adattartalmat. A preventív kontrollok folyamatokba építésének célja, hogy az adatok az előírt minőségi szabálynak megfelelően kerüljenek be a rendszerbe. Az adatbemenet ellenőrzése gondoskodik a tiszta helyes adatbetöltésről és adatrögzítésről. Az adatbevitelnél felmerülő hibák megelőzéséhez szükséges ellenőrzések egy része az adatbázis-kezelőrendszerek által, más része az alkalmazási felületbe épített eljárásokkal, előre legyártott beviteli struktúrákkal biztosítható. A preventív kontrollok összefoglalását a 4.1 számú táblázat tartalmazza. A legalapvetőbb preventív kontrollt az adatbázis-kezelőrendszerek által nyújtott ellenőrzések és megszorítások képezik. Az adatdefiníciós utasítások számos lehetőséget kínálnak az attribútumokat, sorokat és a relációkat érintő megszorítások implementálására. A 3.2 ábrán szereplő hibák közül öt adathiba típus technikai megszorításokkal megelőzhető. A technikai megszorítások kikényszerítik az adatok helyességét. Ha az adatbevitel vagy az adatmódosítás nem felel meg a megszorításoknak, az adatbázis-kezelő rendszer a tranzakciót visszautasítja. Az alapvető megszorítások használatával a feltétlenül szükséges attribútumok értékeinek megadása, az egyediség és a hivatkozási-épség kényszeríthető ki 8 . A hivatkozási-épség megszorításokkal előírható hogy egy adott attribútum értékének elő kell fordulnia egy reláció valamelyik sorának megfelelő attribútumában. Az adatbázisok által használt fő adattípusok értékkészletének szűkítésére a CHECK megszorítás alkalmas. Az attribútumra vonatkozó CHECK megszorítás egy olyan feltétel9, amelyet az attribútum minden értékének ki kell elégítenie. A sorra vonatkozó CHECK megszorítás olyan előfordulások kizárását segíti, amelyek két vagy több feltételnek nem tesznek eleget.
8 9
NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY A feltétel elméletben bármi lehet, ami egy SQL utasítás WHERE záradékában szerepelhet.
26
Megvalósítás szintje
Kontroll
Adathiba szintje
Kezelt adathiba
Eszköz
adatmodell
normalizált struktúra
sor
1.3.2 funkcionális függőség megsértése
BCNF forma
adatbázis kezelőrendszer
technikai (integritási) megszorítások
attribútum
1.1.1 hiányzó érték
NOT NULL PRIMARY megszorítás
attribútum
1.1.4 értékkészlet megsértése
adattípus megszorítás, attribútumra vonatkozó CHECK megszorítás (pl:megengedett értékek felsorolása vagy aritmetikai kifejezés)
1.1.8 üzleti megszorítás megsértése
alkalmazás
oszlop
1.2.1 egyedi megsértése
sor
1.3.1 nem teljesen kitöltött rekord
sorra vonatkozó CHECK megszorítás
összetett relációk
3.1 referencia integritás megsértése (hivatkozási épség)
REFERENCES FOREIGN megszorítás
formai ellenőrzés
attribútum
1.1.2 szintaxis (formátum) megsértése
reguláris kifejezések, beviteli maszkok
esemény alapú bemeneti adatellenőrzés
egyszerű relációk
korlátozottan az üzleti megszorítások megsértése
egyszerű és összetett triggerek, tárolt eljárásokkal, procedurális nyelvekkel ötvözve
üzleti megszorítások
több szinten
széleskörűen az üzleti megszorítások megsértése
előre legyártott beviteli struktúrák, felületbe programozott adatszabályok, validálás referenciaadatokkal, ellenőrzőszámok
(+ sor)
érték
4.1 táblázat - A preventív kontroll eszközei
27
UNIQUE PRIMARY megszorítás
vagy KEY
vagy KEY
vagy KEY
Az adatbáziskezelő-rendszerek szintjén megvalósított ellenőrző eszközök másik csoportját a triggerek alkotják. A trigger egy esemény-feltétel-műveletsorozat szabály, amelyben egy műveletsorozat hozzá van rendelve bizonyos eseményhez. Ha az esemény (beszúrás, módosítás, törlés) bekövetkezik, akkor a trigger kiváltódik. A kioldáskor a rendszer egy feltétel teljesülését ellenőrzi, amelynek igaz értéke esetén a megadott utasítássorozat végrehajtásra kerül. A triggerek dinamikus mechanizmusa specifikusabb megszorításokat tesz lehetővé, mint a sokkal általánosabb integritási megszorítások. Az üzleti logikához igazodó kondíciók és műveletek különösen alkalmasak az összetett integritási megszorítások kezelésére. A triggerek, főként az adabázis-kezelőrendszer által biztosított procedurális nyelvekkel (pl.: PL/SQL) ötvözve azonnali beavatkozást tesznek lehetővé, ezért ha korlátok mellet is, de a bemeneti adatok tisztítására is felhasználhatók. A triggerutasítások az eseményre, a feltételre és a műveletre vonatkozóan is számos lehetőséget kínálnak[6]: -
a trigger futhat (feltételek kiértékelése és műveletek végrehajtása) a kiváltó esemény előtti állapotban, az után, vagy az esemény helyett a feltétel és művelet hivatkozhat a műveletet kiváltó esemény által módosított sorok régi és/vagy új értékeire is olyan módosítási esemény is megadható, amely csak egy adott attribútumra vagy attribútumhalmazra vonatkozik a műveletek végrehajtása érinthet minden módosított sort egyszer (sor szintű trigger) vagy az esemény által módosított összes sorra vonatkozóan egyszer (reláció szintű trigger)
A formai ellenőrzések esetében a reguláris kifejezések nyújtanak segítséget. A legtöbb adatbázis-kezelőrendszer által támogatott reguláris kifejezés egy olyan, bizonyos szintaktikai szabályok szerint leírt minta, amellyel a rögzítendő adat formátumát összevetve meghatározható, hogy az adat értéke megfelel-e a helyesnek ítélt formátumnak. Az elgépelések ellen azonban nem minden esetben lehet megszorításokkal, beviteli maszkokkal védekezni. Gyakran az azonosító kódokban ellenőrző összegek szerepelnek, amelyek segítségével egy-egy karakter elírása könnyen felfedezhető (pl.: bankszámla számok esetében a CDV). A komplex üzleti megszorítások leképezésére az adatbáziskezelő-rendszerek alapfunkciói nem alkalmasak. Az adatbázis-kezelőrendszerek által nem kezelhető hibák kiszűrésére érdemes már a felhasználói felületbe programozni az adatszabályokat. A duplikációk bekerülésének megakadályozására pedig az egész adatbázison lefutó gyors, intelligens keresést kell megvalósítani.
28
Az adatbevitelt előre legyártott beviteli struktúráknak (pl.: űrlapok, legördülő választéklista) és a felületbe programozott adatszabályoknak kell támogatnia. A rögzíteni kívánt adatokat validálni kell a rendelkezésre álló referenciaadatok segítségével, és ki kell kényszeríteni az üzleti szabályoknak való megfelelést. Az érvényesség vizsgálatával már a bevitelkor eliminálhatók az üzleti szabályokat sértő adathibák. A preventív kontrollok által azonosított anomáliák négy alapvető módon kezelhetők: -
megszakítás: kritikusnak ítélt probléma esetén a legjobb megközelítés elfogadás: amennyiben az adathiba tolerálható javítás: ha megbízható eljárás ismert a hiba korrigálásához felülírás az alapértelmezett értékkel: amennyiben kritikus, hogy egy attribútum rendelkezzen értékkel
A preventív kontrollok alkalmazás során szem előtt kell tartani az üzleti folyamat folytonosságát. Az üzleti folyamat megszakítása általában költséges megoldás. Amennyiben a beviteli hiba az üzleti folyamat szempontjából kritikus adatot érint, a tranzakciót meg kell szakítani (az adatbáziskezelő rendszerek ezt teszik), de emellett a felhasználót el kell látni minden szükséges információval a hiba okát és javíthatóságát illetően. A felhasználó informálása többnyire alkalmazás szinten valósítható meg. Ha a hibásan bevitt adat nem kritikus az üzleti folyamat szempontjából és nem fogadható el az üzleti folyamat megszakítása, akkor a tranzakciót tovább kell engedni, de a hibás rekordot meg kell jelölni későbbi javításra. Az adatbeviteli hibák egyik gyakori oka az adat rossz kontextusban való értelmezése. A félreértelmezések az elnevezési konvenciók alkalmazásával, és a metaadatok felhasználásával elkerülhetők. A metaadatok segítségével a felhasználó információt nyerhet a feltölteni kívánt attribútum üzleti tartalmáról, elvárt értékkészletéről és formátumáról. A preventív kontroll nem jelent teljes védelmet az adatminőséget fenyegető problémákkal szemben. A preventív kontrollokon átjutott adathibák felderítése érdekében az adatprofilozás hívható segítségül. 4.2 Adatprofilozás Az adatprofilozás az a folyamat, amely során feltérképezhető, megérthető az adatok karakterisztikája és mérhetővé válik az adatvagyon minősége. Az eljárás célja, hogy képet adjon az adatminőség egy pillanatnyi állapotáról. Az adatprofilozás a tervezés és monitorozás nélkülözhetetlen eszköze. Az adatok feltérképezése az adatminőség menedzsment kialakításának kiindulópontja és a működtetés alapja. Segítségével a tervezés során felszínre kerülnek a potenciális adatszabályok és az attribútum közötti kapcsolatok (primary key, foreign key).
29
Az adatprofilozás eredményeként összefoglalható, hogy a vállalat milyen típusú adatokkal dolgozik, milyen lehetséges adathibákkal kell számolnia és rámutatható, hogy ezeket milyen megoldásokkal lehet kezelni. Az adatmonitorozás a vállalati adatok és a megfogalmazott adatszabályok összevetése. Az adatprofilozás fontos eszköze az adatminőség monitorozásnak, hiszen a lehetővé teszi az aktuális és az elvárt adatminőség szintjének összevetését, segítségével azonosíthatók a beavatkozást igénylő pontok és megfogalmazhatóak az adatminőség fejlesztéséhez szükséges akciók (adatszabályok implementálása, preventív kontrollok kialakítása, adattisztítás). Az adatminőség vizsgálata kiterjed a tartalom, a struktúra és a konzisztencia elemzésére. Az eredmények értékelése lehetővé teszi a következtetést a rendszerbe bekerült - optimális esetben csak a preventív kontrollokkal nem megelőzhető adathibákra. Az adatprofilozás az adattisztítási folyamat előkészítésének is elengedhetetlen eszköze. Az adatminőség vizsgálata az adatvagyon-architektúra tekintetében tipikusan az operatív rendszerekben, az ETL folyamatba építve illetve az adatbányászat adatelőkészítési szakaszában végezhető el. Az adatminőség feltérképezésének kiindulópontja a strukturális analízis. Az adatbázis szerkezetének elemzése rávilágít az objektumok adatbázisban megvalósított implementációjára és az egymás közötti kapcsolatokra. Az eljárás az adatbázis technikai metaadataira támaszkodva tárja fel a rendelkezésre álló attribútumokat és relációkat. A technikai metaadatok tartalmazzák az adatbázis objektumok leírását, például a táblákat, eljárásokat, megszorításokat és triggereket. Az elemzési feladatok mellett fontos kiemelni, hogy az adatprofilozás erősen támaszkodik a rendelkezésre álló metaadatokatra, de a vizsgált adatokból származtatott jellemzők előállításával a metaadatok dokumentálását is támogatja. Az adatbázis szerkezetének megismerését követően a következő lépés a rendelkezésre álló adatok jelentésének megértése. A megismerés célja kettős: feltérképezni az adatok karakterisztikáját (milyen értékkészlettel rendelkeznek az attribútumok, mennyire vannak kitöltve, milyen az adatminőségük, stb.) és megismerni a feltárt adatok szemantikai, tartalmi összefüggéseit. Az adathibák detektálása érdekében az adatminőség vizsgálatát minden granularitási szinten meg kell valósítani (attribútum, rekord, reláció, adatvagyon). Az önálló adatforrások feltérképezése a hagyományos adatprofilozási eljárásokkal végezhető el. Az attribútum, rekord és a reláció szinten jelentkező anomáliák azonosítása automatikus eljárásokkal hatékonyan támogatható, a logikai és tartalmi átfedések felderítése azonban humán beavatkozás nélkül megoldhatatlan. A heterogén
30
adatforrások közötti, adatvagyon szintű analízis új kihívásokat jelent az adatprofilozás számára[18]. A fejezet további részében az önálló adatforrásokon belülre összpontosító, tradicionális adatprofilozás (4.1 ábra) automatikus eszközökkel való támogathatósága kerül a középpontba, de a fejezet végén az adatprofilozás kurrens kérdései is bemutatásra kerülnek.
4.1 ábra – A tradicionális adatprofilozás feladatai Az első információt az adatok jelentésének megértéséhez az attribútumok elnevezése nyújthatja. Az attribútumok elnevezése beszédes lehet, de gyakran metaadatokra, üzleti szakértői egyeztetésre van szükség az üzleti tartalom megértéshez. Ezek hiányában az attribútum üzleti jelentésére az értékkészlet vizsgálata alapján lehet következtetni. Az attribútum analízis első lépése az adatbázisban ábrázolt adattípus megismerése. Az adatok típusa meghatározza, hogy milyen eszközök és módszerek alkalmazhatók az elemzésükre. Az adatbázis-kezelőrendszerek által megvalósított attribútumok legáltalánosabb típusai: -
-
szimbolikus (kvalitatív): a valós objektum egy leíró jellegű tulajdonságát reprezentáló diszkrét értékkészletű attribútum, ábrázolása szöveges vagy karakteres formában valósul meg numerikus (kvantitatív): olyan attribútumok, amelyek a valós világ egy mérhető, diszkrét vagy folytonos jellemzőjét reprezentálja, a numerikus adatok ábrázolás lehet: egész, fixpontos, lebegőpontos, bináris, oktális, hexadecimális, pénznem, számláló, logikai és dátum
31
Az adatbázis-kezelőrendszerek által implementált adattípus értékkészleténél az attribútum üzleti értelemben elfogadható értékeinek halmaza általában jóval szűkebb. Amennyiben az elemzés során egy diszkrét értékkészletű attribútumra vonatkozóan hiteles referenciaadatok állnak rendelkezésre, akkor a hibás értékek felderítése elvégezhető az egyes értékek referenciaadatokkal való összevetésével. Ki kell hangsúlyozni, hogy a referencia adatokkal kizárólag az vizsgálható, hogy az attribútum egy adott értéke az előre meghatározott (üzleti) értékkészletbe esik-e és nem ad információt a magasabb granularitási szinten lévő hibákról (pl.: inkonzisztencia, funkcionális függőség megsértése, stb.) Például attribútum szinten nem jelent hibát, ha a lakhely Budapest, holott 2000 az irányítószám. Referenciaadatok hiányában az üzletileg elfogadható értékek vizsgálata további elemzést igényel. Az adatprofilozás fontos feladata annak vizsgálata, hogy egy-egy attribútum milyen értékeket vesz fel, és az értékek hogyan viszonyulnak egymáshoz. Az értékkészlet vizsgálatának felszínre kell hoznia az attribútum szintű adathibákat (nagymértékű kitöltetlenség, zajok, stb). Ezek feltárásához a leíró statisztika eszközei hívhatók segítségül. Az attribútum értékkészlete vizsgálatának legfontosabb leíró statisztikái (tradicionális adatprofilozás): -
középértékre vonatkozó adatok: elemszám, átlag, medián, módusz szóródásra vonatkozó adatok: minimum, maximum, terjedelem, szórás érték és minták szerinti eloszlásra vonatkozó adatok: kvantilisek, sűrűségfüggvény, ferdeség, lapultság
Az alkalmazható statisztikai eszközökről többet elárul az objektumokat jellemző tulajdonság egyes értékeinek egymáshoz való viszonyulása, amely szerint a következő típusú attribútumok különböztethetők meg. Mérési skála
Attribútum Tulajdonság típus
Értelmezhető statisztikák
Jellemző példák
nominális szimbolikus (=, ≠) (felsorolás) megkülönböztetés
módusz, entrópia, kontingencia, korreláció, X2 próba
név, születési hely, nem
ordinális (rang)
medián, kvartilisek, rangkorreláció, széria próba, előjel ill. előjeles rangösszeg próba
sorrendek, házszámok
szimbolikus (=, ≠) (<, >) sorrend
intervallum numerikus
(=, ≠), (<, >) (+, -) különbség
számtani átlag, szórás, Pearsonféle korreláció, t- és F-próba
hőmérséklet, dátum
arány
(=, ≠), (<, >), (+, -) (*, /) arány
mértani közép, harmonikus közép, százalékos eltérés
életkor, jövedelem
numerikus
4.2 táblázat - Az adatok egymáshoz képesti viszonya
32
Már az egyszerű statisztikák felhasználásával is számos adathiba típus felderíthető, hiszen egyes attribútumok tartalmazhatnak az üzleti elvárásoknak egyértelműen nem megfelelő, a megszorításokhoz nem illeszkedő, hibás értékeket. A leíró statisztikák alapján feltárhatók az attribútumra vonatkozó potenciális megszorítások is. A szintaktikai elemzés (parsing) az adatok formai hibáinak felismerésére használható. A mintákra (reguláris kifejezések) vonatkozó gyakoriság vizsgálatával válasz kapható arra, hogy az adatok a várt formátumban szerepelnek-e (pl: telefonszám: 99-999-999). A mintaillesztés rávilágít a potenciális formátum (szintaxis) megszorításokra. Az értékek gyakoriságára vonatkozó statisztikák az attribútum értékeinek teljessége (hiányzó értékek számossága) és egyedisége (egyedi értékek számossága) mellett a lehetséges értékmegszorításokra utalnak. Az adathibák detektálása esetén olyan értékekkel is számolni kell, amelyek ugyan formálisan beleilleszkednek a megengedhető értékkészletbe, de a szűk környezetükben atipikus, szélsőséges viselkedést mutatnak. Számos attribútum tartalmaz ilyen kivételes, az értékek többségtől távol eső, zajos elemeket. A zaj az adatokra rárakódott, véletlenszerű hiba, amely hatással van az adatsor természetére, karakterisztikájára (pl. az átlag változása egy adat nullával való elütése esetén). A kívülálló elemek valamely statisztikai tulajdonságaik alapján definiálhatók. A zaj alapvető jellemzője a szórás. Az extrém, kiugró értékek (outlier) azonosításában az eloszlásra vonatkozó jellemzők játszanak fontos szerepet. A kiugró értékek távol vannak az értékes adatoktól. A távolság megadható az interkvartilis terjedelem függvényében (ennyivel kisebb v. nagyobb). Az extrém értékek a kiugró adatokhoz tartozó intervallum határainak (kétszeres) bővítésével kapható meg. A kiugró és extrém értékek kvantilisek segítségével történő meghatározására [web2] ad példát: ,
és é
,
a 25% és 75% tartozó kvantilisek és = a felhasználó által megadott két paraméter
,
−
,
4.2 ábra – Kiugró értékek keresése az interkvartilis terjedelem arányában Véletlenszerű természetéből adódóan a zaj értéke modellezhető és sűrűség függvénye alapján megbecsülhető az értéke. Az esetek többségében az értékek normális eloszlást követnek, de a zaj modellezését mindig a mért jellemző valós eloszlásához kell igazítani.
33
4.3 ábra - A zaj modellezése normális eloszlás esetén A zaj meghatározására a standardizált pontszám (z-score) alkalmazható, amellyel megadható, hogy a kiugrónak tekintett adatok hány szórásnyira esnek a várható értéktől (pl. normális eloszlású változó esetén a módusztól legalább 3 szórásra lévő elemek) A kívülálló elemek meghatározására bizonyos automatikus csoportosítást végző klaszterező eljárások is alkalmasak. A nagyon kevés elemet tartalmazó klaszterek feltehetően a többi elemtől távol esnek, így zajnak tekinthetők. A potenciális kiugró elemek felderítésével kapott gyanús elemekről minden esetben csak az adott szakterületre jellemző tudás felhasználásával dönthető el, hogy valóban zaj, amit egy hiba okozott, vagy csak az adathalmaz egy szokatlan, de a valóságban előforduló értéke. A kiugró elemek detektálása során használható eljárásokról átfogó bemutatást nyújt Hodge[19]. Az eddig bemutatott statisztikai elemzések akkor lehetnek igazán hatékony, ha olyan vizualizációs eszközök támogatják, amelyek segítik a felhasználót a kapott és a várt eredmények összevetésében (terület diagramok, pont és vonaldiagramok, oszlopdiagramok és hisztogramok, stb.). Az adatkarakterisztikák eddig tárgyalt megismerése során az egyes attribútumok különkülön kerülnek elemzésre. Az attribútumok statisztikai jellemzőinek vizsgálata automatikus eszközökkel jól támogatható, de csupán a legegyszerűbben észrevehető problémákra világít rá. A rekord és reláció szintű hiba már bizonyos attribútum összefüggéseket sért, felismerésük nehezebben támogatható. A reláció szinten, az attribútumok közötti kapcsolatok feltérképezéséhez összefüggés-vizsgálatot kell elvégezni. A numerikus adatok közötti kapcsolatok szorosságának jellemzésére a korreláció használható. A korreláció a potenciális funkcionális függőségek feltárása során alkalmazható, ha az attribútumok mérési skálája legalább intervallum típusú. A normális eloszlású attribútumok közötti kapcsolat szorosságát a korrelációs együttható jellemzi. Amennyiben két attribútum között az
34
együttható értéke erős korrelációt mutat (az együttható értéke közel 1), akkor a két attribútum között funkcionális függőség valószínűsíthető. A korreláció vizsgálata során tekintettel kell lenni arra, hogy a korrelációs együttható csupán a lineáris kapcsolatot jellemzi. Ha az attribútumok között a kapcsolat nem lineáris, akkor az együttható torz képet ad a valós kapcsolat szorosságáról. Az attribútumok egymás közötti viszonyaira vonatkozó vizsgálatának további alkalmas eszközei az asszociációs szabályok. Az asszociációs szabályok egy vagy több attribútum meghatározott értékei esetén következtetnek egy másik attribútum valószínűsíthető értékére (implikáció). Az asszociációs szabályok akár összetett kulcsok felfedezésére is alkalmasak és szimbolikus típusú attribútumok esetén is alkalmazhatóak. Az egyik meghatározó, magas granularitási szinten jelentkező adatminőség probléma a rekordduplikátumok jelensége. A duplikátum felderítés feladata azoknak az rekordoknak a megtalálása, amelyek potenciálisan a valós világ ugyanazon objektumát reprezentálják. Minél inkább több azonos érték szerepel két rekord attribútumai között, annál hasonlóbbak. A gyakorlatban a hasonlóság az adatelem távolságfüggvényével jellemezhető. Az alkalmazható távolság függvény az attribútum mérési skálája által körülhatárolt. A karakterláncok hasonlóságának megállapításának egyik alapvető eljárása a Levenshtein távolsági mérték, amely két karakterlánc közötti távolságot az egzakt egyezőséghez szükséges elemi transzformációs lépések (karakter beszúrása, törlése, módosítása) minimális számában adja meg. Fajszi el al.[8] az emberek számára könnyen értelmezhető és átlátható modellre ad példát, amely döntési fa analógiára építve, ha-akkor szabályok egymásba ágyazásával keres duplikátumokat. Egy másik eljárás (sorted neighbourhood method) az összehasonlítások számának redukálásával törekszik a duplikátum felderítés gyorsítására[20]. Az eljárás szerint a rekordokat rendezni szükséges egy, a duplikáció megítélése szempontjából prioritást élvező attribútum alapján. A rendezéssel várhatóan közel kerülnek egymáshoz a redundáns elemek, ezért a rendezést követően elegendő, ha csak egy meghatározott méretű csúszó ablakban kerülnek összehasonlításra a rekordok.
4.4 ábra - A sorted neighbourhood eljárás
35
A duplikátum felderítés az egyszerű, attribútum szinten jelentkező adathibák javítását (összetett attribútumok szétválasztása, hiányzó adatok pótlása, elgépelt adatok javítása, szótövezés, lemmatizálás, stb.) és az adatok szükséges transzformációját (pl.: standardizálás, normalizálás) követően végezhető el hatékonyan, hiszen a hasonlósági függvények ekkor jóval magasabb pontosság mellett alkalmazhatók. A duplikátum keresés hatékonysága mesterséges intelligencia eszköztárával is támogatható. A klaszterezés esetén az azonos csoportba kerülő adatok képezik a potenciális duplikátumokat, a fuzzy keresés pedig a pontatlan adatok összehasonlításában segít. A duplikátumkereső algoritmusokról bővebben Elmagarmid et al.[21] adnak átfogó irodalmi áttekintést. A duplikációdetektálás csak a duplikátum jelöltek megkeresése támogatható. A kiugró értékek felderítésének tárgyalása során hangsúlyozotthoz hasonlóan, a végső döntés duplikátum jelöltekről humán feladatot és felelősséget jelent. A relációk közötti vizsgálat esetén nehézséget okozhat azoknak az attribútumoknak a megtalálása, amelyek mentén összekapcsolhatók az egyes relációk. A potenciális hivatkozási integritás megszorítások feltárása érdekében az attribútumok közötti kapcsolatok vizsgálatánál már tárgyalt korrelációanalízis, az asszociációs szabályok és a kovariancia elemzés hívhatók segítségül. A legtöbb adatprofilozó eszköz nélkülözi az összes attribútum kombináció vizsgálatát, jellemzően a felhasználótól kér javaslatot a potenciális hivatkozási integritások verifikálására. Az adatvagyon gazdálkodást érintő kihívások kezelése az adatprofilozás témakörében is releváns kérdés. Az adatprofilozás kurrens területeit a rohamosan növekedő adatmennyiség gyors megismerése és a heterogén adatok kezelése jelenti. Az adatprofilozás kihívásai a nagyméretű, heterogén adathalmazok és a műszaki szempontok köré csoportosulnak. Az adatprofilozás leleplezi a vállalat adatvagyonába bevonható új adatok karakterisztikáját és segít annak értékelésében, hogy mely adatok lehetnek hasznosak a vállalat számára. Az adatok heterogenitása klasszikusan három szinten különböztethetők meg: -
strukturális heterogenitás, pl.: a szerkezeti jellemzők eltérése (adattípusok, integritási megszorítások, stb.) szintaktikai heterogenitás, pl: inkonzisztens formátumok (mértékegységek, rövidítések) szemantikai heterogenitás, pl.: az adatok jelentésének félreértelmezhetősége (szinonimák, homonimák)
Az adatprofilozást az első két szinten a már ismertetett tradicionális eszközök segítik. Az önálló adatforrások szempontjából a szemantikai átfedések vizsgálata irreleváns, de az adatintegráció estében már meghatározó. A legfőbb problémát az adat átfedések
36
azonosítása jelenti. Az adatátfedések tipikus esetét az olyan rekordok jelentik, amelyek csak részben redundánsak és az egyik példány többlet információkat hordoz. A tradicionális adatprofil-készítés az egyes attribútumok és attribútum halmazok elemzésére fókuszál. Az adatbányászat viszont a nagy adathalmazok esetében a rekord és rekordhalmazokról ad információt és segít a speciális adatminták és attribútumkapcsolatok felfedezésében, az adatbányászati algoritmusok (asszociációs szabályok, klaszterezés, fuzzy keresés) számítási teljesítmény igénye azonban jóval magasabb, mint a tradicionális statisztikai eszközöké. A feldolgozott adat mennyiségétől és az eljárások komplexitásától függően az algoritmusok akár órákig is futhatnak. A feldolgozás jóval hosszabb, mint amit a felhasználó beavatkozási lehetőség nélkül tolerál. A beavatkozás igénye hívta életre az interaktív adatprofilozást, amely a folyamatról köztes eredményeket prezentál és biztosítja a felhasználó részére a művelet megszakítását. Egy adattisztítási folyamat elméletben minden tisztítási lépés után a profilozási eredmények újrafuttatását igényeli, ami rendkívül erőforrás igényes. Az adatforrások terhelése elkerülhető, ha az adattisztítás és az újraprofilozás virtuális környezetben történik és csak a felhasználói jóváhagyást követően kerül átvezetésre az eredeti adatforrásban. Az adatvagyon változását kísérő profilozási metódusok a kiinduló adatállomány újraprofilozása nélkül lehetnek igazán hatékonyak. Az inkrementális adatprofilozás felhasználja a korábbi profilozási eredményeket és csak a változást jelentő adathalmazon futtatja le az algoritmusokat, így jelentősen felgyorsítja az adatvagyon változása által okozott hatások vizsgálatát. Tekintettel kell lenni azonban arra, hogy az inkrementális adatprofilozás csak az asszociatív módon kalkulálható jellemzők esetében használható (összeg, elemszám, átlag, stb.) A folyamatos profilozás az inkrementális profilozás speciális esete, amikor az inkrementum egy rekordnak felel meg. Ekkor minden adatrögzítés után újra előállításra kerül az adatprofil. Kihívást jelent a nem tradicionális szerkezetű adatok elemzése. A strukturálatlan adatok profilozásával járó kihívásokra a szövegbányászat eszköztárának felhasználásával adható válasz. Az adatprofilozás műszaki teljesítménye is függ a megnövekedett adatmennyiségtől. Az adatprofilozó eszközök többsége tételes feldolgozást végez SQL utasítások és speciális algoritmusok felhasználásával. Különösen a duplikáció felderítő algoritmusok jelentenek költséges műveleteket. A hatalmas méretű adatforrások vizsgálata során gyakran problémát okoz, hogy az adatok mérete meghaladja az operatív memória méretét. A futás teljesítmény és tárhely igény megkívánja a korszerű profilozó algoritmusoktól az elosztott, párhuzamos feldolgozást. A párhuzamos feldolgozás során értelmezhető mind a funkcionális (egy időben egy adaton több utasítás), mind az adatpárhuzamosság (egy időben több adaton egy utasítás) elve.
37
Az adatprofilozás legtipikusabb felhasználási esete az adattisztítás előkészítése. Olyan detektív eljárás, amely meghatározza azokat a hibás adatokat, amelyeket korrigálni kell. Az adatminőség riport tartalmazza az adathibákkal érintett adatelemek listáját, optimális esetben pedig javaslatokat is ad a feltárt adathibák korrigálására. 4.3 Adattisztítás Az adathibák megismerése után a következő lépés az adatok megfelelő minőségi szintre hozása. Az adattisztítás egy transzformációs lépések sorozatából álló korrekciós folyamat, amelynek során a hibás adatok az adatszabályoknak megfelelő adatokká kerülnek átalakításra. Az adattisztítás feladata a zaj, a redundancia és az inkonzisztencia eltávolítása a hibás adatokból illetve a hiányzos adatok kezelése az adatminőség fejlesztése érdekében.
4.5 ábra - Az adattisztítási folyamat fázisai [22] Az adattisztítás elvégzésének feltétele az adatminőség hibák detektálása. Az adatprofilozás és az adattisztítás céljainak meghatározását követően az adattisztítási lépések egy munkafolyamat mentén definiálhatók. Az összes adathibát egyetlen projektben nem lehet korrigálni, ezért a ráfordítások nagysága miatt azokat az adatokat kell kijelölni tisztításra, amelyek minősége kritikus az üzleti probléma megoldása szempontjából. A döntéskor mérlegelni kell, hogy mi jár nagyobb költséggel: az adattisztítás és a jó adatminőség fenntartása, vagy a rossz minőségű adat hatása a döntéshozatali folyamatokra. A transzformációnak hatékonynak kell lennie a nagy adathalmazokon is, mert egyes adattisztítási műveletek rendkívül számításigényesek. Az adattisztítási lépések végrehajtásának megtervezéssel javítható a tisztítás futási hatékonysága és éles adatokon való transzformáció esetén elkerülhetőek a téves tisztítási lépések által okozott adatvesztések. A tervezés magában foglalja a transzformációs munkafolyamat és a leképezési (mapping) szabályok definiálását, amelyekhez az adatprofilozás nyújt közvetlen információt. A leképezési szabályokat először logikai szinten célszerű definiálni, amelyek a verifikációt követően implementálhatók a fizikai környezetbe. A logikai szint támogatja a munkafolyamat tervezését és a tisztításhoz szükséges transzformációk meghatározását. A logikai szinten végzett ellenőrzéssel elkerülhetők a helytelen tisztítási műveleteket. A fizikai réteg az optimalizált transzformációk implementálását segíti.
38
A leképezési szabályok végrehajtása képezi a munkafolyamat egyes adattisztítási lépéseit, amelyek eredményeképpen megváltozik az adatforrás minősége. A leképezési függvényeket az újrahasználhatóság érdekében deklaratív úton célszerű definiálni[23]. A szerzők öt logikai transzformációs operátort fogalmaztak meg: -
mapping: egy relációt újrastrukturál több lehetséges relációra view: több relációból egy relációt ad vissza (mint SQL) matching: 2 bemeneti reláció és 1 kimenet, az összes rekord párra vonatkozóan kiszámítja a hasonlóságot clustering: a bemeneti relációt transzformálja több beágyazott relációba (a bemenet csoportjai) merging: több klasztert reprezentáló relációból egyet készít
A tisztítási keretrendszernek képesnek kell lennie a felhasználó által írt tisztítókódok és céleszközök bevonására a transzformációs folyamatba. A legáltalánosabb és rugalmasabb megközelítést a fizikai szintű leképezésekre a standard adatmanipulációs SQL utasítások jelentik az adatbázisrendszer által megvalósított procedurális nyelvekkel ötvözve (pl.: PL/SQL)[22]. A verifikáció a transzformációs folyamat helyességének és hatékonyságának logikai szinten való megítélése, amely a folyamat tesztelését és értékelését jelenti. Az adatok tisztítása a transzformáció (fizikai szintű operátorok) végrehajtásával valósul meg. A transzformáció végrehajtását a munkafolyamat, azaz a leképezési szabályok futtatása jelenti. Az implementálás során kerülnek a tiszított adatok átültetésre az eredeti adatforrásba. Az adattisztítás egy része automatikus, algoritmikus úton támogatható. Az adattisztító rutinok működésük során kitöltik a hiányzó értékeket, eltávolítják a szélsőséges elemeket, valamint megszüntetik az inkonzisztenciát. Az automatikus javítások implementálása rendkívüli körültekintést igényel, mert kizárja az emberi bevatkozás lehetőségét. A félautomatikus lehetőségek létjogosultsága szélesebb körű, mivel a legtöbb hiba kezelése csak üzleti szakértővel végezhető el. Előnye, hogy a felhasználó tehermentesítése mellett megtartja az emberi kontrollt a hibajavító folyamat felett. A legrugalmasabban használható félautomatikus módszer a hibajavítási javaslatok felajánlása. Ilyenkor a felhasználó kisszámú, előre felkínált lehetőség közül választhat, amelyek nagy valószínűséggel tartalmazzák a helyes változatot. A módszer lehetővé teszi, hogy az egyes hibajavítások automatikussá váljanak úgy, hogy a felhasználó megjelölheti, hogy az adott hibás részt a továbbiakban mindig ugyanarra cserélje a rendszer. A korai tisztítási lépések az attribútum szintű hibákat kezelik. A hiányzó értékek automatikus kezelése során nem mindegy, hogy a valóságos objektum rendelkezik a reprezentált tulajdonság értékével, vagy más oka van a hiánynak.
39
Az adatok hiányzó értékének alapvető kezelési lehetőségei: -
sor figyelmen kívül hagyása hiányzó érték manuális kitöltése hiányzó érték pótlása egy globális alapértékkel (pl.: n/a)
A hibás értékek automatikus javítása során kitüntetett szerepet játszanak a szótáralapú módszerek. A szótáralapú módszerek tipikusan az elgépelések korrigálása esetén bizonyulnak hatékony eszköznek. A szótárak explicit módon felsorolva tartalmazzák a leggyakoribb hibás értékek leképezését a helyes értékekre (referenciaadatok). A szótárak a korábban nem szereplő formákkal bővíthetők, de az ismeretlen formák leképezési szabályait egy üzleti szakértőnek validálnia szükséges. A szótártáblák az adatintegráció során alkalmasak különféle rendszerekből érkező azonosítók egységesítésére is (pl.: város-irányítószám, ország-országkód átalakítására). A magasabb granularitási szintű adathibák tisztításának hatékonyságát jelentősen javítják az egyes attribútumok szétválasztásán vagy összevonásán alapuló átalakítások (pl. személyek neve, postai címek). Az attribútum szintű tisztítást követő lépések után korrigálhatóak az adatvagyon szintű problémák (strukturális, szintaktikai, szemantikai heterogenitás). A deduplikáció célja, hogy egy valós objektumot egyetlen rekord reprezentáljon. A duplikátum jelöltek a duplikáció keresés eredménytáblájában szerepelnek. Az előállt eredmény helyességének ellenőrzése manuális végezhető el és igazolható. Az adathalmaz konzisztenciája az ellentmondó adatok eltávolításával állítható helyre. A felhasználó által tényleges duplikátumoknak ítélt elemek egy rekorddal való helyettesítésére két lehetőség nyílik. Az egybevonás (merge) az egyes példányok tulajdonságainak összeillesztésével érhető el. A módszer az egyes duplikátumokat attribútumonként vizsgálva a legjobb értékeket összeválogatva készíti el az objektum prototípusát. A több rekordból egy újabb, a prototípus elkészítése nehezen megvalósítható és az esetek többségében nem bizonyul optimálisnak. A tisztítás (purge) a valóságot legjobban reprezentáló példány kiválasztása (pl.: fuzzy logika) és megtartása mellett, a többi eliminálásával valósítja meg a deduplikációt. A mesterrekord az lesz, amelyik elemre a legtöbben hasonlítanak a duplikáció jelölt csoporton belül. Az adattisztítás technológiai támogatása érdekében alapvető elvárás az olyan grafikus felhasználói felület biztosítása, ami lehetővé teszi az adatállapotok közötti kapcsolatok és a transzformácók definiálását. Grafikus felületen jól áttekinthető módon szerkeszthetők meg a munkafolyamatok. A munkafolyamatot leggyakrabban egy grafikus workflow gráf reprezentálja, amely tartalmazza a leképezési szabályok mellett a manuális és külső tevékenységeket is (pl. adatkinyerés, adatmozgatás, stb.).
40
4.4 Az adatminőség magyar specialitásai A hazai KKV-k működését kísérő adatvagyon-gazdálkodás során természetszerűleg meghatározó szerepet játszik az adatok magyar nyelven és a magyar szintaxisnak, szabványoknak megfelelő tárolása. Mind a preventív kontrollok megvalósítása, mind az adatprofilozás és –tisztítás hatékony alkalmazása során tekintettel kell lenni a magyar nyelv szintaktikai és szemantikai szabályaira. A nyelvi különbségekből eredő problémák mindig megoldást igényelnek olyan nyelvek esetében, amelyek karakterkészlete eltér az angol ábécé karakterkészletétől. A magyar nyelvtani problémák legtipikusabb megjelenése az ékezetes betűk és kettős mássalhangzók (ly, cs, stb.). A hasonlósági függvényekkel dolgozó ill. a sorba rendezésen alapuló algoritmusok hatékonysága csorbul a nyelvtani szabályok figyelmen kívül hagyásával. Nyilvánvaló, hogy a rövid ö és a hosszú ő mint karakterek különböznek, de egy hasonlósági index kiszámítása során nem jellemezhetőek ugyanakkora távolsággal, mint két nem ékezetes karakter (pl.: a és b)10. Ráadásul az ékezetes karaktereket tartalmazó szavak gyakran ékezet nélkül kerülnek tárolásra. Ezek a sajátosságok a szintaktikai ellenőrzések mellett jelentősen megnehezítik az ékezetes szövegek tisztítását és a duplikátumok felderítését. A hasonlósági függvényeknek tekintettel kell lenniük erre a hasonlósági indexek számításakor. A kettős mássalhangzók esetében nehézséget jelent az algoritmusok számára annak felismerése, hogy mikor viselkedik a betűkombináció egy külön hangot jelölő többjegyű betűként és mikor két betűként (pl. Táncsics, táncstúdió). A vállalatok adatvagyonának egyik legjelentősebb értékét a partnereiket azonosító és leíró adatok képezik. A természetes személyek és gazdálkodó szervezetek neve, elérhetősége, címe szintén viseli a hazai sajátosságok. A név és cím adatok struktúrája, írásmódjuk szintaktikai szabályai és az értékkészletüket adó referenciaértékek ismerete alapvetően meghatározza az adatminőség menedzselését a hazai környezetben. Az alábbiakban ezek kerülnek részletes bemutatásra. A hatályos jogi szabályozás alapján minden magyar állampolgár a születési, illetve a házassági anyakönyv szerint őt megillető születési vagy házassági nevét viseli. Az anyakönyvi bejegyzésben szereplő születési név két részből áll: családi névből és utónévből. A családi név egy vagy kéttagú lehet, ha kéttagú, akkor kötőjel kapcsolja össze a családi neveket, az utónévként legfeljebb két, a gyermek nemének megfelelő utónevet lehet
10
Az Oracle adatbáziskezelő rendszer által is biztosított SOUNDEX függvény jól alkalmazható az angol nyelven rögzített adatok hasonlóságának megállapításában, de a magyar nyelvre alkalmazva hatékonysága jelentősen csökken, a sajátosságot jelent, pl.: király, kiráj szavakban két különbséget vesz figyelembe egy helyett. (A függvény olyan szavakat keres, amelyek hangzása hasonlít a karakterlánc hangzásához. A függvény bizonyos feltételezéseket tesz, hogy betűket és betűk kombinációit hogyan ejtik ki angolul. A két összehasonlított szónak ugyanazzal a betűvel kell kezdődnie.)
41
anyakönyvezni, a Magyar Tudományos Akadémia által összeállított utónévjegyzékéből. A születési név lehetséges felépítése tehát: családi_név1[-családi név2] utónév1 [utónév2] A magyar keresztnevek vizsgálatakor az MTA Nyelvtudományi Intézete által anyakönyvi bejegyzésre alkalmasnak minősített utónevek jegyzéke teljes referenciaként szolgál[web3, web4]. A családi nevek esetében azonban nem építhető kimerítő referenciaadatbázis. Tekintettel arra, hogy a leggyakoribb 100 vezetéknév a hazai népesség több mint harmadát lefedi[web5], a leggyakoribb vezetéknevek felhasználásával érdemes adatszótárat építeni. Az családi név adatszótár a félautomatikus adattisztítás során jelent segítséget a leggyakoribb családi nevek elgépelési hibáinak feltárása és javítása esetében. A magyar személynevek megengedett struktúráját kibővítik a házassági nevet érintő szabályok. A házassági név az érintettet a házassági anyakönyvi bejegyzés alapján megillető neve. A házasságot kötő személy családjogi törvényben felsorolt házassági névviselési formák közül választhat házassági nevet[web6]. A feleség a házasságkötés után választása szerint: -
kizárólag a maga teljes nevét viseli (Kiss Gizella), a férje teljes nevét viseli a házasságra utaló toldással (Szabó Istvánné), a férje teljes nevét viseli a házasságra utaló toldással, amelyhez a maga teljes nevét hozzákapcsolhatja (Szabó Istvánné Kiss Gizella), a férje családi nevét viseli a házasságra utaló toldással és ehhez a maga teljes nevét hozzákapcsolja (Szabóné Kiss Gizella), vagy a férje családi nevéhez hozzákapcsolja a saját utónevét (Szabó Gizella).
A férj a házasságkötés után kizárólag a maga teljes nevét viseli (Szabó István), vagy a felesége családi nevéhez hozzákapcsolja a saját utónevét (Kiss István). A férj, illetve a feleség a házasságkötés után házassági névként családi nevüket is összekapcsolhatják, hozzáfűzve a saját utónevüket (Szabó-Kiss István és Szabó-Kiss Gizella, illetve Kiss-Szabó István és Kiss-Szabó Gizella). A választás során a feleknek csak arra kell figyelniük, hogy: -
-
csak az egyik házasuló veheti fel házassági névként a másik családi nevét (tehát az nem lehetséges, hogy a feleséget Szabó Gizellának, a férjet pedig Kiss Istvánnak hívják), illetve a házassági név családi nevekből képzett része legfeljebb kéttagú lehet (ez akkor érdekes, ha valamelyik fél családi neve már eredetileg is kéttagú, például, ha a férjet Szabó-Kovács Istvánnak hívták volna, a feleség nem lehet Szabó-KovácsKiss Gizella)
42
A házassági név megengedett felépítése alapján a természetes személy nevének szerkezete az alábbiakra módosul: családi_név1[-családi név2][né] [utónév1][né] [utónév2] [családi_név3][-családi név4] utónév3[né] [utónév4] A megkülönböztető betűjel az egy családhoz tartozók vagy azonos családnevűek megkülönböztetésére szolgál, az a családi név része. A betűjelet a családi nevet megelőzően vagy azt követően nagybetűvel jegyezik be, és a névtől ponttal választják el. (pl. Kovács P. János, P. Kovács János). A névhasználati szabványokat tovább bonyolítja titulusok (dr., ifj. id., özv., prof., stb.), különösen a többszörös titulusok használata. Az anyakönyvekbe a születési és a házassági név anyakönyvezésekor a "doktor" (dr.) megjelölés jegyezhető be minden további nélkül (attól függően, hogy melyik félnek van doktori címe például: dr. Kovács Jánosné Kiss Etelka, dr. Kovács Jánosné dr. Kiss Etelka, Kovács Jánosné dr. Kiss Etelka). A titulusokat a kezelhetőség érdekében az adattárolás során célszerű külön mezőbe rögzíteni. A megkülönböztető betűjelek és a titulusokat is figyelembe vevő név szerkezet: [titulus.] [betűjel.] családi_név1[-családi név2][né] [utónév1][né] [utónév2] [titulus.] [betűjel.] [családi_név3][-családi név4] utónév3[né] [utónév4] A cégnevek sajátosságait a Cégtörvény szabályozza, amely alapján a cégnévnek a választott cégforma megnevezését, valamint legalább a vezérszót kell tartalmaznia[web7]. A vezérszó elősegíti a cég azonosítását, illetve más, azonos vagy hasonló tevékenységű cégtől való megkülönböztetését. A vezérszó a cégnévben az első helyen áll, idegen nyelvű kifejezés, rövidítés és mozaik szó is lehet, amelyet latin betűkkel kell feltüntetni. A cégnévben a vezérszón kívül csak magyar szavak szerepelhetnek, a magyar helyesírás szabályainak megfelelően. A cégnévben rövidítés csak a vezérszó esetén, illetve a cégforma meghatározásánál megengedett. A cégformák lehetséges értékkészletéről a Közigazgatási és Igazságügyi Minisztérium adatszolgáltatása [web8] ad információt. A cég rövidített neve a vezérszóból és a cég formájának megjelöléséből áll. A cégnévnek (rövidített névnek) az ország területén bejegyzett más cég elnevezésétől egyértelműen különböznie kell. A cég nevét (rövidített nevét) egyes eljárások alatt toldattal kell használni (cégbejegyzési, csőd, felszámolási, végelszámolási, kényszertörlési eljárások, pl: bejegyzés alatt esetében „b.a.” toldat). vezérszó [egyéb névelemek] cégforma [toldat] A vállalkozások adatairól ingyenesen használható referenciát az e-cégjegyzék[web9] szolgáltatása nyújt, amely a partnerek neveinek ellenőrzési lehetőségén túl számos egyéb céginformációval is szolgál.
43
Mind a természetes, mind a jogi személyek kitüntetett jellemzője jellemz jellemző a cím (lakcím, székhely, telephely, fióktelep), amely szintén egy kiemelt nemzetspecifikus nemzetspecifikus adat.
4.6 ábra - A cím logikai felépítése A címek tisztításakor isztításakor az elemekre bontás és elemenként történő történő javítás a célravezető. célravezet A címek elemeinek (irányítószám, település, közterület, stb.) javításuk után történő történ összefűzésével zésével kapható meg a javított, teljes cím. Az irányítószám, valamint a főváros és az öt legnépesebb vidéki város közterület referencia adatbázisaként a Magyar Posta adatszolgáltatása[web10] [web10] használható. A címtisztítás során problémát jelent azonban, hogy Magyarországon a közigazgatás jelenleg nem rendelkezik egységes, közhiteles, közhiteles, az ország valamennyi címét lefedő lefed címadatbázissal. A címek, a különböző különböz címnyilvántartások változtatásai és a kapcsolódó folyamatok nem egységes módon készültek, készültek az eltérőő adatstruktúra adatstru mellett a redundanciák anciák a rendszerek inkonzisztenciájához vezetett. vez A heterogén nyilvántartások integrálásával egy etalon referencia címadatbázis létrehozása érdekében kezdődött meg 2012-ben az „ÁROP-1.2.12 1.2.12-2012-2012-0001 Közhiteles címregiszter kialakítása” kialakítása elnevezésű EU projekt megvalósítása. A bevont nyilvántartások köre kiterjed a lakcímnyilvántartásra, az ingatlan-nyilvántartásra, ingatlan a Magyar Posta nyilvántartására nyilvántartás és a jegyző helyi szintű nyilvántartásra ra[web18]. A címregiszter referencia nyilvántartás adatai elsődlegesen a közigazgatás szereplői szerepl részére válik elérhetővé, ővé, de vélhetően vélhet adatértékesítési és címtisztítási szolgáltatások formájában a vállalkozások számára is hozzáférhetővé fog válni. Erre tekintettel a vállalkozásoknak célszerű címadataikat a 4.6 ábra szerinti struktúrába szervezni.
44
A nemzetspecifikus adatok további nagy csoportját a különböző okmányok, azonosító számok alkotják. Magyarországon a különböző, személyazonosításra alkalmas okmányok (pl. személyazonosító igazolvány száma, útlevélszám) és azonosítók (pl. adóazonosító jel, TAJ), valamint a vállalkozások jellemzői (pl. adószám, cégjegyzékszám, TEÁOR-kód) első szinten reguláris kifejezések segítségével ellenőrizhetők. Amennyiben az azonosító szintaktikailag megfelel a rá vonatkozó szabványnak, második szinten algoritmikus úton kell ellenőrizni a tartalomba épített szabályokat (pl.: felépítésből adódó, CDV szám). A tartalom logikai megfelelése esetén egyes esetekben lehetőség nyílik az azonosító referencia adatokkal való összevetésére. Az adószám esetében az érvényes áfakör és adóhatóság kódok felsorolása a NAV honlapján[web11] szerepel. Az adószámok érvényessége szintén validálható a honlapon[web12]. Az egyedi ellenőrzési űrlap mellett a NAV lehetővé tette, hogy az adószámokat (pontosabban azok törzsszámait) kötegelve, egy fájlba összegyűjtve lehessen feltölteni az ellenőrző eljáráshoz. A NAV által biztosított lehetőség túlmutat az adószám érvényességének megállapításán, az adószámmal azonosított cég nevét és székhelyét is szolgáltatja, így cégnév referencia forrásként is felhasználható. A statisztikai számjel a KSH, a TAJ szám érvényessége pedig az OEP honlapján kérdezhető le. A legfontosabb azonosítók képzésének szabályait az E. Függelék tartalmazza.
5. SZOFTVERTÁMOGATÁS Az adatminőség-menedzsment technológiája lényegében egy folyamatos jelleggel működő felügyelőrendszer, amely a rugalmasság biztosítása érdekében paraméterezhető formában hordozza az adatokkal szemben támasztott minőségi követelményeket. Egy adatminőség iránt elkötelezett KKV számára az adatminőség-menedzsment folyamatciklusa akkor lehet hatékony, ha a manuális módszereket automatizálhatóvá tevő funkciókat kínáló szoftvereszközök váltják fel. Az adatminőség menedzselését támogató szoftverek feladata, hogy rugalmas keretet nyújtsanak az üzleti folyamatokkal párhuzamosan változó adatszabályok, ellenőrzési logikák és tisztítási eljárások kezeléséhez, lehetőség szerint újabb adatforrások bevonásához és az adatvagyon gazdagításához. Optimális esetben a vállalat különböző rendszereiben kezelt adatbázisokat közvetlen vagy közvetett adatkapcsolat útján rendszeresen ellenőrzik. A szisztematikusan gyűjtött és automatikusan nem korrigálható hibákat pedig visszacsatolják a szervezeti hierarchia megfelelő pontjaira felülvizsgálat és javítás céljából. Az innovatív eszközök az adatok teljes életciklusának felölelésére törekedve, minden felhasználási szinten támogatják az adatminőség biztosítását, végső soron az üzleti döntéshozatalt.
45
5.1 Funkcionális követelmények Az adatprofilozás szoftvertámogatása vizsgálatának kiindulópontját az elméleti háttér alapján megfogalmazott funkcionális követelmények jelentik. A követelményeket referencia elvárásként kezelve értékelhető az egyes szoftvereszközök alkalmassága az adatminőség menedzsment támogatására. A fent bemutatott szempontok rámutatnak egy adatminőség támogató szoftverrel szemben támasztott alapvető követelményekre. A 3.4 fejezetben bemutatott adatminőség-menedzsment üzleti folyamata és az ezek során alkalmazott, a 4. fejezetben részletezett módszertan körülhatárolja a szoftverrendszertől elvárt szolgáltatások körét. Középpontba helyezve az üzleti folyamatot, az alapvető használati esetek az 5.1 ábra szerint definiálhatók.
5.1 ábra - Egy adatminőség-menedzsment támogató szoftver használati esetei
46
A rendszer három fő szolgáltatás komponensre bontható. Az alacsonyabb szinten lévő alrendszerek szolgáltatásai a magasabb szinten lévő komponensek funkcionalitásának is részei. A legalapvetőbb funkció az adatprofilozás, amelynek felhasználói az adatelemzők. Az adattisztítási szolgáltatás képességei az adattisztítók elvárásait teljesítik, míg a legszélesebb funkcionalitással bíró adatminőség-menedzsment rendszer az adatminőség-menedzserek munkája során felmerülő problémák megoldásához nyújt támogatást. Az egyes szerepkörök az igénybe vett szolgáltatási komponenseknek megfelelő hierarchiába szerveződnek. Kiemelendő, hogy az adatelemzők az adatok módosítására, kiegészítésére irányuló írási jogosultsággal nem rendelkeznek, kizárólag az adatok elemzésére szolgáló szolgáltatásokat érhetik el. A funkcionalitást kiegészítik az adatgazda számára biztosított szolgáltatások. A rendszer az üzleti folyamatok tekintetében szakértő adatgazdával az üzleti megszorítások megfogalmazása, validálása, az elvárt adatminőségi szint definiálása és a manuális adattisztítás során kerül kapcsolatba. A felhasználókkal való kapcsolat során alapvető elvárás a rendszerrel szemben a mai kor követelményeinek megfelelő grafikus kezelőfelületet (pl.: munkafolyamatok megtervezése). A korszerű, felhasználóbarát GUI kritikus abból a szempontból is, hogy a rendszer felhasználói inkább üzleti szakértők, mint informatikusok. Az aktorok speciális esetét azok a külső rendszerek alkotják. Jellemzően az adatintegrációs és az adatbányászati eszközök támaszkodhatnak egy adatminőség alkalmazás szolgáltatásaira. A vizuális eszközökkel (grafikonok, diagramok) is támogatott adatprofilozás szolgáltatási csomag tartalmazza a leíró statisztikai eszközökkel végzett attribútum elemzés, az adatkeresztmetszet vizsgálat (függőségelemzés) és a duplikáció detektálás támogatásához szükséges funkcionalitásokat. Az adatminőség alakulásának historikus áttekintése és az újraprofilozás futási idejének csökkentése érdekében elvárás, hogy az alkalmazással elmenthető legyen az adatprofilozás futtatásának eredménye. Az adattisztítási funkciók fedik le a problémás adattok értékeinek módosítását, annak érdekében, hogy megfeleljenek az üzleti és technikai megszorításoknak. Az adattisztítási alrendszer lehetőséget biztosít a tisztítási munkafolyamat megtervezéséhez, a transzformációs operációk létrehozásához, illetve a műveletek mentéséhez és újrafelhasználásához. Az adattisztítás speciális esete az manuális adattisztítás, amely műveletet legtöbb esetben az adatgazda szaktudására támaszkodva végezhető el. A szintaktikai elemzés és standardizálás (parsing and standardization) a karakterláncok elemi szintre bontását és az értékek referenciaadatoknak illetve a felhasználó által definiált üzleti szabályoknak megfelelő átalakítását biztosítják (pl. címtisztítás, névkezelés). Az illesztéssel (matching) az adatvagyon elemein átfedő rekordok
47
azonosítása, majd duplikációkezelés).
összekapcsolása
illetve
egyesítése
végezhető
el
(pl.:
Az adatminőség menedzselését támogató funkciók az adatgazdával együttműködésben meghatározott minőségi szabályok és referenciaértékek rögzítését és az adatminőség folyamatos nyomon követését tartalmazzák. Az adathibák megelőzése érdekében preventív kontrollok beépítését biztosítja a folyamatokba. Egy hatékony és könnyen kezelhető monitoring rendszer a folyamatos, működés közbeni adatminőségi elemzésekre is használható. Az online adatminőség ellenőrzés által szavatolható a folyamatos, maximális adatintegritás, a vállalkozás adatvagyonának megbízható minősége és megelőzhetőek az adatminőségi problémák (pl.: egy adatmigráció csak akkor végezhető el, ha nem okozza az adatminőség tolerálhatatlan romlását). Az adatgazdagítás az adatvagyon értékének emelését támogatja külső forrásból származó adatok bevonásával (pl.: címek ellátása geokódokkal). A szűken értelmezett adatminőség-kezelés eszköztárának biztosítása mellett egy hatékony adatminőség támogató rendszer az metaadatok, valamint a törzs- és referenciaadatok kezelését is közvetlenül támogatja. 5.2 Kereskedelmi alkalmazások Lévén, hogy az adatminőség kezelése az ETL folyamat szerves része, az adatminőség folyamatok követelményeit teljesítő megoldásokat a professzionális szállítók jellemzően adatintegrációs termékportfóliójukon belül kínálnak (IBM, Oracle, SAP, SAS, Informatica, Talend). A Microsoft önálló adatminőség célterméket nem értékesít, az SQL Server részeként a Data Quality Services nyújt támogatást az adatminőség kezelése során. A komplex adatintegrációs termékportfólióval nem rendelkező szállítók kizárólag az adatminőség menedzsment szemléletű kezelését célzó szoftverek fejlesztésére koncentrálnak (Human Inference, Ataccama). A Gartner nemzetközi technológiai elemző cég évről évre elkészíti az adatminőség megoldások un. Magic Quadrant for Data Quality Tools elemzését, amely képet ad az egyes eszközök erősségeiről és gyengeségeiről.
48
5.2 ábra - Az adatminőség kezelését támogató eszközök elemzése [web13] Az elemzésbe bevont alkalmazások körének meg kell felelnie a Gartner által minimum elvárásként megfogalmazott funkcionalitás teljesítésének. Az önálló megoldást kínáló szállítók követelményeket kell teljesíteniük: -
termékeinek
az
alábbi
funkcionális
adatprofilozás és adatminőség mérése szintaktikai elemzés és standardizálás (parsing and standardization) illesztés (matching) általános adattisztítás adatminőség-monitoring
További feltételt jelent, hogy a bevont szállítóknak megfelelő iparági tapasztalattal (legalább 100 bevezetés és aktív ügyfél) kell rendelkezniük és nemzetközi támogatást kell biztosítaniuk. A szállítók erősek a legtöbb tradicionális adatminőséget érintő folyamat támogatása terén. Az eszközök alapfunkcionalitása ugyanazt az eljárást követi: az adatok elérése, profilozása, a szükséges transzformációk végrehajtása és az adatminőség folyamatos monitorozása. Az alapfunkcionalitás mellett legtöbbjük támogatja a metaadatmenedzsmentet, az innovatív technológiai megoldásokat (pl. big data) és lehetővé teszi az adatminőség kezelés megvalósítását SOA környezetben.
49
A Gartner az értékelés két dimenzió, a megvalósítási képesség és a vízió teljességének dimenziója mentén végzi el. A megvalósítási képesség értékelése során kiemelt súllyal szerepel az eszköz funkcionalitásának megfelelése a piaci elvárásoknak, az értékesítési csatornák és az árazási modell, valamint az ügyfelek elégedettsége és elköteleződése a termék iránt. A vízió teljessége a piac megértésének és az új technológiák implementálásának képességét, az innovatív technológiák kifejlesztésének kompetenciáját értékeli kiemelt súllyal, lényegében a termékstratégia keresleti igényeknek való megfelelőségét minősítve. Az értékelés alapján a szállítók négy klaszterben csoportosíthatók: -
-
-
-
A vezetők élenjárók a piaci trendek alakításában és az adatminőség kezelését széleskörű funkcionalitással támogatják. Az alkalmazásokat folyamatosan olyan új funkcionalitással bővítik, amely újabb üzleti problémák megoldásában teszik hasznossá az eszközt és lehetőséget teremtenek az innovatív szolgáltatások SOA környezetbe implementálását. Piaci részesedésük magas, globális jelenléttel és pénzügyi stabilitással jellemezhetők. A kihívók értik a trendek kulcstényezőit, de termékeik nem rendelkeznek olyan széles funkcionalitással, mint a vezetők megoldásai, gyakran egy speciális területen (pl.: címtisztítás) erősek. Stabil piaci jelenléttel és pénzügyi háttérrel rendelkeznek. A látnokok jól értik a technológia fejlődését és a kibontakozó üzleti trendeket (pl.: az adatminőség folyamatos monitorozásának igénye), ezért az aktuális igényekhez rugalmasan igazodnak. Mindemellett piaci részesedésük elenyésző, hiányában vannak az ügyfelek elköteleződésének és erőforrásaik meg sem közelítik a legnagyobb szállítók esetében tapasztalható nagyságrendet. Sok esetben új piaci belépők, akik nem rendelkeznek a globális jelenléttel bíró nagy vendorok tapasztalatával, de a piaci igényeknek való megfelelésre törekedve egy-egy megoldásukkal új kihívásokat támasztanak a vezetők számára. A niche szereplők (piaci réseket keresők) hiányoságokban szenvednek mind a megvalósítási képesség, mind a vízió teljessége mentén. A niche szereplők azonban nagyon erős funkcionalitással bírnak a speciális adatminőség problémák megoldása terén. Az összpontosító stratégia miatt alacsony piaci részesedéssel rendelkeznek.
A nagy adatbázis szállítók (Oracle, SAP, IBM, MS) mind rendelkeznek professzionális megoldással, amelyek viszont egyrészt jellemzően a saját házuk felé húznak, másrészt egy KKV számára igen költségesek. A gyakorlatban ez azt jelenti, hogy pl. a Microsoft megoldásával probléma lehet nem Windows környezetben és az MS SQL Server adatforrásaira optimalizáltak (SQL Server, Excel). Az SAP adatok gyors és hatékony kinyeréséhez pedig szinte minden esetben különálló, igen költséges komponenst kell vásárolni.
50
A legfejlettebb, a teljesítmény, a robosztusság és skálázhatóság követelményeinek kielégítésére tervezett programcsomagok (IBM, Informatica) Enterprise Edition verziójának éves díja 45.000 és 150.000 USD/év/CPU tartományba esik[web14]. Léteznek olcsóbb alternatívák, de ezek támogatottsága gyakran heterogén környezetre korlátozódik (Microsoft, Oracle) és néhány szükséges kiegészítő megoldása (metaadatkezelés, monitoring, SAP adapterek) újabb költségeket eredményez. A Gartner mágikus négyzetének vezető pozícióját sorban hét éve az Informatica foglalja el. A szállító az adatintegráció specialistája, termékportfóliója az ETL folyamatokra összpontosít, így független a nagy adatbázisrendszerek szállítóitól. Alkalmazásai az adatintegráció és az adatminőség kérdéseire koncentrálnak, nem az üzleti intelligencia megoldások teljes kínálatára. Data Quality nevű terméke széles funkcionalitásával igazodik a piac legmagasabb elvárásaihoz. Emellett - szemben a nagy informatikai szállítókkal – a szűkebb funkcionalitást igénylő és alacsony pénzügyi korlátokkal rendelkező szervezetek kiszolgálására is törekszik PowerCenter Express adatintegrációs termékével, amely szintén tartalmaz adatminőség funkcionalitást. A kis- és közepes vállalkozásokat célzó, 5 felhasználóig használható PowerCenter Express Profession Edition éves támogatásának díja 8.000 USD/év/felhasználó (kb. 150 ezer Ft/hó). A termék jelentős korlátozásokkal (1 felhasználó, legfeljebb 250 ezer sor feldolgozása naponta) ingyenesen is elérhető Personal Edition verzióban. A magyarországi KKV-nak azonban szembe kell néznie azzal a kérdéssel, hogy az Informatica Express Professional Edition megoldásának felhasználónként közel 1,8 millió Ft éves költsége megengedhető-e a szigorú pénzügyi korlátok mellett. A vállalkozásnak olyan megoldást kell találniuk, amely működésük jelenlegi komplexitásának szintjén kielégíti követelményeiket, de későbbi fejlődésükkel párhuzamosan a professzionális elvárásoknak is megfelelően, rugalmasan kiterjeszthető. Támogatja az elterjedt rendszerek és adatbázisok széles körét, mindemellett belefér a szoftverbeszerzésre fordítható keretbe. A problémára a kereskedelmi alkalmazások alternatívájaként több olyan open source szoftver is megoldást kínál, amelyhez a licencek szabad felhasználhatósága mellett üzleti alapokon igénybe vehető a testre szabás, az oktatás, az üzemeltetés és a támogatás, így a rendszer teljes élettartam költsége a magyar KKV-k számára is vállalható. 5.3 Szabad felhasználású alternatívák Az adatvagyon gazdálkodást támogató nyílt forráskódú eszközök piaca és maguk a nyílt forráskódú rendszerek is nagyon gyorsan fejlődnek. Ma már az adatvagyon menedzsment tevékenységeit támogató technológiák mindegyike elérhető nyílt forráskódon is. Léteznek nyílt forráskódú OLAP, ETL, adatbányász, riportkészítő és kifejezetten adattárházak futtatására kifejlesztett adatbázis kezelők is. A forráskód
51
megosztása miatt az alkalmazások rendelkeznek a saját fejlesztésű eszközök előnyeivel, bővíthetőek, tetszőleges interfész, integrációs felület adható hozzájuk, emellett jól dokumentáltak és támogatás is elérhető. Az adatvagyon gazdálkodás széles technológiai támogatása iránt nyitott és egy megoldás választása előtt álló hazai KKV számára viszonylag új és ismeretlen terep egy adatintegrációs, adatminőség célszoftver implementálása. Egy széles funkcionalitású alkalmazás esetén is előfordulhat, hogy működési elveinek tökéletlen ismerete miatt a kezdeti szakaszban nem fogalmazódik meg minden olyan elvárás, ami valójában kielégíthető lenne. A nyílt forráskódú szoftverek csökkentik ezt a kockázatot, hiszen nem jelenik meg azonnali licensz költség. A használhatóság, a rugalmasság, a szoftver képességeivel megvalósítható üzleti logika testhez állósága akkor derülhet ki teljességében, ha már vannak élesben tesztelhető eredmények. A nyílt forráskódú rendszerek alkalmasak arra is, hogy a professzionális megoldások bevezetéséhez szükséges szervezeti kultúra kialakuljon és tiszta elvárások legyenek megfogalmazhatók a funkcionalitásban teljesebb rendszerek irányába. Ha egy szabad forráskódú eszköz nem elégséges a vállalkozás céljaink eléréséhez, kép kapható arról, hogy milyen elvárásoknak lehetnek egy adott típusú szoftverrel szemben. Az open-source szállítók amellett, hogy a KKV-k szintjén kielégítő és életképes megoldásokat kínálnak, kereskedelmi licenc mellett lehetőséget biztosítanak a támogatás kiterjesztésére is (commercial open source). Az alábbiakban olyan szállítók kerülnek bemutatásra, amelyek rendelkeznek legalább az adatprofilozás tekintetében ingyenes termékváltozattal és erre a termékre üzleti alapon támogatási szolgáltatást kínálnak. További feltételt képez a tágan értelmezett adatminőség-menedzsment támogató alkalmazás-portfólió megléte (metaadatkezelés, törzsadat-menedzsment támogatása, adattisztítás), amely alkalmazásait a vállalkozások integrálhatja üzleti működésébe a funkcionális igények növekedése esetén. Kiemelt vizsgálati szempontot jelent a teljes ETL folyamatot támogató megoldás kínálata a szállítók részéről. A Gartner értékelési kritériumait teljesítő szállítók közül négy vendor kínál ingyenesen elérhető termékváltozatot. Figyelemre méltó a Gartner mágikus négyzetében a középmezőny szállítói között megjelenő Talend neve, aki egy nagyvállalati szintű, de nyílt forráskódú szolgáltatásokat nyújtó szállító. A Talend egy kereskedelmi open source szállító, aki üzleti bevételét a támogatásból, oktatásból és tanácsadásból szerzi. Erős vállalati háttérrel és dedikált magyarországi partnerrel is rendelkezik (Starschema Kft.). A Talend alkalmazás portóliójának három szegmense a szabad felhasználású OpenStudio és a kereskedelmi változatokat tartalmazó Enterprise és Platform termékkör. A Talend OpenStudio több száz adatforrást támogat és Data Quality terméke mellett kielégítő funkcionalitást tartalmaz az adatintegráció, törzsadatkezelés, BPM és az ESB
52
terén. Az adatintegáció hatékony támogatása érdekében a szállító erősen összpontosít a legújabb technológiák integrálására (Hadoop, NoSQL adatforrások). A Talend programcsomag az adatvagyon-menedzsment funkciói közül lefedi a tágan értelmezett adatminőség menedzsmenttel kapcsolatos témákat. Termék
Funkcionalitás
Licensz
Open Studio for Data Quality
adatminőség kezelése, adatprofilozás, elemzés, grafikus értékelés
Open Studio for Data Integration
az adatintegráció, ETL folyamat támogatása, több mint open-source 450 adatforrás csatolóval LGPL v3
Open Studio for MDM
törzssadat-menedzsment, támogatja a törzsadatok open-source kezelését és a hiteles referencia adat nyilvántartását, LGPL v3 adatprofilozási funkciókat is tartalmaz
Open Studio for BPM
üzleti folyamat menedzsment szoftver, a folyamatok open-source modellezése, tervezése és optimalizálása érdekében LGPL v3
Open Studio for ESB
alkalmazásintegráció, amely leegyszerűsíti a heterogén open-source alkalmazások és szolgáltatások közötti kapcsolatot, LGPL v3 lehetővé teszi a szolgáltatások SOA alapú menedzselését
Open Studio for Big Data
elérhetővé teszi a big data technológiákat az ETL apache license folyamat során (MapReduce 2.0, Hadoop, HBase, Hive, v2 HCatalog, Oozie, Sqoop és PigNoSQL támogatás)
testreszabható open-source LGPL v3
5.1 táblázat - A Talend szabad felhasználású termékportfóliója[web15] A Talend OpenStudio alap funkcionalitása GPLv3 open source licenc mellett érhető el, a kiegészítő szolgáltatások (technikai támogatás) kereskedelmi szerződést igényelnek. A fenti termékek Enterprise és Platform változata jóval bővebb funkcionalitással rendelkezik, de az open-source licenc lehetővé teszi a felhasználók részére a felhasználás és a módosítás teljes szabadságát, így akár saját kiegészítők is fejleszthetők az alkalmazásokhoz. A nyílt forráskódú adatminőség szoftverek fontos szállítója a Human Inference, aki a Gartner értékelése alapján a Talend közvetlen versenytársa. A Human Inference fejleszti és támogatja a DataCleaner alkalmazást, amely GPLv3 licenc mellett érhető el. A vendorok közötti együtműködések példája, hogy a DataCleaner integrálásra került az open-source nyílt forráskódú üzleti intelligencia vezető szállítója, a Pentaho által szintén Java környezetben fejlesztett ETL alkalmazásába. A DataCleaner integrációjával a Kettle kódnév alatt futó fejlesztésben az ETL folyamatok mellett az adatprofilozás és
53
tisztítás is magas szinten támogatott. A szoftver workflow alapú grafikus komponense (Spoon) közvetlen elérhetőséget biztosít a DataCleaner szolgáltatásaihoz. A Pentaho Community Edition termékeit Apache version 2.0 licence mellett teszi elérhetővé, amelyhez részletes dokumentációt biztosít. A kereskedelmi változatban további széleskörű támogatást, kiegészítő funkcionalitást kínál ügyfelei részére. A Pentaho megoldásai az üzleti intelligencia minden szegmensét lefedik szabad felhasználású alkalmazásokkal (adatintegráció, adattárház, OLAP, adatbányászat, big data, stb.) mind szerver, mind kliens oldalon. Amennyiben egy vállalkozás ki kívánja terjeszteni adatvagyona kezelésének technológiai támogatását, erre a Pentaho eszközei lehetőséget biztosítanak. A Pentaho magyarországi partnerrel is rendelkezik az Omnit Solutions Kft. személyében. Az Ataccama szintén a Gartner négyzet figyelemre méltó középmezőnyében helyezkedik el. A gyártó termékportfólióját teljes mértékben az adatminőség menedzsment támogatásához igazította, adatintegrációs és egyéb kapcsolódó funkcionalitás kívül esik termékkörén. Amellett, hogy adattisztító, törzs- és referencia adat kezelő, valamint az adatminőség monitoring eszközeit kereskedelmi alapon kínálja, az adatprofilozó képességeket ingyenesen bocsátja rendelkezésre az Ataccama DQ Analyzer alkalmazással. Mivel a DQAnalyzer egy komplett professzionális termékcsalád szabad felhasználású része az adatprofilozáson túli adatminőség folyamatok már kizárólag szállítói termékeinek megvásárlásával bővíthető (pl. a profilozás eredménye közvetlenül továbbítható a már szolgáltatási díj mellett elérhető Data Quality Center alkalmazás részére adattisztítás, standardizálás és duplikációkeresés céljából). A Gartner mezőnyében szereplő X88 hasonló termék licence politikát folytat (professzionálistermékei Discovery Edition, Prototyping Edition, Quality Management Edition). A Pandora Data Profiler terméke szabad felhasználás, de erős korlátozás mellett érhető el. Az alkalmazás legfeljebb 50 táblával és maximum 1 millió rekord feldolgozásáig használható. A licenc 90 napig érvényes, amely letelte után újabb licence igényelhető, de a szállító nem vállal garanciát a megújítására. Az X88 olyan korlátozásokat támaszt, amely egy hazai vállalkozás számára magas kockázatot hordoz. Az Infosolve különbözik a többi open-source szállítótól: a termék ugyan GPL v2 szabad felhasználású licenc verziójú, de a szoftver nem érhető el közvetlenül. Az implementáláshoz szolgáltatási szerződés kötése szükséges, a termék csak közvetlen értékesítési csatornán keresztül szerezhető be (a forráskód pedig csak a támogatást igénybevevők részére férhető hozzá). A magyarországi disztribútor hiányában az Infosolve OpenDQ és OpenCDI termékei a magyar KKV-k számára elérhetetlenek. Az Informatica ingyenesen kínált bevezető szintű adatintegrációs terméke, a már tárgyalt PowerCenter Personal Edition funkcionalitásában támogatja az adathibák feltárását és a szabály alapú adatprofilozást. Ennek köszönhetően az iparág vezető
54
szállatójának terméke is releváns a hazai KKV-k számára. Az Informatica partnerséget Magyarországon az Areus Infokommunikációs Zrt-vel alakított ki. A fenti szállítók mellett említésre méltó a Google Open Refine és a Stanford DataWrangler célalkalmazása, amelyek ad-hoc adatprofilozási és tisztítási feladatokra nyújtanak hatékony megoldást. Figyelemre méltó az Open Refine adat kiegészítésre (Freebase API-jára építve) és a szöveges adatok tisztítására felhasználható képessége. A DataWrangler a feldolgozás hatékonyságában erős: több ezer dokumentumot is képes kezelni egyszerre. Széleskörű használhatóságuknak egyik legnagyobb akadálya, hogy egyik termék sem tartalmaz adatbázis adaptereket, kizárólag félig-strukturált állományok segítségével képesek az adatokat fogadni és nyújtani. Hasonló funkcionalitással bír a Karma adatintegrációs eszköz[web16]. A Wrangler részletes bemutatását Kandel et al.[25], a Refine funkcionalitását Huynh[web17] foglalja össze, a két alkalmazást pedig Larsson[26] hasonlítja össze, erősségeik és korlátaik bemutatásával. 5.4 A szabad felhasználású szoftverek értékelése A Gartner által támasztott kritériumok garanciát jelentenek arra, hogy az értékelésébe bekerült szállítók a széleskörű funkcionalitás megvalósítása mellett megfelelő iparági tapasztalattal és stabil pénzügyi háttérrel rendelkeznek. A megbízható háttérre és az elérhetőségére alapvető kritériumként tekintve a hazai KKV-k esetében is ezek a szállítók bizonyulnak relevánsak. A Gartner által értékelt vendorok közül két szállító kínál ingyenes felhasználású, két szállító pedig a forráskódot elérhetővé téve opensource terméket. Termék
Verzió
Licensz
Szállító
Alapítva
Data Quality
v5.4.0
open-source
Talend
2005
DataCleaner
3.5.7
open-source
Human Inference 1986 (Pentaho) (2004)
DQ Analyzer
v8
ingyenes felhasználás
Ataccama
2007
PowerCenter Personal Edition
v9.5.1
ingyenes felhasználás
Informatica
1993
5.2 táblázat - A hazai KKV-k számára releváns szabad felhasználású termékek Az Informatica PowerCenter terméke ETL eszközként pozícionált, de adatprofilozási képessége miatt bemutatásra kerül, így az iparág vezető vállalata is képviselt az értékelésben. A releváns szabad felhasználású alkalmazások funkcionális, technikai és támogatási szempontok szerint kerülnek értékelésre. A funkcionális értékelés alapját az 5.1 pontban
55
felvázolt követelményspecifikáció adja. A funkcionalitás értékelésének dimenzióit kibővíti a tervezési környezet és az újrafelhasználhatóság. Az elemzés során nem hiányozható képességet az adatprofilozás jelent. A részletes értékelést a F. Függelék tartalmazza. Dimenzió
Data Quality
adatprofilozás
DataCleaner
DQ Analyzer
PowerCenter
+++
++
++
+
adattisztítás
-
+
-
+
adatminőség menedzsment
-
++
-
-
grafikus környezet
+
++
+
++
++
+++
++
+++
újrafelhasználhatóság
5.3 táblázat - A funkcionalitás értékelése A vizsgált alkalmazások teljesítik az adatprofilozás támogatásának alapvető kritériumait: az adatbázisok strukturális elemzését és az attribútum szintű analízist (leíró statisztikák, töltöttség- és egyediség-elemzés, regurális kifejezésekre alapuló szintaxiselemzés). Az üzleti szabályokkal történő validációt mindegyik megoldás lehetővé teszi, ugyanakkor az előre definiált minták valamint az értékek referenciaadatokkal való összevetését csak a két open-source eszköz támogatja. A PowerCenter az átlag alatt teljesít, de ez nem meglepő, hiszen az alkalmazás elsődleges célja az ETL folyamatok támogatása. Az transzformációs folyamatok során az attribútum-elemzés gyors eljárásainak felhasználása az alapvető elvárás. Az adatprofilozási funkciók legszélesebb felhasználhatóságát és az eljárások paraméterezhetőséget a Talend Data Quality megoldása nyújtja. A funkciókban gazdag termék egyedüliként biztosítja az alapszintű duplikációdetektálást, a kiugró értékek felderítését és a potenciális funkcionális függőségek feltárását. Az alkalmazások az adattisztítás támogatása terén már nem teljesítenek az elvárásoknak megfelelően. Adat-átalakítási funkciókat a DataCleaner és a PowerCenter nyújt, a transzformációs lépések tervezésének és az előre definiált transzformációk széles tárházának elérhetővé tételével. Kifejezetten adattisztítási funkciókkal, az adatszótár alapú tisztítás és a karakterláncok manipulálásának lehetőségével csak a DataCleaner szolgál. A magasabb szintű adattisztítási eljárásokat - különösen a deduplikációt és a referencia alapú tisztítást - már kereskedelmi alapon kínálják a szállítók, interneten elérhető szolgáltatás vagy önálló termék formájában. Az adatminőség menedzselését támogató képességeket egyedül a DataCleaner biztosít az ingyenesen telepíthető Monitor szerver webszolgáltatásaira támaszkodva. A böngészőn keresztül elérhető megoldás lehetőséget ad az adatminőség metrikák
56
definiálására, küszöbértékeknek való alakulásának historikus prezentálására.
megfelelés
áttekintésére
és
a
minőség
Az üzleti metaadatok kezelését, valamint a törzs- és referenciaadatok menedzselését egyik értékelt alkalmazás sem biztosítja. Meg kell jegyezni azonban, hogy a Talend termékportfóliójában szintén open-source licensz mellet megtalálható törzsadatmenedzsment specifikus szoftver. A grafikus felhasználói környezet minden termék esetében elérhetővé teszi az elemzések eredményének grafikonokon történő megjelenítését és a DataQuality kivételével a munkafolyamatok tervezésének grafikus támogatását. Az adatmonitorozási funkcióhoz illeszkedve a DataCleaner adatminőség dashboard megjelenítést is kínál. A Talend DataQuality rugalmas szolgáltatásainak paraméterezési igénye mellett a munkafolyamatok grafikus tervezési támogatása hiányzik, ezért a konfigurációs környezet nehézkes lehet az adatprofilozás terén még járatlan felhasználók számára. A többi termék lehetővé teszi a néhány gombnyomással elérhető automatikus profilozást, amelynek köszönhetően az alkalmazással először találkozó felhasználók is eligazodnak az alapvető lehetőségek terén. Az újrafelhasználhatóság tekintetében az elvárásokat teljesítik az alkalmazások: az adatszabályok és a munkafolyamatok elmenthetők és tárolhatók. A Talend Data Quality hiányossága az adatprofilok eredménye mentésének, illetve exportálásának mellőzése. A funkcionalitás mellett további értékelési szempontrendszert a technikai ismérvek jelentenek. A technikai szempontok között kiemelt szerepet játszik az adatforrásokhoz való kapcsolódási képesség sokrétűsége és a szoftverek integrálhatósága az adatvagyon gazdálkodási funkciókat támogató szoftverkörnyezetbe. A támogatottság értékelése a licenszpolitika, az elérhető támogatások köre és a szállító termékportfóliójának vizsgálatára alapul. Az utóbbi szempont arra mutat rá, hogy amennyiben a vállalkozásnak a folyamatait kísérő szoftvertámogatás iránti elvárása bővül, akkor milyen lehetősége van igényeit az adott szállító termékportfólióján belül kielégíteni, akár ingyenes, akár kereskedelmi változatban. Dimenzió
Data Quality
DataCleaner
DQ Analyzer
PowerCenter
kapcsolódás
+++
+++
++
++
platform
+++
+++
+
++
++
+++
-
++
támogatás
+++
+++
+
+++
termékportfólió
+++
+++
+
++
integrálhatóság
5.4 táblázat - A technikai és támogatási szempontok értékelése
57
Az adatminőség alkalmazásokkal szemben támasztott alapvető követelmény az adatforrásokhoz való kapcsolódás széles tárháza. A kapcsolódási képesség terén a vizsgált termékek jól teljesítenek lévén, hogy a szabványos JDBC/ODBC adatbázis csatolók felhasználásával a legtöbb adatforrás, köztük az Excel fájlok is elérhetőek. A PowerCenter a legnagyobb adatbázis-szállítók (Microsoft, Oracle, IBM) termékeinek elérhetőségét natív adapterekkel támogatja és webes (közösségi) adatforrások is hozzáférhetők. A kapcsolódási képesség minősítése az alkalmazások alapértelmezésben elérhető adatbázisok körére és a big data támogatásra alapult. A DataCleaner egyedüliként kínálja big data technológiák (CouchDB, MongoDB) felhasználását, míg a Talend DataQuality az elosztott adatbázisokhoz (Hadoop) nyújt hozzáférést. A Talend termékei között önálló open-source big data technológiákra támaszkodó alkalmazás is szerepel. Az alkalmazások platformjának vizsgált szempontjait a rendszerkövetelmények és a fejlesztési környezet adja. A Java környezetben fejlesztett open-source alkalmazások minden elterjedt operációs rendszer alatt futtathatók. A DQAnalyzer Windows környezetet igényel. A szerver-kliens architektúrájú PowerCenter kliens alkalmazása csak Windows rendszer alatt használható, de a szerver Linux környezetben is telepíthető. A szoftverek tipikusan ajánlott memóriakövetelménye 4 GB RAM. Az open source eszközök működési sajátossága, hogy a DataCleaner XML konfigurációs állományok interpretálására támaszkodik, a Data Quality pedig a felhasználó által definiált eljárásokat Java (ill. PERL) kódra transzformálja és fordítja le. A Data Quality komponensei így Java környezetben más alkalmazások által is közvetlenül igénybe vehetőek (könnyen telepíthetők és integrálhatók). Az alkalmazások szoftverkörnyezetbe integrálhatósága tekintetében a DQAnalyzer semmilyen elérhetőséget nem biztosít. A többi alkalmazás parancssori (command line) interfészt és API-t is nyújt szolgáltatásai elérhetősége érdekében. A DataCleaner és a PowerCenter webszolgáltatásai révén SOA környezetbe is könnyen implementálható. Az open-source eszközök esetében a forráskód elérhetősége kimagasló előnyt jelent. A forráskód felhasználásával rugalmasan a vállalkozásra szabhatók az alkalmazások, saját kiegészítők és interfészek fejleszthetők. A szolgáltatás orientált architektúra támogatása vonatkozásában meg kell említeni, hogy a Talend termékpalettája önálló Enterprise Service Bus (ESB) alkalmazást is tartalmaz. A támogatás tekintetében minden szállító termékének használatba vételét tutorialok, oktató videók, az esetleges problémák megoldását pedig community fórumok segítik. A DQAnalyzer kivételével minden szállító alapos fejlesztői és felhasználói dokumentációt biztosít. Minden termékhez vásárolható kereskedelmi alapú támogatás is. Mind az opensource szállítók, mind az Informatica rendelkezik magyarországi partnerrel, így a támogatás közvetlen elérhetősége a hazai vállalkozások számára is biztosított.
58
A szállítók termékeinek kereskedelmi változatait tekintve, elsősorban a Talend Data Quality kereskedelmi változatának megvásárlása eredményez markáns bővülést a funkcionalitás terén. Az alkalmazás tovább szélesíti az open-source változat adatprofilozási képességeit és fejlett adattisztítási valamint adatmonitorozási lehetőségeket is biztosít. A DataCleaner szolgáltatási díj ellenében igénybe vehető többletszolgáltatásait az elosztott adatbázisok elérése és a fejlett adattisztítási lehetőségek képezik. A szállítók termékportfóliója sokrétűségének vizsgálata választ ad arra, hogy ha egy vállalkozás a választott adatminőség eszköz sikeres bevezetést követően szélesíteni kívánja az adatvagyon menedzselésének szoftveres támogatását, mennyire támaszkodhat a már használt eszköz szállítójának egyéb termékeire. Az Ataccama alkalmazásaival kizárólag az adatminőségre fókuszál. Kereskedelmi változatban kínál adattisztítási, adatminőség és törzsadat-menedzsment termékeket. Az Informatica professzionális adatintegrációs eszköze mellett szintén adattisztítás és adatminőség menedzsment alkalmazást, továbbá big data támogató platformot értékesít. Az Informatica licensz és szolgáltatási díjai azonban az iparági vezető szerepének megfelelőek. Az open-source szállítók szignifikáns előnye a teljes portfóliójuk tekintetében ingyenesen kínált adatvagyon gazdálkodási eszköztár. A DataCleaner alkalmazást integráló Pentaho az elemzési felhasználásra összpontosít. Portfóliójában kínált adatintegrációs, OLAP és adatbányász (Weka) alkalmazásait big data technológiákkal egészíti ki. A Talend amellett, hogy nyílt forráskódú alkalmazásaival széleskörűen támogatja az adatintegrációs és adatminőség folyamatokat, törzsadat-menedzsment és alkalmazásintegrációs (ESB) platformot is kínál. A szállító közvetetten az üzleti intelligencia célú felhasználást is támogatja. Együttműködésben szintén open-source megoldásokat kínáló szállítókkal, a Talend OpenStudio több OLAP alkalmazásba is integrált (SpagoBI, Jaspersoft). 5.5 A javasolt alkalmazás A vizsgált alkalmazások a tradicionális adatprofilozás alapvető követelményeinek megfelelnek, azonban markáns különbségek adódnak az egyéb vizsgálati szempontok terén. Az Ataccama és az Informatica termékei funkcionalitásuk tekintetében alul maradnak az open-source szállítók megoldásaival szemben. Emellett jelentős korlátozást jelent a Windows operációs rendszer orientáltság, amely a használhatóság akadályát jelenti a Linux alapú környezetet preferáló KKV-k esetében. További hátrányként jelentkezik a termékportfóliójuk egyéb elemeinek kizárólag kereskedelmi alapon történő kínálata.
59
Az open-source szállítók ezzel szemben széles kínálatát biztosítják az adatvagyon gazdálkodási funkciókat támogató nyílt forráskódú megoldásoknak. Lehetővé teszik az alkalmazásaikat felhasználó vállalkozások számára, hogy az üzleti folyamatok szoftvertámogatását azonos platformon, konzisztens felhasználói környezetben terjeszthessék ki. Emellett széleskörű támogatást biztosítanak alkalmazásaik vállalati szoftverkörnyezetbe való integrálására is. (Ezzel szemben Ataccama DQAnalyzer erre egyáltalán nem biztosít lehetőséget.) Mindkét nyílt forráskódú termék felhasználóbarát, részletesen dokumentált és erős közösségi támogatás áll mögötte. Magyarországi partnereik révén igény esetén közvetlen konzultációra is lehetőség adódik. A Talend Data Quality terméke kimagaslik a magas szintű adatprofilozási funkciók tekintetében, azonban az alkalmazás megköveteli az adatprofilozási feladatok pontos definiálását. A részletes paraméterezési környezete miatt nehézkes a feladatok konfigurálása, de a környezet megszokásának kezdeti nehézségeit követően rendkívül rugalmas felhasználást garantál. A DataCleaner ezzel szemben automatikusan konfigurált elemzési folyamataival a nem technológia orientált szakértők számára már az alkalmazás megismerése során könnyű és gyors felhasználást tesz lehetővé. A DataCleaner az egyszerű használatot kombinálja az adatprofilozási funkciók széles tárházával. Az elemzési munkák definiálását grafikus workflow eszköz támogatja, a nagymennyiségű rekordok feldolgozása pedig kellően gyors. A Talend termékével szemben képes szűrni és transzformálni a kiválasztott adatokat, ezzel adattisztítási szolgáltatásokat is nyújt. A vizsgált eszközök közül egyedüliként képes az adatminőség monitorozásának támogatására. Könnyű felhasználhatósága, az adattisztítási és az adatminőség-menedzsment folyamatokat támogató képességek a DataCleaner alkalmazást teszik az adatminőség fejlesztése iránt elkötelezett KKV-k számára a legmegfelelőbb szabad felhasználású eszközzé.
6. RENDSZERTERV Amennyiben a vállalkozás úgy ítéli meg, hogy az általa támasztott követelmények teljesítésére a szabad felhasználású rendszerek nem alkalmasak, a bővebb funkcionalitású eszköz bevezetése pedig az anyagi korlátok miatt nem engedhető meg, felmerül az igényekhez jól illeszkedő rendszer saját fejlesztés keretében való kialakítása. A fejleszteni kívánt rendszer tervezésének kiinduló pontjaként megvizsgálandó, hogy milyen mértékben lehet a nyílt forráskódú rendszerek komponenseire, szolgáltatásira támaszkodni. Amennyiben az akár forráskód, akár API szinten elérhető komponensek javarészt megfelelnek a vállalkozás igényeinek, célszerű a testreszabott rendszert ezekre alapozva, kiegészítő komponensek fejlesztésével kialakítani.
60
A fejlesztés támogatását megcélozva a fejezet további részében bemutatásra kerül egy adatminőség keretrendszer magas szintű logikai terve. A terv a rendszert alkotó alrendszerek és kapcsolataik azonosítására és szolgáltatásaik absztrakt specifikálására összpontosít, így kiindulópontként szolgálhat egy konkrét vállalkozás egyedi igényeit teljesítő rendszer megtervezése során. A bemutatásra kerülő rendszerterv a finomtervezést és az implementációt meghagyja az adott vállalkozás igényeinek megfelelő konkrét megvalósításnak, ennek megfelelően platform és technológia független, koncepcionális modellt nyújt. Elsősorban egy evolúciós szoftverfejlesztés kezdeti prototípusának elkészítéséhez jelenthet támogatást. A prototípus alkalmas arra, hogy a vállalkozás megítélje az alkalmazás hasznosságát és illeszkedését a konkrét elvárásokhoz. A követelmények és a funkcionalitás egymáshoz hangolásával a terv a további iterációk során pontosítható. 6.1 A rendszer magas szintű logikai architektúrája A rendszerterv az 5.1 fejezetben bemutatott, a használati szempontokat hangsúlyozó követelmény-leírásból kiindulva bontja modulokra a rendszert. A struktúra arra kíván választ adni, hogy mik a rendszert alkotó komponensek feladatai, szolgáltatásai és milyen kapcsolatban vannak egymással annak érdekében, hogy teljesüljenek a használati elvárások.
6.1 ábra - A rendszer logikai architektúrája
61
A rendszer logikai felépítése a leggyakrabban alkalmazott háromrétegű architektúrát követi, amelyben a megjelenítés, az adatkezelés és az üzleti logika különálló egységet alkot. Az egyes rétegek belső szerkezetének és működésének módosítása nincs hatással más rétegekre, ezért egymástól függetlenül fejleszthetők illetve lecserélhetők. A prezentációs réteg interfészt nyújt az emberi felhasználók és a rendszer szolgáltatásait igénybevevő társrendszerek felé. Az emberi felhasználókkal való kapcsolattartás során fontos szerepet játszik a munkafolyamatok tervezésének és az adatprofilozási eredmények szemléltetésének grafikus támogatása. A gépi felhasználók számára készített interfészek halmazát az API felületek testesítik meg. Az üzleti logika réteg határozza meg a rendszer viselkedését, a rendszer adatprofilozás, adattisztítás és a minőség monitorozásához kapcsolódó alapvető funkciók megvalósításával. Ebben a rétegben valósul meg a prezentációs rétegből érkező parancsok értelmezése, a kijelölt adatok igényének jelzése az adatelérési réteg felé, majd a megfelelő számítások elvégzése és a kimeneti adatok előállítása. Az adatelérési réteg elfedését egy virtuális adatkezelési komponens támogatja. Az adatelérési réteg biztosítja a rendszer működéséhez szükséges adatok tartós tárolását (repository) és a különböző külső adatforrások elérését. Az alrendszer tartalmazza a heterogén adatforrásokkal való kapcsolattartáshoz szükséges specifikus adaptereket és biztosítja az üzleti logika számára az eltérő adatforrások szabványos elérését. Elfedi a különböző adatforrások speciális kezelését, így garantálható az, hogy az üzleti logika eljárásai adatforrástól függetlenül legyenek alkalmazhatók. A gyakorlatban itt valósul meg a strukturált adatokat érintő adatdefiníciós és adatmanipulációs utasítások létrehozása és továbbítása az adatbázis-kezelőrendszerek felé. Az újrafelhasználhatóság érdekében az adatelérési réteg gondoskodik az adatszabályok, transzformációs lépések és rendszer működését biztosító belső adatok tárolásáról. A fizikai megvalósítást tekintve az architektúra lehetőséget biztosít a grafikus felhasználói interfész (GUI) web alapú vékonykliens (akár mobilkliens), illetve a hagyományos desktop alkalmazás keretében vastagkliens megvalósításra is. A vastagkliens implementáció mellett szól, hogy az adatprofilozási és az adattisztítással járó transzformációs lépések rendkívül tár- és számításigényesek lehetnek, ezért az üzleti logika eljárásaival nem érdemes a szervert terhelni. A vastag kliens megvalósítás további előnye, hogy támogatja a gazdag grafikus felhasználói felület kialakítását, a helyi erőforrások elérését is. A vékonykliens alapú implementáció elsősorban az adatminőség monitorozása terén releváns. A web alapú kommunikációra és böngészőre épülő platform-független kliens telepítést nem igényel és helytől függetlenül, egyszerre több felhasználó számára is lehetővé teszi az adatminőség alakulásának nyomon követését.
62
A vastagkliens megoldás esetén a szerver oldali funkciók elsősorban az adminisztráció és a rendszer belső adatainak (adatszabályok, munkafolyamatok, transzformációs lépések) tárolása terén jelent előnyt. Amellett, hogy a számítási teljesítmény igény nagy része a vastagkliensre koncentrálódik, ez a típusú megvalósítás lehetővé teszi az újrafelhasználható komponensek megosztását. További előny, hogy a rendelkezésre állás tekintetében nem jelent kritikus tényezőt a szerver elérhetőségének hiánya. Tekintettel arra, hogy a prezentációs réteg megvalósítása igénytől függő, lecserélhető illetve mind a prezentációt, mind az adatok elérését a fejlesztői környezetek számos előre elkészített komponenssel támogatják (pl. .NET környezetben a System.Data névtér), a továbbiakban a rendszer magját adó üzleti logika réteg kerül részletes bemutatásra. 6.2 Szerkezeti modell Az üzleti logika határát prezentációs réteg felé és az adatelérési réteg által nyújtott interfészek adják. A réteg komponensei az üzleti logikát koncepciós szinten bontják logikai egységekre, elkülönítve ezzel az egyes funkcionális területeket és azok kapcsolatait. A komponensek a gyorsabb munkavégzés érdekében lehetőséget biztosítanak a részletes tervezés és a fejlesztés párhuzamosítására, ezen túl bármikor kicserélhetők egy azonos interfésszel rendelkező másik komponensre.
6.2 ábra - Az üzleti logika réteg struktúrája
63
Az üzleti logika réteg a 6.2 ábrán szereplő főbb komponensekre bontható. Minden komponens az alacsonyabb logikai szinten lévő alrendszerek szolgáltatásaira támaszkodik, miközben valamely funkcionalitás terén önálló hatáskörrel és felelősséggel rendelkezik. Az üzleti logika alapvető eleme az adatszinkronizáló komponens, amely közvetlenül felelős az adatelérési réteggel való kapcsolattartásért. Ennek keretében feladata, hogy az adatelérési réteg interfészein keresztül betöltse a virtuális adatrétegbe az adatforrások tartalmát, illetve hozzáférést biztosítson a szabály és modellbázis perzisztens elemeihez. A kommunikáció az adatelérési réteggel praktikusan XML állományokon keresztül valósulhat meg. (.NET környezet esetén ezek az állományok az XML-ek kezelésében hatékony DataSet objektumokban tárolhatók). A rendszer a Repository tervezési minta segítségével biztosítja a működés rugalmasságát és az újrafelhasználhatóságot. Virtualizálja a perzisztens elemeket, azaz maguk az adatok és a működés során felhasználható validációs szabályok, transzformációs lépések üzleti logika szerinti entitásait, függetlenül attól, hogy milyen formátumban kerülnek tárolásra (pl.: adatbázis, XML). Minden egyes tárolási mód implementálása az adatelérési réteg feladta, amely elvégzi a köztes átalakításokat és perzisztálásokat az üzleti logika réteg osztálypéldányai és a konkrét fizikai állományok között. Ezzel az üzleti logika réteg számára elfedhető a konkrét adattárolás implementációja, a réteg számára konzisztens minden adat tárolása, függetlenül annak típusától, felhasználásától. Végső soron biztosítható, hogy az üzleti logika modell implementációja egészében bármikor lecserélhető, vagy módosítható legyen. A 6.3 ábrán szereplő osztályhierarchia az adatforrások szerkezetének és adatainak virtuális leképezését szemlélteti, a vizsgált működés szempontjából kiemelt attribútumok és metódusok feltüntetésével.
64
6.3 ábra - A virtuális adatréteg struktúrája
Az adatforrások szerkezetének leképezése az adatelérési rétegből származó technikai metaadatokra támaszkodik. A leképezés során számos elem ős típusa absztrakt osztály, amelyek leszármazottai a konkrét szerkezeti elem típusától függően kerülnek létrehozásra, praktikusan az Builder tervezési mintára támaszkodva. A valós és virtuális adatforrások összekapcsolása kizárólag a Singleton tervezési mintát megvalósító AdatSzinkronizáló példány szolgáltatásainak igénybevételével érhető el. A fizikai adatforrások módosítása így egyetlen objektum hatásköre és felelőssége, szavatolva ezzel a rendszer megbízhatóságát a fizikai adatok kezelésének terén. Az AdatSzinkronizáló objektum eljárásokat biztosít a virtuális adatforrások regisztrálásához, a regisztrált adatforrások módosításához, törléséhez és eléréshez a magasabb szinten lévő komponensek számára. Bármely komponens kérheti egy adatforrás objektum szinkronizálását, de ezt csak akkor végzi el az AdatSzinkronizáló, ha az adatforrás szerepel a regisztrált objektumok között. Amennyiben a feltétel teljesül, a szinkronizálás az adatelérési réteg privát attribútumként tárolt objektuma szolgáltatásain keresztül megvalósul.
65
Az adatszinkronizáló szolgáltatásait közvetlenül a virtuális adatkezelő és a szabály és modellbázis kezelő komponens veszi igénybe. Az adatszinkronizáló szolgáltatásai: -
virtuális adatforrás regisztrálása virtuális adatforrás létrehozása virtuális adatforrás módosítása virtuális adatforrás törlése virtuális adatforrás szinkronizálása
A virtuális adatkezelő a magasabb szinten lévő adatprofilozás és adattisztítás konfiguráló komponensek felé, az adatszinkronizálótól kikért virtuális adatforrások adattartalmának biztosításáért és igény esetén módosításáért felelős, így lényegében egy virtuális adatbáziskezelő-rendszerként funkcionál. Az üzleti metaadatok, törzs- és referenciaadatokat tároló segédadatbázisok kezelése a virtuális adatkezeléssel konzisztens módon végezhető el. A virtuális adatkezelő szolgáltatásai: -
adatforrás hozzáadása adatforrás módosítása adatforrás törlése adatlekérdezés adatmódosítás adatmentés adatlétrehozás adattörlés
A szabály- és modellbázis kezelő a rendszer újrafelhasználhatóságának kulcseleme. Feladata, hogy az adatszinkronizáló szolgáltatásaira támaszkodva az üzleti logika működésének alapját adó elemeket (validációs szabályok, minták, munkafolyamatokat, transzformációs lépések, jogosultságok stb.) leíró adatokat betöltse, majd a betöltött metaadatok alapján átalakítsa azokat olyan formára, amelyet az üzleti funkcionalitást biztosító komponensek közvetlenül értelmezni tudnak. Szintén ez a komponens felelős a perzisztencia érdekében a magasabb szinten létrehozott elemek metaadatokká transzformálása iránt, amelyek az adatszinkronizáló segítségével fizikai állományként tárolhatók. A szabály és modellbázis kezelő szolgáltatásai: -
szabály, minta, eljárás, munkafolyamat betöltése szabály, minta, eljárás, munkafolyamat törlése szabály, minta, eljárás, munkafolyamat mentése
66
Az üzleti funkcionalitást közvetlenül megvalósító komponenseket az adatprofilozás és az adattisztítás konfiguráló alkotja. Ezek szolgáltatásai már önálló adatminőség funkcionalitással bírnak. Mindkét komponens illeszkedése a logikai modellbe azonos: segítségükkel a virtuális adatkezelő alrendszerben található adatokhoz a pontos definiálást követően elemi műveletek rendelhetők és hajthatók végre. Működésük során támaszkodnak a szabály- és modellbázis kezelőn keresztül elérhető újrafelhasználható elemekre, de akár teljesen új operációk konfigurálását is lehetővé teszik. Különbség a használt eljárásokat tekintve adódik. Az adatprofilozás konfigurátor írási műveleteket nem végez a virtuális adatokon, így adatszinkronizációra sincs szükség azok tekintetében. Ezzel szemben az adattisztító konfigurátor adattranszformációs lépéseinek jóváhagyását követően adatszinkronizáció is szükséges a tisztított adatok eredeti adatforrásba való átültetése érdekében. Az adatprofilozás- és adattisztítás konfigurátor szolgáltatásai: -
szabály, minta, eljárás létrehozása szabály, minta, eljárás módosítása szabály, minta, eljárás törlése szabály, minta, eljárás betöltése szabály, minta, eljárás mentése eljárás végrehajtása
A munkafolyamat kezelő komponens az adatprofilozás- és adattisztítás konfigurátor elemi műveleteire támaszkodik. Többlet funkcionalitást azzal biztosít, hogy az elemi profilozási és tisztítási operációk munkafolyamatba szervezésének lehetőségét szolgáltatja. A munkafolyamatok a szabály és modellkezelő segítségével tárolhatók, illetve később betölthetők. Az alrendszer tartalmaz egy munkafolyamat felügyeletet biztosító komponenst, amely szekvenciális végrehajtás során minden végrehajtott lépés sikerességét nyugtázza és gondoskodik a következő lépés futtatása feltételeinek ellenőrzéséről. A munkafolyamat kezelő szolgáltatásai: -
munkafolyamat létrehozása lépés hozzáadása lépés törlése munkafolyamat végrehajtása munkafolyamat törlése munkafolyamat mentése
Az adatminőségmonitorozó az adatprofilozás szolgáltatásaira támaszkodva az adatszabályokhoz metrikák, referenciaértékek rendelhetők. A komponens biztosítja a monitorozási feladatok keretében definiált metrikák vizsgálatát, amelynek eredményéről riportadatokat generál.
67
Az adatminőség monitorozó szolgáltatásai: -
metrika definiálása adatszabályhoz metrika módosítása metrika törlése szabályok futtatása riport generálása riport mentése riport betöltése riport törlése
A legmagasabb szinten álló szolgáltatáskezelő komponens feladata, hogy az üzleti logika réteg szolgáltatásait egyedüli felelősség mellett közvetítse a prezentációs réteg felé, az alsóbb szintek szolgáltatásai csak rajta keresztül érhetőek el. Emellett biztosítja, hogy az alsóbb komponensek elemei komplex szolgáltatássá legyenek kombinálhatók, úgy hogy közben csak a szolgáltatáskezelő igényel módosítást (Facade tervezési minta). 6.3 Viselkedési modell A rendszer működés során az üzleti réteget alkotó komponensek szoros együttműködésben valósítják meg a prezentációs réteg felől érkező kérések kiszolgálását. A komponensek közötti együttműködések a szerkezeti modellben bemutatott interfészeken keresztül valósulnak meg. Az interakciókat függvényhívások testesítik meg, amelyek kombinálásával az 5.1 fejezetben felvázolt használati esetek kiszolgálhatók. A komponensek közötti együttműködésre egy átfogó példát nyújt az adatprofilozás, amely folyamat során a megvalósuló interakciókat a 6.4 ábrán szereplő szekvencia diagram szemlélteti.
6.4 ábra - Az adatprofilozás szekvencia diagramja
68
A példában a prezentációs réteg felől kérés érkezik a szolgáltatáskezelőhöz egy adatforrás adatainak megtekintése érdekében. A szolgáltatáskezelő az adatlekérdezési igényt közvetíti a virtuális adatkezelő komponens részére, ami gondoskodik az adatforrás szinkronizálásáról az adatelérési réteg szolgáltatására támaszkodva. A felhasználó az adatok megtekintése alapján egy adatszabály létrehozási igény juttat a szolgáltatáskezelő felületére. A szolgáltatáskezelő komponens a kérést továbbítja az adatprofilozás konfiguráló részére, aki létrehozza a felhasználó által definiált adatszabályt. A felhasználó ezt követően az adatszabály futtatására irányuló utasítást ad ki, amely a szolgáltatáskezelő közvetítésével eljut az adatprofilozás konfigurálóhoz. Az adatprofilozás konfiguráló az adatszabályt végrehajtja a virtuális adatkezelő bevonásával. A használati eset a felhasználó adatszabály mentési igényével folytatódik. A szolgáltatáskezelő értesíti az adatprofilozás konfigurálót, aki továbbítja az adatszabályt a szabály és modellbázis kezelő komponens részére a mentés érdekében. A komponens elvégzi az adatszabály transzformálását az adatszinkronizáló számára értelmezhető formátumra, majd továbbítja részére a mentési igény jelzésével. A használati eset az adatszinkronizáló műveletével zárul, amely során az adatelérési réteg bevonásával megvalósul az adatszabály perzisztens tárolása a későbbi újra felhasználhatóság érdekében.
69
ÖSSZEFOGLALÁS A dolgozat elkészítésével célom egy olyan, az elérhető hazai irodalmon túlmutató átfogó ajánlás megalkotása volt, amely az erős anyagi korlátok mellett működő, de az adatminőség iránt elkötelezetté váló hazai vállalkozások esetében hozzájárul az adatminőség-menedzsment gyakorlati megvalósításához és az ehhez szükséges technológia eszközök implementálásához. A kitűzött cél elérése érdekében a szükséges fogalmi keretet az üzleti működéssel való szoros kapcsolat hangsúlyozása mellett mutattam be és rávilágítottam azokra a folyamatokra, amelyek kialakítása feltétele a korszerű adatvagyon-gazdálkodás sikeres bevezetésének és működtetésének. A probléma kontextusának részletes bemutatása keretében rávilágítottam az adatokban bekövetkező hibatípusokra és ismertettem a hibák megelőzésének illetve javításának lehetséges technikáit, különös tekintettel az adatprofilozás és az adattisztítás módszertani kérdéseire. A hazai üzleti környezet sajátosságaira tekintettel összefoglaltam az adatminőség hazai vonatkozásait. A manuális módszereket automatizálhatóvá tevő célszoftverre vonatkozó javaslat megalapozása érdekében megfogalmaztam az eljárások hatékony támogatását szolgáló alkalmazással szemben támasztott követelményeket. Az adatminőség fejlesztését célzó folyamatok szoftvertámogatási lehetőségeinek vizsgálata keretében áttekintettem a kereskedelmi keretek között kínált szoftverek piacát, majd a felállított értékelési rendszer alapján összehasonlítottam a KKV-k számára releváns szabad felhasználású alternatívákat. A javaslatom alapján a KKV-k egy olyan nyílt forráskódú célszoftvert vezethetnek be, amely a nem technológia orientált felhasználók számára is könnyű használhatóságot kínál, emellett biztosítja az adatminőség-menedzsment folyamatok támogatását és igény esetén funkcionalitása rugalmasan bővíthető. Tekintettel egy adatminőség támogató rendszer saját fejlesztés keretében való kialakításának igényére, a fejlesztés támogatását megcélozva elkészítettem egy adatminőség keretrendszer magas szintű tervét. A terv a rendszert alkotó alrendszerek és kapcsolataik azonosítására és szolgáltatásaik absztrakt specifikálására összpontosít, így kiindulópontként szolgálhat egy konkrét vállalkozás egyedi igényeit teljesítő rendszer megtervezése során. A bemutatásra kerülő rendszerterv a finomtervezést és az implementációt meghagyja az adott vállalkozás igényeinek megfelelő konkrét megvalósításnak, ennek megfelelően platform és technológia független, koncepcionális modellt nyújt. Elsősorban egy evolúciós szoftverfejlesztés kezdeti prototípusának elkészítéséhez jelenthet támogatást.
70
SUMMARY Aim of this thesis is to make a comprehensive suggestion that goes beyond the available Hungarian professional literature and provides opportunity for the Hungarian enterprises, having financial constraints, committed to data quality to apply data quality management in practice and implement the required tools. In order to achieve the targeted goal highlighting its strong connection with the business I introduced the related conceptual framework and stressed processes that are necessary to the successful introduction and operation of modern data governance. In frame of the detailed description of the problem I highlighted the most common failures related to data and made suggestions on potential techniques of failure prevention and correction, emphasizing methodological issues of data profiling and data cleansing. Considering Hungarian business environment’s specificities I summarized the Hungarian aspects of data quality. In order to underpin my suggestions related to the object software that can make manual methods automated I summarized the requirements that the process supporting application has to match. In frame of the study on software supporting opportunities of processes, aiming for data quality improvement I reviewed the software market and using an evaluation system compared the open sources alternatives that can be relevant for Hungarian SMEs. According to my suggestion SMEs can apply open source object software that provides an easy-to-use approach for the non computer-oriented users too and supports data quality management processes. Furthermore its’ functionality can be extended flexible on demand. Considering the fact that there might be a need to set up an own developed data quality supporting system I created high-level design of a data quality framework. The high level design focus on the identification of the subsystems and of its relations as well as on the abstract specification of its services. Thus it can mean an initial starting point for enterprises to design their own system that can focus on the specific needs. The system design provides a technology and platform independent conceptual model as the lowlevel design and the implementation can be created according to the needs of the given enterprise. It can give support mainly for the creation of the initial prototype of an evolutionary software development.
71
IRODALOMJEGYZÉK Könyvek: [1] Chickán, A.: Vállalatgazdaságtan. Aula Kiadó, 2005 [2] Sántáné-Tóth, E. et al.: Döntéstámogató rendszerek. Panem Könyvkiadó, 2008 [3] Cserny, L.: Szervezeti döntéstámogatás. BKÁE Ph.D. program, 2000 [4] Juhász, S.: Vállalati információs rendszerek műszaki alapjai. Szak Kiadó, 2011 [5] Halassy, B.: Adatmodellezés. Nemzedékek Tudása Tankönyvkiadó, 2002 [6] Ullman, J. D., Widom, J.: Adatbázisrendszerek. Panem Kiadó, 2009 [7] Choo, C. W.: The Knowing Organization: How Organizations Use Information to Construct Meaning, Create Knowledge, and Make Decisions. Oxford University Press, 2006 [8] Fajszi B. et al.: Üzleti haszon az adatok mélyén. Alinea Kiadó, 2010 [9] Kimball R., Ross M.: The Data Warehouse Toolkit, John Wiley & Sons, Inc., 2002 [10] Futó, I. et al.: Mesterséges Intelligencia. Aula Kiadó, 1999 [11] Inmon W.H.: Building the Data Warehouse – 4th Edition. John Wiley & Sons, Inc., 2005 [12] Abonyi, J. et al.: Adatbányászat a hatékonyság eszköze. Computerbooks, 2006 [13] Tan P.N. et al.: Adatbányászat alapvetés. Panem Kiadó, 2012 Folyóiratok, tanulmányok: [14] Oliveira P. et al.: A Formal Definition of Data Quality Problems. MIT, 2005 [15] Kim W. et al.: A Taxonomy of Dirty Data. Data Mining and Knowledge Discovery. Vol. 7, 2003, pp. 81–99. [16] Babos, G.: Metaadatok strukturájának leírása és célirányos felhasználása üzleti integrált rendszerekben. BME Doktori Értekezés, 2008 [17] Loshin D.: Monitoring Data Quality Performance Using Data Quality Metrics. Informatica White Paper, 2006 [18] Naumann, F.: Data Profiling Revisited. Qatar Computing Research Instituta, Doha, 2013 [19] Hodge, V.J., Austin, J. A survey of outlier detection methodologies. Artificial Intelligence Review. Vol 22, 2004, pp. 85-126. [20] Hernandez M. A., Stolfo S. J.: The merge/purge problem for large databases. Department of Computer Science, Columbia University, 1995
72
[21] Elmagarmid A. K. et al.: Duplicate record detection: A survey. IEEE TKDE, Vol. 19, 2007, pp. 1–16. [22] Rahm E., Hong H. D..: Data Cleaning: Problems and Current Approaches. University of Leipzig, 2000 [23] Galhardas H. et al.: Declarative Data Cleaning: Language, Model and Algorithms Rapport de rechere INRIA, 2001 [24] Singh R., Singh K.: A Descriptive Classification of Causes of Data Quality Problems in Data Working. International Journal of Computer Science Issues, Vol. 7, 2010, pp. 41-50. [25] Kandel S. et al.: Wrangler: Interactive Visual Specification of Data Transformation Scripts. ACM Human Factors in Computing Systems (CHI), 2011 [26] Larsson P.: Evolution of Open Source Data Cleaning Tools: Open Refine and Data Wrangler. University of Washington, 2013 [27] Hellerstein J. M.: Quantitative Data Cleaning for Large Databases. EECS Computer Science Division, 2008 [28] Goasdué V. et al.: An Evaluation Framework For Data Quality Tools. MIT, AIDEDF Internetes források: Minden forrás utoljára megtekintve: 2013.12.11 [web1] Mosley, M.: Data Management Body of Knowledge Introduction & Project Status (http://www.dama.org/files/public/DI_DAMA_DMBOK_Guide_Presentation_2007.pdf ) [web2] Bodon F.: Adatbányászati (http://www.cs.bme.hu/~bodon/magyar/index.html)
algoritmusok
[web3] Az MTA Nyelvtudományi Intézete által anyakönyvi bejegyzésre alkalmasnak minősített férfi utónevek jegyzéke (http://www.nytud.hu/oszt/nyelvmuvelo/utonevek/osszesffi.pdf) [web4] Az MTA Nyelvtudományi Intézete által anyakönyvi bejegyzésre alkalmasnak minősített női utónevek jegyzéke (http://www.nytud.hu/oszt/nyelvmuvelo/utonevek/osszesnoi.pdf) [web5] A KEKKH által publikált 100 leggyakoribb családnév (http://www.nyilvantarto.hu/letoltes/statisztikak/kozerdeku_csaladnev2013.xls) [web6] 1952. évi IV. törvény a házasságról, a családról és a gyámságról (http://net.jogtar.hu/jr/gen/hjegy_doc.cgi?docid=95200004.TV)
73
[web7] 2006. évi V. törvény a cégnyilvánosságról, a bírósági cégeljárásról és a végelszámolásról (http://net.jogtar.hu/jr/gen/hjegy_doc.cgi?docid=A0600005.TV) [web8] Közigazgatási és Igazságügyi Minisztérium adatszolgáltatása a cégformákról (https://occsz.ecegjegyzek.hu/info/page/adm/adm_Help_ReadHelpFile?adm_file=hu/IMOnline/Utmuta tok/Cegformak.html ) [web9] Közigazgatási és Igazságügyi Minisztérium E-cégjegyzék szolgáltatása (http://www.e-cegjegyzek.hu/index.html) [web10] A Magyar Posta Zrt. irányítószám referenciaadatbázisa (http://www.posta.hu/static/internet/download/Iranyitoszam_Internet.XLS) [web11] Az illetékes állami adóhatóságot jelző illetékességi kódok (http://nav.gov.hu/nav/archiv/adoinfo/art/illetekes_m.html) [web12] Áfaalanyok egyszerű lekérdezése (http://nav.gov.hu/nav/adatbazisok/ADATBLEKER/afaalanyok/afaalanyok_egyszeru)] [web13] Gartner: Magic Quadrant for Data Quality Tools (http://www.gartner.com/technology/reprints.do?id=1-1LB9WX9&ct=131007&st=sb) [web14] (http://www.etltools.net/free-etl-tools.html) [web15] A Talend open-source termékportfóliója (http://www.talend.com/products/talend-open-studio) [web16] A Karma honlapja (http://www.isi.edu/integration/karma/) [web17] Huynh D..: Google Refine (http://davidhuynh.net/spaces/nicar2011/tutorial.pdf ) [web18] Fekete G.: Közhiteles címregiszter (http://prezi.com/1bs5fmkold78/kcr-kozhiteles-cimregiszter/) [web19] Sidló Cs.: Adattárház rendszerek, diplomamunka (http://scs.web.elte.hu/Work/DW/papers/sidlo_dipl.pdf) [web20] Wittek P.: A szövegbányászat gyakorlata és nehézségei (http://www.lib.pte.hu/csomag/FEEK/BA_kepzes/6felev/AzInformacobroker/SomfaiKri sztina.pdf)
74
FÜGGELÉK
75
A. Döntéselméleti áttekintés 1. A döntéshozatal A döntés valamely probléma megoldására irányuló cselekvés. A döntéshozatal a cselekvési alternatívák11 közötti keresés és választás folyamata bizonyos cél vagy célok elérése érdekében12. A folyamat aktív szereplője a döntéshozó ember13, aki észlelvén környezetének egyes problémáit azokat meg akarja oldani a célok elérése érdekében. A probléma az adott pillanatban észlelt állapot (nem ugyanaz, mint a tényleges!) megváltoztatását célzó igény, egy kívánatosnak minősített állapot elérésére. A problémamegoldás során egy döntés mindig a valós világról megismert jellemzők alapján és a valós világról alkotott modellek felhasználásával, a modellben megjelenő cselekvési változatok, döntési alternatívák alapján történik. A modell az adott tárgyterület problémáinak oly mértékű leegyszerűsítése, amit a döntéshozó még képes átlátni: a valóság egy egyszerűsített (lényegtelen részek figyelmen kívül hagyása), általánosított (lényeges dologra koncentrálás) reprezentációja. Optimális döntés esetén a döntéshozó teljesen informált és céljait rangsorolni képes, tehát: -
ismeri az összes lehetséges cselekvési alternatívát, biztosan tudja, hogy az egyes cselekvési változatoknak mi lesz az eredménye, biztosan meg tudja adni az eredmények preferencia sorrendjét
A valóságos döntések esetén a döntéshozó teljes informáltsága a valós világról nem teljesül. Herbert Simon igazolta, hogy az ember általában képtelen egy döntési szituáció körülményeit objektív módon látni a figyelem, megértés és a kommunikáció korlátozott volta miatt (korlátozott racionalitás elve). A korlátozott racionalitás miatt a döntéshozó egyszerűsíti a döntési folyamatot úgy, hogy nem egy optimális döntésre törekszik, hanem megelégszik egy kielégítő megoldással. A megoldáshoz vezető döntési folyamat négy fő lépésből áll.
11
Az alternatívák együttese a döntési tér. Az üzleti döntések során kiemelt jelentőséget játszik a szűkősség és a helyettesítés elve, amelyek szerint az erőforrások elérhetősége korlátozott, szűkösen állnak rendelkezésre, de a jószágok mindegyike helyettesíthető egy másikkal. 13 A dolgozatban a döntéshozó alatt nem csak az alsó-, közép- és felsővezetőket értem, hanem a szervezet minden dolgozóját. 12
76
A problémamegoldás folyamatciklusa Sokan a diagnózist tartják a folyamat legfontosabb tevékenységének[3]. A probléma meghatározása során a megváltoztatandó állapot jellemzői alapján strukturálásra kerül a felismert probléma és ha lehetséges megtörténik a formalizálása és osztályozása. 2. A problémák osztályozása Az egyik legáltalánosabb és legrégebben használt problémareprezentációs módszer az állapottér reprezentáció. Az állapottér reprezentáció14 négy komponensre bontja a feladatot, amelyek <állapotok, műveletek, kezdőállapot(ok), célállapot(ok)> Az állapotok a probléma adatszerkezeteinek összes lehetséges értékeit tartalmazzák (kezdő, cél és közbülső). Tekintettel arra, hogy az állapotok megfelelnek a probléma adatszerkezetének, a feladatot leíró adatok értékeket hordoznak. Egy adott pillanatban az adatok által felvett értékek együttese, pontosabban azok rendezett sorozata jellemzi a feladat egy állapotát. Az összes különböző ilyen érték-együttes alkotja a feladat állapotterét. Formálisan[10]: Ha a feladatban szereplő adatok rendre a értékeiket, akkor az állapotér definiálása: =
×
×…×
,
,…,
halmazokból vehetik fel
Descartes szorzat.
14
Az állapottér grafikus ábrázolására az irányított gráf nyújt lehetőséget: a csúcsok az egyes állapotokat, az élek pedig a műveleteket reprezentálják.
77
Ennek elemei az egyes állapotok, a 〈 , , … , ahol egy -beli adatérték. ( ∈ ).
〉 alakú rendezett n-esek (vektorok),
A T állapottéren értelmezett műveletek az állapottér feletti operátorok, egy állapothoz egy állapotot rendelnek. Reprezentálják a cselekvéseket, amelyekkel el lehet jutni egyik állapotból a másik állapotba. A kezdő- és célállapotok az állapottér egyes kitüntetett állapotai (részhalmaza). A kezdőállapot a jelenleg észlelt állapot (probléma állapot), míg a megadott kritériumoknak eleget tevő célállapot az elérni kívánt állapot. A megoldás egy olyan műveletsorozat, amely adott kezdőállapotból elvezet egy megfelelő célállapotba.15 Az állapottér reprezentációt felhasználva a kitűzött cél(ok) és a műveletek ismertsége alapján a problémák az alábbiak alapján osztályozhatók. A jól strukturált problémák esetén teljes mértékben ismertek mind a célok, mind a műveletek (tipikusan ismétlődő, jól algoritmizálható problémák). A probléma megoldása determinisztikus pályát jelent, tudható, hogy mely tényezőket kell vizsgálni, ismertek a feldolgozási algoritmusok és az elért eredmény felhasználása. A valóságban ilyen determinisztikus esetek szinte sohasem fordulnak elő. A feltételek jó közelítéssel a vállalati működés rutin (operatív) folyamatainak lebonyolítása során teljesülnek (pl. anyagbeszerzési folyamatok, kinnlévőségek kezelése). A félig-strukturált problémák előfordulása során a kitűzött célok teljesen, a műveletek viszont csak részben ismertek. (pl. termelésütemezés) A nem strukturált problémák megoldása nem programozható, mert sem a kitűzhető állapotok, sem a műveletek nem ismertek eléggé16. A döntési folyamat egyik lépése sem strukturált. (pl: hatékony működés tervezése, K+F, optimális piaci helyzet elérése) A vállalkozások életében a felsővezetői döntések kivétel nélkül rosszul strukturált problémákra vonatkoznak és a középvezetés is jórészt ilyenekkel találkozik. A kitűzött cél teljesen, de a műveletek csak részben ismertek: a környezeti tényezők különösképpen a versenytársak reakciói - eltérítik a cselekvések eredményeként bekövetkező állapotot, a kívánt állapottól. Az üzleti problémákat bonyolultságuk miatt nehéz definiálni. A probléma felismerését nehezíti, hogy csak tünetek, jelzések észlelhetők és hiányoznak vagy pontatlanok az valós állapotot leíró adatok. Ilyenkor könnyen elkövethető a hiba, hogy a tényleges probléma helyett valójában egy másik probléma megoldásán fáradozik a döntéshozó. 15
Ha minimális költségű, akkor a megoldás egyben optimális megoldás. A rosszul strukturált problémák megoldását segítik a genetikus algoritmusok. A genetikus algoritmus egy olyan problémafüggetlen metaheurisztika, amely általános keresési terekben végez kevés tudást igénylő optimalizálást. Nem optimumot keres, hanem kielégítő megoldást. A módszer a problémák egy nagyon széles osztályára alkalmazható, akkor is működik, ha a feladat struktúrája kevéssé ismert. [10] 16
78
3. Az üzleti döntések osztályozása Az üzleti döntések során az információ felhasználása személyhez és helyzethez kötődik. A személy szervezeti hierarchián belül elfoglalt helye és személyes tulajdonságai befolyásolják az adatok értelmezését és az információ tartalmát. A vállalat valamennyi érintettjének vannak a vállalathoz fűződő információs kapcsolatai, ezek azonban igen eltérőek: -
-
a tulajdonosok elsősorban a vállalat alapvető céljának megvalósulásában érdekeltek, számukra a legfőbb információk a tulajdonosi érték változásához kötődnek a menedzserek főleg a vállalat működési folyamataiban érdekeltek, számukra az ezekre vonatkozó információk kulcsfontosságúak a munkavállalók számára a folyamatok lebonyolításával kapcsolatos információk fontosak
A tulajdonos a hierarchia tetején a vállalat alapvető céljának eléréséhez szükséges stratégiai döntéseknél kapnak, a legfelső szintű vezetéssel együtt fontos szerepet. A vállalat belső érintettjeinek minden döntése befolyásolja a vállalat működését (állapotok közötti átmenetek), de nem egyformán. A legfontosabb szerep a döntés szempontjából a különböző szintű és funkciójú menedzsereké. A stratégiai és az operatív menedzsment összhangjának megteremtése alapvető jelentőségű a tervezett és megvalósított stratégia szempontjából. A kétféle vezetés azonban eltérő technikákat, és eltérő döntéstámogatást igényel. A felsőszintű vezetői döntések a szervezet stratégiájának meghatározására irányulnak. A szervezet működésének főbb irányait megszabó, a célokat és eszközöket egymáshoz rendelő, hosszú távú (több évre vonatkozó) döntések. Tekintettel arra, hogy tartós erőforrás-lekötéssel járnak, adott szervezet sorsát hosszú távon meghatározzák és visszafordíthatatlan módon vagy csak nagyon nehezen és költségesen módosítható folyamatokat indítanak el (pl. kutatás-fejlesztés). A stratégiai döntések eseti, egyedi természetűek mind a külső környezeti adatok, mind a felhasznált eljárások tekintetében. A stratégiai döntéshozatallal járó feladatok nem rutinjellegűek (projektek, stratégiai akciók), tipikusan nem jól strukturált problémákról szólnak, teljesen nem automatizálhatók (programozhatók) csupán támogathatók számítógépes rendszerekkel. A középszintű vezetői döntések a szervezeti stratégiának megfelelően kialakított tevékenységek szervezésére, irányítására vonatkoznak (pl. erőforrások, határidők kijelölése) Az irányítási döntések a vállalat működését a stratégia keretei között konkrétan szabályozó döntések. A középtávú problémákról szóló döntések időszakosak, de
79
rendszeresen ismétlődnek, ezért figyelembe lehet venni a korábbi döntések tapasztalatait, ami miatt rendszeresen gyűjtik, strukturálják és elemzik az adatokat (pl. döntések jövőbeli következményeinek felismerése szimulációval, trendszámítással) Az alsószintű vezetői döntések feladata az operatív irányítás, ellenőrzés, amely az erőforrás hasznosítási problémákkal foglalkozva biztosítja a szervezet rövid távú céljainak elérését. Rendszeres információk alapján, azokat tervekkel összevetve, időben dönt az esetlegesen szükségessé váló beavatkozásokról. A szükséges adatok és információk köre jellemzően jól definiált és jól strukturált. Gyakran automatikus döntési rendszereket is alkalmaznak (pl. termelés-, folyamatirányítás). A munkavállalók döntései a tevékenységek konkrét végrehajtására irányuló döntések. A munkavállalói szinten a vezetők által hozott döntések végrehajtására vonatkozó operatív döntések születnek. Ezek információigénye igen nagy és különösen érzékeny a pontosságra, itt ugyanis kevés a korrekciós lehetőség, az információ alapján azonnal vagy rövid időn belül meghatározott tevékenységek (tranzakciók) zajlanak le. típus
időhorizont
kockázat
struktúra
módszer
stratégiai
hosszú
magas
rosszul strukturált heurisztikus
taktikai
középtávú
elfogadható
változó
kvalitatív
operatív
rövid
alacsony
jól strukturált
kvantitatív
A vállalati döntések jellemzői 4. Döntéstámogató rendszerek Az informatikai eszközei az irányítási és végrehajtási folyamatokat egyaránt áthatják. A vállalat működését átszövi az információs rendszer, amit a technológiai fejlődés forradalmasított. A döntések minősége nagyban javítható a döntéshozói pozíciók információs igényének minél jobb kiszolgálásával. Ez a gyakorlatban minél beszédesebb, naprakészebb, a valóságot minél jobban leíró, a piaci helyzet hatékony elemzését támogató adatokat, valamint ezek értékelését segítő elemző eszközöket jelent. Az információs rendszer személyek, folyamatok és műszaki megoldások szervezeti egységen belüli, illetve szervezeti egységek közötti együttműködése17. Célja, hogy az adatok transzformálásával a vállalati működésben felhasználható információkat állítson
17
A műszaki megoldások közül ezek tipikusan az adatbevitellel, adatkezeléssel, adattárolással és adatábrázolással foglalkozó vállalati alkalmazások, ahol a fő kihívást az adatok megfelelő, biztonságos, általában rekordok formájában történő tárolása, gyors összekapcsolása és elérése, valamint információvá való hatékony alakítása jelenti.
80
elő és a döntéshozók rendelkezésére bocsássa. A jól kialakított információs rendszer hűen tükrözi a vállalat működését, vagyis pontosan leképezi az üzleti folyamatokat. Az információs rendszer tartalma és formája főleg a döntéshozó és az információ feldolgozó rendszer kapcsolatától függ. A különböző döntési szinteknek eltérő információs rendszerek felelnek meg. A döntéshozatal során az egyes vezetési szinteken az adatok eltérő köre releváns. Az adatokat különböző granuláltság (szemcsézettség) és aggregáltság mellett felhasználó döntési modellek a probléma osztályától függően. Napjainkban a döntéstámogatás informatikai támogatása (felhasználható eszközök és alkalmazások) eljutott arra a szintre, hogy rugalmasan képes a gazdasági környezetből származó adatokat a döntéshozók igényeinek megfelelően feldolgozni és prezentálni.
Az információs rendszerek vállalati döntési hierarchiájában[1] A vállalatirányítási információs rendszerek alkalmasak a rutin operatív döntések (munkavállalók és alsószintű vezetők) megalapozására, de nem alkalmas a közép-felső vezetés által a rosszul strukturált döntési helyzetekben hozandó, eseti döntések támogatására. A nem rutin döntések információs és döntéselemezési szempontból való megalapozását a döntéstámogató rendszerek biztosítják. A döntéstámogató rendszerek 18 tipikusan a nem jól strukturált problémák megoldásában, a vállalat adatvagyonára építve nyújtanak számítógépes támogatást. A döntéstámogató rendszerek olyan interaktív rendszerek, amely adatbázisok és modellek felhasználásával segítik a döntéshozókat a nem jól strukturált problémák megoldásában.
18
A döntéstámogató rendszerek fogalmát a továbbiakban tágan értelmezve: minden számítógépes rendszer, amely egy szervezeten belül segíti a döntéshozatalt, tehát a tranzakció-feldolgozó rendszerek is
81
A döntéstámogató rendszerek komponensei[2] A döntéstámogató rendszerek célja, hogy a lehető lehető legalkalmasabb legalka adatok összeválogatásával, azok alapos elemzésével, esetleg rejtett összefüggések felfedésével és megjelenítésével integrálódjon a döntési folyamatba. A döntéstámogató rendszerek hatékony működésének m ködésének kulcsa az, hogy az összegyűjtött összegy bemeneti adatokat at olyan formára hozzák, amelyek döntéshozó számára hasznos információt hordoz a probléma megfelelő megfelel értékeléséhez. Nincs gyakorlati értéke azoknak a megoldásoknak, amelyek a szükséges adatok hiányában csak annyira korlátozó feltétel érvényesítése mellett adnak adnak eredményt, hogy már a valóságra nem alkalmazható, ezért a döntéshozatal minőségének min minő javítása érdekében a vállalatok törekednek az üzleti működést m ködést meghatározó tényezők tényez széles körét jellemző adatokat bevonni a döntéshozatali folyamatba.
82
B. Az adatvagyon architektúra elemei 1. Operatív rendszerek A szervezet operatív szintjének rendkívül körülhatárolt információkra van szüksége a napi működési tevékenységekhez. A vállalatok alapvető érdeke, hogy az üzleti tranzakciókról minél több adatot gyűjtsön, strukturáljon és tároljon egy olyan integrált keretben, amely elemi információkat biztosít az üzleti folyamatok irányításához és végrehajtásához. Az operatív rendszerek követik a vállalatnál zajló eseményeket, rögzítik (bevitel, frissítés, törlés) ezek naturáliákban kifejezett jellemzőit pénzügyi következményeikkel együtt. Az operatív rendszerek általában a hagyományos adatbázisrendszer-alkalmazások, mint pl.: raktárnyilvántartások, szállítási nyilvántartások. Az adatbázis objektumainak állapotát a felhasználók konkurens módon, tranzakciók gyakori végrehajtásával módosítják és kérdezik le. A tranzakció megfelel az üzleti folyamat fogalmának: összetett művelet (folyamat), amely olyan egyszerű lépések (tevékenységek) sorozatából épül fel, amelyek a vállalati rendszert egyik konzisztens állapotból a másikba viszik át (bemenetből kimenetet állít elő)19. A vállalat rutinszerűen folytatott, ismétlődő tranzakcióit a tranzakció-feldolgozó rendszerek (OLTP20) dolgozzák fel. Az OLTP rendszerek között kitüntetett szerepet játszik a számviteli információs rendszer, amely követi a gazdasági eseményeket21 és a vezetői döntéseknek is alapját képezi (árbevétel, ráfordítások, vagyon és pénztermelő képesség változásának vizsgálata). A tranzakciós rendszerek a napi működés kiszolgálására (operatív döntések) készültek, a bennük tárolt adatok közvetlenül nem alkalmasak a más koncepciós szinten dolgozó taktikai és stratégiai döntéstámogatás kiszolgálására. Szerepük a végrehajtási szintre, a tranzakciók követésére koncentrálódik, de alapját képezi a magasabb szintű, vezetői információs rendszereknek.
19
Ulmann et al.[6] alapján a tranzakció informatikai értelemben olyan elemi egység, amelyeket atomosan és egymástól elkülönítve kell végrehajtani (bármely lekérdezés vagy módosító művelet önmagában alkot egy tranzakciót) A tranzakciók végrehajtásának tartósnak kell lennie (konkurenciakezelés), azaz a befejeződött tranzakciónak meg kell őrződnie még akkor is, ha a tranzakció befejeződése után közvetlenül valamiféle rendszerhiba fordul elő (naplózás és helyreállítás kezelés). 20 On Line Transaction Processing 21 A számviteli alapelvek egyike a teljesség elve, amely alapján könyvelni kell minden olyan gazdasági eseményt, amely az aktuális üzleti évet érinti. (2000. évi C. törvény a számvitelről 15.§ (2) bekezdés)
83
szempont
operatív adatkezelés
stratégiai adatkezelés
cél
a napi kiszolgálása
tipikus terhelés
sok kicsi, kevés rekordot kisebb számú, de érintő gyors tranzakció összetettebb tranzakciók, amelyekben rekordok százai vesznek részt
műveletek jellege
írás, olvasás (a túlnyomórészt olvasás (az konzisztencia olvasások egymással biztosításához zárolások párhuzamosan futhatnak) szükségesek)
adatok állandósága
egyes adatok gyakran az egyszer bekerült adatok változnak, az aktuális változatlanok, a hangsúly állapot leírása fontos az állapottörténet rögzítésén van
felhasználók
felhasználó, sok konkurens felhasználó: kevés ügyintézők, alkalmazottak, tipikusan elemzők, vezetők üzemeltetők és döntéshozók
fő minőségi szempontok
teljesítmény, elérhetőség
teljesítmény mértéke
másodpercenként kiszolgált az összetett elemezések tranzakciók száma elvégzésének a válaszideje
adatbázis mérete
általában néhány GB alatt, az operatív rendszereknél régi adatok törlése nagyságrendekkel nagyobb, (archiválása) a történeti adatok nem törölhetőek
adatbázis tervezése
alkalmazás orientált, tárgy-orientált, csillagséma Egyed-Kapcsolat modell
adatok nézete
részletezett, relációs
működés hosszabb távú tervezés, vezetői döntéstámogatás
folyamatos rugalmasság, kezelhetőség
összegzett, multidimenzionális
Az operatív és a stratégiai célú rendszer az adatkezelésben[4]
84
A stratégiai döntéshozatal során az adatok zöme a vállalati információszféra első rétegéből, a reálszférát a lehető legközvetlenebbül leképező tranzakciós rendszerből származik. Kívánalom, hogy a vezetői döntési eljárások kemény és hiteles tranzakciós rendszerből származó adatokra épüljenek. 2. Adattárházak A vállalati adatvagyon alapját képező OLTP rendszerekben hatalmas mennyiség halmozódik fel a működési adatokból. Az operatív rendszerek azonban nem nyújtanak optimális megoldást a taktikai és stratégiai szintű döntéshozatal támogatására, különösképpen a szükséges adatkör és adatstruktúra (aggregáltsági szint) biztosítását tekintve. A vállalati adatforrások (relációs adatbázisok, táblázatok, szöveges állományok, vállalati információs rendszerekből származó adatok) közvetlen felhasználása számos nehézségbe ütközik: -
-
az adatforrások heterogének: elérésük és az információk beszerzése különböző módszerek és technikák használatát igényli tartalmuk nincs feltétlenül összhangban: közös fogalomrendszer hiánya (termék_id más az értékesítő és anyagbeszerző számára, címeket más szabványok szerint írják, azonos fogalom eltérő elnevezéssel, stb.) alacsony granuláltsági szintjük miatt rendkívül feldolgozás igényesek a magasabb szintű döntésekhez igényelt aggregálások miatt
A vállalatoknak olyan információkra kell alapozniuk döntéseiket, amelyek a döntéshozatal számára gyűjtöttek és tartanak karban. Az operatív rendszerekből származó adatgyűjtés, előfeldolgozás és elemzési célú tárolás eszközei az adattárházak. A működési adatokat újraszervezésével megfelelő alapot nyújtanak a vezetői információs rendszerek számára, a jó teljesítményű és egyszerűen kezelhető elemzésekhez. Az adattárházak funkciójukat tekintve ellátják a döntéstámogató rendszerek modelljének adatbáziskezelő komponensével szemben támasztott elvárásokat. Az adatvagyon vizsgálata szempontjából megkerülhetetlen az adattárházak tárgyalása, hiszen napjainkban a vállalati adatvagyon jelentős része az OLTP rendszerek mellett az adattárházakban jelenik meg. Az adattárház Juhász[4] megfogalmazásában: „a döntéstámogató rendszerek operatív információs rendszerektől leválasztott adattároló helye. Az adattárház a tranzakciós rendszerekből kinyert, összegzett és megtisztított adatokat integrálja témaorientált, rendezett módon”. A definíció rámutat arra, hogy az operatív rendszerek annyira különböznek céljaikban, felhasználóikban és módszereikben a magasabb szintű döntések támogatásához
85
szükséges elvárásoktól, hogy érdemes az vezető döntések adatforrásait teljesen külön, független rendszerként megvalósítani. A sokat hivatkozott definíció szerint „az adattárház tárgyorientált, integrált, tartós és időfüggő adatgyűjtemény a vezetői döntéstámogatás szolgálatában”[11] Kifejtve Inmon definícióját, az adattárházak legfőbb jellemzői: -
-
tárgyorientált: az adatok nem alkalmazások, hanem tárgykör alapján vannak rendezve integrált: megszünteti a különböző operatív rendszerek inkonzisztenciáját (pl. ugyanazt az adatot különböző helyeken és különböző elnevezéssel használják vagy a különböző mértékegységek használata) tartós: azok az adatok, amelyek már bekerültek a tárházba, nem változnak meg időfüggő: operatív rendszerek mivel nem céljuk a hosszú távú adattárolás, másrészt mert igen sok adat mozog bennük, kis időtávú adathalmazt tartalmaznak, az adattárházak a forrásrendszerek változását nyomon követve az adatokat időfüggően, időpontok szerint tárolják és kezelik
Kiemelendő az adattárházak integráló funkciója. A vállalat adatai számos különböző adatbázisban vannak szétszórva, az adatforrások lehetnek külső és belső adatállományok. A több különböző adatforrásból származó adatok integrálása 22 biztosítja az egységesített adatok megfelelő szervezését és központosítását.23 A tranzakciós rendszerek és az adattárházak kapcsolatát az adattárház feltöltési folyamata (ETL 24 ) jelenti. Az ETL folyamatok az adatok kinyerését, átalakítását és betöltését végzik el.
Az adattárház feltöltésének folyamata Az adattárház hatékonyságának egyik kulcstényezőjét jelenti a forrásrendszerek adatminősége. Az adatminőség magas szinten tartása alapkövetelmény, hiszen a további 22
Általánosan elterjedt, hogy az adattárházakat csak éjjelente frissítik, vagyis az adattárház adatai már 24 órán belül elavulnak, de a taktikai és stratégiai döntések esetében az időeltolódás tűréshatáron belül marad. 23 Az adattárházak használatának relevanciáját üzemeltetési szempontok is indokolják. A döntéstámogató lekérdezések általában nagy mennyiségű adattal dolgoznak még akkor is, ha a lekérdezések eredménye kicsi. A tranzakciós rendszerekre épített analitikai alkalmazásoknál problémát jelenthet az elemzések nem gyakori, de hatalmas adatigénye, amely veszélybe sodorhatja az operatív információs rendszerek feltétlen megkövetelt megbízhatóságát, gyorsaságát. Az adattárházak az operatív rendszerek magas fokú rendelkezésre állását nem veszélyeztetve biztosítják a vezetői információigény rugalmas kielégítését. 24 Extract, Transform, Load
86
elemzések alapját az adattárházban elhelyezkedő adatok adják. Integráció során fontos lépés az adattisztítás. Az adattisztítás megszünteti az adatforrások közötti inkonzisztenciát és tartalmi redundanciát. Míg az operatív adatbázisok a redundancia elkerülése érdekében normalizált struktúrát alkalmaznak, addig az adattárházak a lekérdezésekre optimalizált, denormalizált szervezést részesítik előnyben, amelynek a hazai alkalmazásban is elterjedt példája a csillagséma25.
Egy példa a csillagsémára[web19] A csillagsémában a ténytáblázat (középpont) több más relációhoz, a dimenziótáblákhoz kapcsolódik (csúcsok). A ténytáblák tartalmazzák azokat a mérhető, numerikus adatokat, amelyeket a vállalatok tárolnak és elemeznek (árbevétel, eladott darabszám, stb), és a dimenzió-attribútumokon keresztül kapcsolódnak a dimenziótáblákhoz (idegen kulcsok). A dimenziótáblák az egyes dimenziók lehetséges értékeit írják le. Azok a tulajdonságok, amelyek alapján a tényadatokat csoportosítani, jellemezni szeretnénk (pl. dátum, vevő termék). A multi-dimenzionális adatmodellben a ténytábla adatai egy diszkrét értékkészletű ndimenziós hiperkock26 celláinak felelnek meg. A hiperkocka megszokott elnevezéseként az adatkocka fogalom terjedt el27.
25
A csillagséma előnyeiként említi Sidló[web19]: egyszerű, intuitív adatmodell, használata kevés join műveletet igényel, használata kevés tábla olvasását igényli, könnyű megvalósíthatóság és a modell metaadatai egyszerűek. Hátrányai: aggregációk, összegek képzése nehéz, nagy dimenziótáblák esetén a hierarchiakezelés nagyon lassíthatja a lekérdezéseket, a dimenzióadatok tárolása redundáns (pl. idődimenzió esetén a dátum, hét, hónap, negyedév, év attribútumok egy táblában tárolása). 26 Pontosabban hipertéglatest, mivel az egyes élek a dimenziótáblák eltérő értékkészlete elemeinek száma eltér. 27 A multidimenzionális adatmodell tárolásának és adatkezelésének megvalósítási formái: a ROLAP rendszerek relációs sémára, a MOLAP rendszerek adattárolásra a multidimenzionális adatmodellt használják, ahol a modell egyes elemei többdimenziós vektorba, amelyek közvetlen indexeléssel hozzáférhetők, HOLAP: ötvözi relációs skálázhatóságát és a multidimenzionális gyors elérését (Oracle Express is ezt támogatja)
87
Egy példa az értékesítési adatainak multidimenzionális nézetére 3. Adatpiacok Az adattárház a vállalat egészére vonatkozik, így több témakör adatait tartalmazza. Egy lokális, a vállalat valamely felhasználói csoportja, szakterülete számára készült konkrét feladatot ellátó, kisebb adattároló egységet az adatpiacok képezik, amelyek önmagukban is adattárház funkciókat látnak el. Az adatpiacok követve a szervezetek hierarchiáját, különböző szintű információs igények kielégítésében játszanak fontos szerepet. 4. Az adatvagyon korszerű felhasználása Az adatok felhalmozásának szükségessége mellett hasonlóan fontosak a feltáró folyamatok, amelyek segítségével az adatvagyonból kinyerhetőek az üzleti felhasználók számára szükséges információk. Az online-elemző feldolgozás (OLAP) olyan felsővezetői információs rendszer, amely az adattárházak által nyújtott lehetőségek (tisztított és előfeldolgozott adatok) kiaknázását biztosítja. Olyan meglehetősen összetett lekérdezéseket takar, amelyek egy vagy több összesítést tartalmaznak. Az OLAP műveletekkel az adatkockákon végezhetők elemzések (bejárható az adattér különböző nézetből és finomsággal). A műveletek az adatkockához egy új adatkockát rendelnek azzal a céllal, hogy biztosítsák az adatok egy olyan nézetét, amely elemzési szempontból megfelel a döntéshozóknak. Gyakori művelet a lefúrás (drill down), amely a megfelelő dimenziók egyre finomabb részekre osztását jelenti. A lefúrással az elemzést végző egy adott dimenzió bizonyos
88
értékeire koncentrálhat, ezzel segíti a vállalat kulcsteljesítmény mutatói (KPI 28 ) alakulásának megértését, a változás okainak, természetének feltárását29. Az adatok feldolgozása akkor igazán hatékony, ha a nagy mennyiségű adat jól áttekinthető megjelenítése érdekében világos és egyszerűen használható vizualizációval társul. Az adatvizualizáció segíti az adatok közötti kapcsolatok feltérképezését, a trendek felfedezését. Támogatja az adatok interpretációját és az OLAP műveletek (pl. lefúrás) grafikus követését olyan felhasználók számára is, akik nem magasan kvalifikált adatelemzők. A vizuális technikák közé tartoznak az adatok különböző grafikus megjelenítése, táblázatok, diagramok (scorecarding és dashboarding), de a térinformatikai rendszerekből nyert adatreprezentációk is. Amíg az OLAP eszközök kimondottan a sokdimenziós, történeti adatok megjelenítését és emberi feldolgozását segítik, addig az adatbányászat túllép ezeken a határokon. Az adatokból nemcsak előre meghatározott szempontok szerinti összegzések és elemzések készíthetők, hanem az adatvagyon felhasználására támaszkodva elvárás az olyan összefüggések és anomáliák feltárása, amelyek jelenlétét a döntéshozó nem képes előre megjósolni. Lehetőség szerint meg kell határozni az adatvagyonban rejlő információkat, összefüggéseket, trendeket, tudást, hiszen ezek konkrét piaci előnyökként realizálhatók. A döntéstámogatás jelenleg csúcstechnológiáját a korszerű adatbányászati eszközök jelentik, alkalmazásukkal nagy adatbázisokon, adattárházakban rejlő rejtett szerkezeti minták és összefüggések tárhatók fel. „Az adatbányászat egy szervezetben található vagy más forrásból származó, nagy mennyiségű adatból történő hatékony információ, illetve tudáskinyerés, üzleti előnyök megszerzése érdekében.”[2] Az adatbányászat a döntéstámogató módszerek teljes skáláját, a matematikai, statisztikai eszközök mellett mesterséges intelligencia 30 módszereket is integrálja magába, magas szintű vizualizációval kiegészítve. Az adatbányászati alapfeladatok: -
osztályozás: az elemek csoportba sorolása néhány a csoportot reprezentáló prototípus megadásával (pl: hitelbírálat) regresszió elemzés: előrejelzés, trendek kibontakozásának felismerése (pl. tőzsdei árfolyam elemzések) csoportosítás (klaszterezés): a mintákat előre nem ismert kategóriákba kell besorolni jellemzőik hasonlósága ill eltérései alapján (pl: ügyfélszegmentáció)
28
key performance indicator Az adatkockákon elvégezhető alapműveletek: felgörgetés, aggregáció (roll up), lefúrás (drill down), szeletelés (slicing), részkocka-kiválasztás (dice), elforgatás (pivot) 30 genetikus algoritmusok, neuronhálózatok, fuzzy logika 29
89
-
-
asszociációs (társítási) szabályok és szekvenciaelemzés: tranzakciólisták feldolgozása alapján szabályok meghatározása az egy tranzakción belül szereplő elemek egymás közötti viszonyaira vonatkozóan (vásárlói kosár elemzése, keresztértékesítéshez) eltéréselemzés: átlagostól eltérő, szokatlan, máshol zajnak tekintett adatok vizsgálata (pl. bankkártya visszaélések felderítése)
Az adatbányászati algoritmusok bármilyen méretű és típusú, akár strukturálatlan is adatokon működhetnek. A dinamikusan növekedő strukturálatlan adatvagyon elengedhetetlenné teszi szövegbányászat alkalmazását. A szövegbányászat feladata a szervezeteknél felhalmozódó adathalmaz nagy részét kitevő strukturálatlan, szöveges állományok feldolgozása, értelmezése és új, a szövegben elrejtett információ feltárása. A szövegbányászat tipikus alkalmazásai[web20]: -
releváns információ kinyerése (automatikus összefoglalás készítése) trendek és viszonyok felismerése, helyek, szervezetek között a szövegek osztályozása és szervezése a tartalmuk szerint (pl. bejövő emailek automatikus elosztása a szervezeten belüli megfelelő célszemélyekhez) szövegek visszakeresésének támogatása
Az adatbányászat folyamata[2] A tevékenységek közül a leghosszabb ideig tartó feladatot az adatok megfelelő minőségű előkészítése jelenti. Az adatbányászati modellek készítéséhez a modellezés alapját adó adatokat össze kell gyűjteni, hiszen ezek általában nem állnak közvetlenül rendelkezésre. Az adatok előkészítésének célja, hogy az elemzéshez használandó adatokat csak egy adattáblába integrálja, amelyben megfelelő minőségű adatok lesznek. Az adatelőkészítés folyamatának tevékenységei: -
adatok elérése: ha nincs adattárház (egy helyen, jó minőségű adatok), akkor össze kell gyűjteni az adatokat adatprofilozás: összegyűjtött adatok megismerése, alapjellemzők és az adatminőség vizsgálata adatredukció: elemzéshez használt attribútumok kiválasztása, redundancia csökkentés, mintavételezés adattisztítás: a hiányzó értékek pótlása, zajos és inkonzisztens adatok eltávolítása
90
-
-
attribútumok transzformálása (pl. mértékegységek egységesítése, szabványosítás, rangszámok/sorrendek meghatározása, mérési skálák transzformációja, csoportok képzése összevonással) adatok integrálása: különböző helyekről származó adatok egy adattáblába adatok partícionálása (pl.: osztályozási feladatnál a modell tanításhoz)
Az adatok előkészítésével járó feladatokat részben az ETL folyamatok is lefedik, de tekintettel kell lenni arra, hogy az adattárházak feltöltésekor végzett összesítések miatt a rejtett minták, kapcsolatok, adatasszociációk eltűnnek a tranzakciós adatokból. Éppen ezért az adatbányászati módszerek alkalmazása során szükség van a tranzakciós adatokra is, hiszen a rejtett információt éppen ezekből lehet kinyerni. Az adatbányászat által alkalmazott eszközökkel és technikákkal adatminőség biztosítása is támogatható. Az adatminőség gyengesége felfedhető az adatbányászati technikákkal, amelyek az adattisztítási folyamat támogatásában is jól használhatóak.
91
C. Az adathibák granularitási szint szerinti osztályozása 1. ATTRIBÚTUM / REKORD 1.1. Attribútum (egy rekord egy attribútuma) 1.1.1. Hiányzó érték a kötelezően kitöltendő Vevő_Neve attribútum értékének hiánya 1.1.2. Szintaxis (formátum) megsértése a Megrendelés_Dátuma attribútum 13/12/2004 értéket tartalmazza a 2004/12/13 helyett 1.1.3. Hibás érték a Gyártás_Dátuma attribútum 23/09/2003 értéket tartalmazza a 23/09/2004 helyett 1.1.4. Értékkészlet megsértése a Megrendelt_ Mennyiség attribútum negatív értéket tartalmaz 1.1.5. Érvénytelen rész-karakterlánc a Vevő_Neve attribútum tárolja a tudományos fokozatot is, pl.: Dr. Kovács Péter 1.1.6. Elgépelt érték A Település attribútum Budapes értéket tartalmaz Budapest helyett 1.1.7. Pontatlan érték Az Ant. érték a Kapcsolattartó attribútumban reprezentálhatja Antalt, Antóniát, stb. 1.1.8. Üzleti megszorítás megsértése a Vevő_Neve attribútumnak legalább 2 szóból kell állnia, de egy bizonyos rekordon ez a megszorítás nem betartott 1.2. Oszlop (több rekord egy attribútuma) 1.2.1. Egyedi érték megsértése két különböző vevőnek ugyanaz az adószáma 1.2.2. Szinonima létezése a Foglalkozás attribútum egyes rekordokban a professzor, másokban a tanár értéket tartalmazza, holott ugyanazt a foglalkozást reprezentálják 1.2.3. Üzleti megszorítás megsértése a Számla_Dátuma attribútum értékeinek növekvő sorrendben kell megjelenniük, de ez nem valósul meg 1.3. Sor (egy rekord több attribútuma) 1.3.1. Nem teljesen kitöltött rekord egy rekord félig-üres rekordnak tekinthető, ha attribútumainak legalább 60%-a üres
92
1.3.2. Funkcionális függőség megsértése az irányítószám és a város funkcionális függőségben állnak, az első attribútum egyértelműen meghatározza a másodikat. A <1035, Budapest> és a <1035, Debrecen> megsértik a funkcionális függőséget 1.3.3. Üzleti megszorítás megsértése a Termelési_Érték = Mennyiség * Eladási_Ár üzleti megszorítás, nem tartozik az Értékesítés Részletei reláció adott rekordjába 2. EGYSZERŰ RELÁCIÓK (táblák) 2.1. Hasonló rekord duplikátumok a Vevő<10, ‘Kovács Barna’, ‘Virág utca 123’, 502899106> rekord egy közelítő duplikátuma a Vevő<72, ‘Kovács B., ‘Virág u., 123’, 502899106> rekordnak 2.2. Inkonzisztens rekord duplikátumok a Vevő<10, ‘Kovács Barna, ‘Virág utca, 123’, 502899106> rekord egy inkonzisztens duplikátuma a Vevő<72, ‘Kovács Barna, ‘Nap utca, 321’, 502899106> rekordnak 2.3. Üzleti megszorítás megsértése a termékcsaládok maximális megengedett száma a Termék Család táblában 10, de a termékcsaládok tényleges száma 12 3. ÖSSZETETT RELÁCIÓK (sémák) 3.1. Referencia integritás megsértése a Vevő_Irányítószám attribútum a Vevő relációban 5100 értéket tartalmaz, de az nem szerepel az Irányítószám relációban 3.2. Hibás hivatkozás a Vevő_Irányítószám attribútum a Vevő relációban 4415 értéket tartalmaz a 4445 érték helyett, de mindkét irányítószám szerepel az Irányítószám táblában 3.3. Heterogén szintaxisok a Megrendelések reláció Megrendelés_Dátuma attribútumának szintaxisa dd/mm/yyyy, míg a Számla tábla Számla_Dátum attirbútumának szintaxisa yyyy/mm/dd 3.4. Körkörös hivatkozás (rekurzív) egy termék egy komponense lehet egy másik terméknek és ez az információ a Komponens attribútumban kerül tárolásra. Anomáliát jelent, ha a Termékek relációban létező X(Termék_Kód = ’X’) komponense Y(Termék_Kód = ‘Y’) terméknek és ezzel egyidejűleg Y(Termék_Kód = ‘Y’) komponense X(Komponens_Kód = ‘X’)-nek
93
3.5. Üzleti megszorítás megsértése a Számla_Értéke attribútum a Számlák reláció egy rekordjában 100 értéket tartalmaz, míg a Számlák Részletei reláció Termék_Érték attribútuma értékeinek összege csak 90 a 100 helyett 4. ADATFORRÁSOK (adatvagyon elemek) 4.1. Szinonimák létezése az 1. adatforrás Foglalkozás relációjának tartalmaz egy rekordot professzor értékkel, míg egy ekvivalens reláció a 2. adatforrásban tanár értéket tartalmaz, ugyanazt a foglalkozást reprezentálva 4.2. Homonimák létezése az 1. adatforrás Termékek relációjában szerepel egy egér termék (mint hardver), míg a 2. adatforrás Termékek relációjában szintén létezik az egér termék (mint állat) 4.3. Hasonló rekord duplikátumok a Vevő(10, ‘Kovács Barna’, ‘Virág utca 123’, 502899106) rekord az 1. adatforrásban egy hasonló duplikátuma a 2. adatforrás Vevő(27, ‘Kovács B.’, ‘Virág u. 123’, 502899106 rekordjának 4.4. Inkonzisztens rekord duplikátumok a Vevő(10, ‘Kovács Barna’, ‘Virág utca 123’, 502899106) rekord az 1. adatforrásban egy közeli duplikátuma a 2. adatforrás Vevő(27, ‘Kovács Barna’, ‘Nap utca 321’, 502899106) rekordjának 4.5. Heterogén szintaxisok a Vevők reláció Rögzítés_Dátuma attribútuma az 1. adaforrásban használt szintaxisa dd/mm/yyyy, míg a 2. adatforrásban yyyy/mm/dd 4.6. Mértékegységek heterogenitása a Termék_Eladási_Ár attribútum az 1. adatforrásban EUR-ban jelenik meg, míg a 2. adatforrásban USD-ben 4.7. Reprezentáció heterogenitása a Vevő_Neme attribútumot az F/M reprezentálja az 1. adatforrásban, míg a 2. adatforrásban a 0 és 1 értékek használtak 4.8. Üzleti megszorítás megsértése a termékcsoportok engedélyezett száma legfeljebb 10, a Termék Családok reláció az 1. adatforrásban 7 termékcsaládot tartalmaz, a 2. adatforrásban pedig 8 családot, a különböző termék családok száma a két adatforrás relációinak uniójában 11, ami sérti a megszorítást
94
D. Az adathibák hierarchikus osztályozása 1. Hiányzó adat 1.1. Hiányzó adat, ahol nincs NOT NULL megszorítás (nem létezik, nem ismert vagy opcionálisan tárolható adatok) 1.2. Hiányzó adat, ahol a NOT NULL megszorítást ki kellene kényszeríteni 2. Nem hiányzik az adat, de 2.1. Helytelen adat, mert 2.1.1.
Az automatikusan kikényszeríthető integritási megszorítások nincsenek kikényszerítve
2.1.1.1.
Integritási megszorítások adatbázisrendszerek által
2.1.1.1.1.
a
relációs
Felhasználó által meghatározott megszorítások
2.1.1.1.1.1.
Rossz adattípus használata (adattípus megszorítások megsértése, beleértve az értékkészletet)
2.1.1.1.1.2.
Függő adat (referencia integritás, PRIMARY/FOREIGN KEY megsértése)
2.1.1.1.1.3.
Duplikált adat (UNIQUE/PRIMARY megszorítás megsértése)
2.1.1.1.1.4.
Kölcsönösen inkonzisztens adat (az akció nem triggerelt miközben a feltétel zajlik)
2.1.1.1.2.
2.1.1.2.
támogatottak
KEY
Az integritás a tranzakciómenedzsment által biztosított
2.1.1.1.2.1.
Elveszett miatt)
frissítés
(konkurenciakezelés
hiánya
2.1.1.1.2.2.
Hibás olvasás a konkurenciakezelés hiánya miatt)
2.1.1.1.2.3.
Megismételhetetlen olvasás (a konkurenciakezelés hiánya miatt)
2.1.1.1.2.4.
Elveszett tranzakció (a helyreállítás hiánya miatt)
Integritási megszorítások nem támogatottak a relációs adatbázis-kezelő rendszerek által
2.1.1.2.1.
Rossz kategorikus adat (pl.: rossz absztrakciós szint, értékkészleten kívüli adat)
95
2.1.1.2.2.
Időben elavult adat (idő érvényességi megszorítás megsértése, pl.: személy életkora vagy a fizetése nem került frissítésre)
2.1.1.2.3.
Inkonzisztens geometriai adat megsértése, pl.: befejezetlen alak)
(térbeli
megszorítás
2.1.2. Nem kényszeríthető ki integritási megszorítás 2.1.2.1.
Adatbeviteli hiba táblát, állományt érintően
2.1.2.1.1.
Adatbeviteli hiba egy attribútumot érintően
2.1.2.1.1.1.
Téves bevitel (pl: életkor elírása 25 helyett 26)
2.1.2.1.1.2. Elgépelés félreértése) 2.1.2.1.1.3. 2.1.2.1.2.
2.1.2.2.
(pl.:
fonetikusan
hasonló
szavak
Külső adat (pl.: név helyett név és titulus)
Adatbeviteli hiba több attribútumot érintően
2.1.2.1.2.1.
Rossz attribútum kitöltése (pl.: cím helyett a név mezőbe)
2.1.2.1.2.2.
Rossz származtatott adat (adatfeldolgozó eljárások hibája miatt)
Inkonzisztencia több táblát, állományt érintően (pl.: a dolgozók száma a Dolgozók táblában és a dolgozók száma a telephelyek táblában nem egyezik)
2.2. Nem helytelen, de használhatatlan adat 2.2.1. Különböző adat ugyanarra az egyedre vonatkozóan (pl.: ugyanannak a személynek különböző fizetési adat két különböző táblában vagy adatbázisban) 2.2.2. Kétértelmű adat, mert 2.2.2.1.
Rövidítés használata (dr. esetében doktor vagy drive)
2.2.2.2.
Nem teljes kontextus (homonímák)
2.2.3. Nem szabványos adatillesztés, mert 2.2.3.1.
Nem összetett adat különböző reprezentációi
2.2.3.1.1.
Algoritmikus átalakítás nem lehetséges
2.2.3.1.1.1.
Rövidítés (ste for suite, hwy for highway)
2.2.3.1.1.2.
Alias/becenév (pl.: Mopac, Loop 1, and Highway 1; Bill Clinton, President Clinton, William Jefferson Clinton)
96
2.2.3.1.2.
2.2.3.2.
Algoritmikus átalakítás lehetséges
2.2.3.1.2.1.
Formátumkódok (ASCII, EBCDIC, . . . .)
2.2.3.1.2.2.
Megjelenések (beleértve: árfolyam, dátum, idő, ...)
2.2.3.1.2.3.
Mértékegységek (beleértve: dátum, idő, árfolyam, távolság, súly, terület, mennyiség, …)
a
negatív
számok,
Összetett adatok különböző reprezentációi
2.2.3.2.1.
Konkatenált (összefűzött) adat
2.2.3.2.1.1.
Rövidített változatok (pl.: John Fitzgerald Kennedy helyett John Kennedy)
2.2.3.2.1.2.
Speciális karakterek használatai (szóköz, zárójel, idézőjel, stb. a TAJ számban vagy telefonszámban)
2.2.3.2.1.3.
Különböző sorbarendezés (John Kennedy vs. Kennedy, John)
2.2.3.2.2.
Hierarchikus adat (pl.: címszerkezet: ország-megyeváros vs. ország-város)
2.2.3.2.2.1.
Rövidített változat
2.2.3.2.2.2.
Speciális karakterek használatai
2.2.3.2.2.3.
Különböző sorbarendezés (city-state, state-city)
97
E. A legfontosabb azonosítók szabályai Azonosító
Szerkezet
Ellenőrzőszám képzése
TAJ kártyaszám
[0-9]{3}\s?[0-9]{3}\s?[0-9]{3}
A sorszám páratlan helyen álló jegyeit 3-mal, a páros helyen állókat 7-tel kell szorozni. A szorzatok összegét 10-zel elosztva a maradék adja a CDV kódot.
1-8. jegy: sorszám 9. jegy: ellenőrző szám
személyi azonosító szám
[0-9]-?[0-9]{6}-?[0-9]{4} 1.jegy: személy neme (állampolgársága) 2-6. jegy: születési idő (ééhhnn) 7-10. jegy: sorszám 11. jegy: ellenőrző szám
személyi igazolványszám (új)
[0-9]{6}[A-Z]{2}
adóazonosító szám
8[0-9]{9}
1-6. jegy: szám, képzése nem ismert 7-8. jegy: betűkód
1. jegy: konstans 8 2-6. jegy: a személy születési időpontja és az 1867. január 1. között eltelt napok száma 7-9. jegy: az azonos napon születettek megkülönböztetésére szolgáló véletlenszerűen képzett sorszám 10. jegy: ellenőrző szám bankkártyaszám
[0-9]{4}\s?[0-9]{4}\s?[0-9]{4}\s?[0-9]{4} 1-4. jegy: bankazonosító 5-16. jegy: bank által kiadott
bankszámlaszám
A számjegyek sorszámaikkal való szorzatösszegének 11-gyel való osztási maradéka (1996.12.31 után születettek esetében jobbról balra)
[0-9]{8}-?[0-9]{8}-?[0-9]{8} 1-3. jegy: bankazonosító 4-7. jegy: fiókazonosító 8. jegy: ellenőrzőkód 9-16. vagy a 9-24. jegy: ügyfélazonosító 16 karakter hosszúságú számsor esetében a 16. számjegy, 24 karakter hosszúságú számsor esetében a 24. számjegy ellenőrzőszám
98
A számjegyek sorszámaikkal való szorzatösszegének 11-gyel való osztási maradéka.
A bankkártyaszám valódiságának vizsgálata a Luhn-algoritmus felhasználásával végezhető el. Külön az 1-7., valamint külön a 9-15. vagy 9-23. számjegyeket helyértékük csökkenő sorrendjében meg kell szorozni a "9,7,3,1,...9,7,3,1" számokkal, a szorzatösszeg egyes helyértékén lévő szám kivonása 10-ből.
Azonosító
Szerkezet
Ellenőrzőszám
cégjegyzékszám
[0-9]{2}-?[0-9]{2}-?[0-9]{6} 1-2. jegy: nyilvántartó bíróság kódja 3-4. jegy: cégforma kódja 5-10. jegy: bíróság által kiadott sorszám
adószám
[0-9]{8}-?[0-9]-?[0-9]{2} 1-8. jegy: törzsszám (sorszám) 9. jegy: áfakód 10-11. jegy: adózó székhelye szerint illetékes területi adóhatóság kódja
statisztikai számjel
[0-9]{8}-?[0-9]{4}-?[0-9]{3}-?[0-9]{2} 1-8. jegy: adószám törzsszáma 9-12 jegy: szakágazati kód (TEÁOR) 13-15. jegy: gazdálkodási forma kód (GFO) 16-17. jegy: területi (megye) kód
99
F. A szabad felhasználású eszközök részletes értékelése Dimenzió adatprofilozás adatbázisszerkezet strukturális elemzése leíró statisztikák töltöttségelemzés egyediségelemzés szintaktikai elemzés előre definiált minták validálás referenciaértékekkel validálás üzleti szabályokkal kiugró értékek detektálása korellációelemzés funkcionális függőségek keresése hivatkozási megszorítások felderítése duplikáció detektálás különböző adatforrások közötti elemzés adattisztítás előre definiált transzformációk transzformációs szabályok definiálása adatszótár alapú tisztítás karakterlánc manipulációk deduplikáció adatminőség menedzsment adatminőség alapú metrikák definiálása küszöbérték megadása riportolás felhasználók/jogosultságok kezelése feladatok ütemezése üzleti metaadatkezelés törzs- és referenciaadat kezelés grafikus környezet grafikonok workflow tervezés grafikus támogatása adatminőség dashboard újrafelhasználhatóság adatprofilok mentése validációs szabályok és minták tárolása profilozási feladatok tárolása transzformációs szabályok tárolása adatszótárak tárolása
Data Quality
DataCleaner
DQ Analyzer
PowerCenter
x x x x x x x x x x x x x
x x x x x x x x
x x x x x
x x x x x
x
x
x x
x x x x
x x x
x x x x x
x
x x
100
x x
x x x
x x
x x
x x x x x
x x x
x x x x
Dimenzió kapcsolódás félig-strukturált állományok JDBC/ODBC Apache Derby Firebird IBM DB2 Microsoft SQL Server MySQL Oracle PostgreSQL Sybase webes adatforrások big data (NoSQL) elosztott adatbázisok platform Windows LINUX Mac OSX ajánlott RAM fejlesztési környezet szerver/kliens architektúra működés módja integráció forráskód elérhetősége command line interfész API web szolgáltatások
Data Quality
DataCleaner
x x
x x
x x x x x x
x x x x x
DQ Analyzer PowerCenter x x x
x x
x x x x x
x x x
x x x
x x x x 4 GB JAVA kódgenerálás x x x
x x x JAVA x XML alapon x x x x
101
x
x csak a szerver
1 GB -
4 GB x -
-
x x x
Dimenzió támogatás fejlesztői dokumentáció felhasználói dokumentáció community getting started tutorialok vásárolható támogatási szolgáltatások hazai partner fizetős változat többlet funkciói kapcsolódás adatprofilozás
adattisztítás
adatminőségmenedzsment
termékportfólió adattisztítás adatminőségmenedzsment adatintegráció (ETL) adatbányász OLAP big data támogatás törzsadatmenedzsment alkalmazás integrációs
Data Quality
DataCleaner
DQ Analyzer PowerCenter
x x x
x x x
x x
x x
x
x
x
450+ adapter
Hadoop / Hbase
Hadoop / Hbase
x x x x
x x x x x x
potenciális elsődleges kulcsok ,duplikáció detektálás karakterláncok manipulálása, deduplikáció
EqsyDQ
monitorozás, figyelmeztetések profilok historikus tárolása, riportálás x x x (os)
x (os) x (os) x (os) x (os)
x (os) x (os) x (os) x (os)
x
102
x x x
x x