MINDSPIRE BLOG
Kövesse a MINDSPIRE közösségi oldalait!
Hogyan érdemes megközelíteni egy teljes körű adatmigrációs folyamatot?
Az exponenciálisan növekvő adatok világában a rendszerek migrációja szinte napi rutinná vált a cégek számára, és ez alól a banki szektor sem jelent kivételt.
A gyors és jól bevált adatmigrációs módszertanok és eszközök feltétlenül szükségesek a sikerhez.
Egy megfelelő validációs keretrendszer szintén elengedhetetlen annak érdekében, hogy az egész folyamat egyszerre átláthatóvá és audit-biztossá váljon, illetve – bár első ránézésre nem feltétlenül nyilvánvaló -, hogy annak hatékonysága is javuljon.
Mindenki tudja, hogyan kell végrehajtani egy migrációt. Hiszen az csak egy ETL, ugye? Rendelkezésünkre állnak az adatok a forrásrendszerekben, azokat ki kell exportálni, fel kell gyorsan összemappelni egy ideiglenes adatbázist, átalakítani az adatokat, majd feltölteni az eredményt a célrendszerekbe, és kész is vagyunk.
Nos, leegyszerűsítve valóban erről van szó, de egy igazi adatátmigrációs szakértő ennél több dolgra is figyelmet fordít egy teljeskörű migrációs folyamat végrehajtása során, függetlenül attól, hogy manuális vagy automatikus megoldásról van szó.
A legáltalánosabb követelmények a helyesség és a teljesség. Két olyan kulcsfontosságú sikertényező, amelyek elérése eléggé kézenfekvőnek tűnik, de ahhoz, hogy megfelelhessünk nekik és megtervezhessük a megfelelő validációs keretrendszert, először meg kell értenünk azok pontos jelentését és a tényleges követelményeket.
Pregitzer Árpád
Migrációs Szolgáltatásvezető
Árpád több mint 15 éves tapasztalattal rendelkezik a pénzügyi szektorban, a régió egyik legtapasztaltabb banki migrációs szakértőjeként, aki eddig 10+ sikeres Core banki migrációs projektet vezetett.
Szakértőként és a jelentősebb MINDSPIRE projektek minőségbiztosítójaként felügyeli a migráció teljes életciklusát, beleértve a koncepcionális tervezést, a forrás- és célrendszerek feltérképezését, a transzformáció ellenőrzését, illetve a próbamigrációt és az éles indulás végrehajtását.
A szoftver technológiában és programozásban a helyesség általános jelentése az, hogy az összes eredmény megfelel a specifikációnak, míg a teljesség biztosítja, hogy a specifikáció által megkövetelt eredmények előállnak. Más szavakkal, a helyesség azt jelenti, hogy a program által meghatározott relációk a specifikált relációk részhalmazai, a teljesség pedig az ellenkező irányú értelmezést jelenti.1 Ez meglehetősen akadémikusnak tűnhet, ugyanakkor a pontos fogalommeghatározás alapját jelenti. A banki rendszerek migrációjában mind a helyességet, mind pedig a teljességet külön szinteken szükséges meghatározni, nemcsak technikai, hanem üzleti és számviteli értelemben is.
A validáció fő feladatán kívül – legyen szó a helyességről, a teljességről vagy mindkettőről – egyéb fontos tényezőket is figyelembe kell vennünk a validáció tervezésénél és a helyes megoldás alkalmazásánál.
A validációk különbözhetnek a technikai folyamattal való integrációjuk tekintetében: a beépített validáció és a folyamat utáni teljes körű validáció nagyon eltér a célkitűzés, az eszközkészlet és főleg a végrehajtást érintő felelősség vonatkozásában.
Egy másik tényező a teljeskörűség, függetlenül attól, hogy a teljes adatkészlet vagy csak adatminták érintettek a validációban. Mindezeket a szempontokat figyelembe véve a migráció validálásának két fő típusa különböztethető meg: ellenőrzés és rekonsziliáció. Mindkettő megnövelheti a általános sikerarányt, illetve az erőforrások hatékony felhasználását a hibák kezelésben és a változáskezelési folyamatokban, ha megfelelően használjuk azokat.
Migrációellenőrzési keretrendszer
Verifikáció – a hibák felismerésének módja
Mindegy, hogy milyen migrációs megközelítést alkalmazunk, illetve milyen folyamatot alakítottunk ki az adatok továbbítására a forrásból a célrendszerbe, az adatok áramlásában különböző adat manipulációkat fogunk végrehajtani: átstrukturálás, kizárások, transzformáció, konvertálás. Az adatokat minden egyes lépésben feldolgozzuk, az előzőtől fogadjuk, esetlegesen módosítva, majd továbbadjuk a következőnek. A folyamat során minden lépésben fennáll annak a kockázata, hogy hibát kövessünk el, ami végül a teljes adatkészlet egyezőségének vagy integritásának sérülését eredményezheti. Ezt rossz adatminőség, pontatlan specifikáció, helytelen megvalósítás vagy ezek kombinációja is okozhatja.
Egy hatékony és támogató validációs folyamat megtervezésének egyik alapelve az, hogy megpróbáljuk a lehető legkorábban észlelni a migrációs hibákat az adatok áramlásában, és kizárni a hibás adatokat a további feldolgozásból.
Ez segít majd a hiba alapvető okának könnyebb azonosításában és az értékes tesztelési erőforrások megtakarításában, illetve lehetővé teszi a későbbi ellenőrzések során, hogy azokra az adatokra összpontosítsunk, amelyeket a korábbi feldolgozásokat követően helyesnek és teljeskörűnek tekintünk. A folyamatba beépített lépésenkénti ellenőrzések a leghatékonyabb módszer az adatok nyomonkövetésének, illetve ennek eredményeként az egyes feldolgozási lépések során a technikai és üzleti helyesség validációjának.
A verifikáció célja az elvárt értékektől való bárminemű eltérés felismerése, amelyek lehetnek technikai (formátum, hossz, típus, hiányzó adatok, stb.) vagy kontextuális (szélsőérték, nem egyező adatkészlet, inkonzisztens vagy hiányzó érték, stb.) eltérések.
Az eltérés a forrásrendszerekből eredő rossz adatminőség, vagy az előző folyamatlépésekben elkövetett hiba / hibák következménye is lehet, ami adathibát vagy adatvesztést okoz. Külön ellenőrzéseket kell kialakítani a folyamat egyes lépéseinek helyességének ellenőrzéséhez, valamint a teljesség validálásához két egymást követő folyamatlépés között. Bármi legyen is a technikai megoldás, ezeknek a validációs pontoknak az eredményeiről riportokat kell készíteni és össze kell foglalni azokat egy áttekintő és a teljes folyamatot magába foglaló statisztikában. Mindez nagyon hasonlít ahhoz, amit a BI-osok adat életútnak (data lineage) hívnak, azzal a különbséggel, hogy a migrációnál nem az adatok eredete, hanem azok áramlása van a fókuszban, és az adatfeldolgozás részletes – rekordszintű – állapota.
A migrációs célszoftverek általában rendelkeznek olyan beépített funkcióval, amellyel a validációs riportok létrehozhatók, valamint fejlett megoldásokat kínálnak a migrációs adatok kinyerésének, transzformációjának és betöltésének ellenőrzésére a helyesség és / vagy a teljesség vonatkozásában.
Ennek ellenére a folyamatba épített ellenőrzések nem képesek megbirkózni azon külső tényezőkkel, amelyek kívül esnek a technikai folyamaton, de mégis befolyásolják annak eredményét. Sajnos van néhány ilyen külső faktor, amely könnyen elronthat egy látszólag sikeres migrációt. A lépésenkénti ellenőrzések során nem merült fel hiba? Az adatok száz százaléka sikeresen betöltődött a célrendszerbe? Még mindig nem lehetünk biztosak benne… Emlékezzünk csak vissza a helyességről és teljességről szóló eredeti definíciónkra: „(…) az eredmények kompatibilisek a specifikációval”. És mi van, ha maga a specifikáció hibás?
Fedezze fel használatra kész, hatékony migrációs alkalmazásunkat, paraméterezhető adattranszformációval, folyamatkezeléssel és beépített riportkészítéssel!
Egy sajátos, de még inkább szükséges validálási módszer a balról-jobbra vagy a képernyőről-képernyőre történő ellenőrzés. Ennek célja a forrásrendszerben található kiinduló adatok összehasonlítása a célrendszerben rendelkezésre álló adatokkal, és az esetleges eltérések azonosítása egy előre kiválasztott minta készlet elemzésével. Mivel ez az összehasonlítás független a technikai folyamattól, és nem a technikai specifikáción, hanem inkább üzleti teszteseteken kell alapulnia, a képernyőről-képernyőre történő ellenőrzés hatékony módja a rejtett, más ellenőrzések által nem detektálható hibák azonosításának, ezért nem érdemes kihagyni a migráció ellenőrzési stratégiájából. Mivel azonban ez a típusú összehasonlítás nem képes lefedni a migrált adatok teljes körét, így még egy lépés szükséges az elvárt szintű helyesség és teljesség biztosításához.
Migrációs ellenőrzési folyamat
Rekonsziliáció – az utolsó védelmi vonal
Logikus, hogy a validáció utolsó lépése a a migrált adatoknak a folyamat lezárását követően végrehajtott teljeskörű összehasonlítása, valamint a hibák vagy hiányosságok nyomainak észlelése. A képernyőről-képernyőre történő ellenőrzéshez hasonlóan a rekonsziliációt a migráció technikai folyamatától teljesen függetlenül kell megtervezni és felépíteni, és az a megvalósításban előforduló hibák megismétlésének elkerülése érdekében nem épülhet az abból származó közvetlen inputokra. Inkább a két végállapotot kell összehasonlítania: a migráció megkezdésekori forrásadatokat a célrendszer végső, aktuális adatstruktúrájának adataival (tehát a köztes betöltési táblák vagy adat állapotok használatát kerülni kell). Egy fő különbség van: a rekonsziliáció mindig a migrált adatok teljes körét fedi le, és minden hibát felsorol az elemzett rekordkészleten.
Minden adat teljeskörű összehasonlítása, nos, ez lenne a mágikus eszköz, a validáció minden validáció felett…., csakhogy az összes üzleti jellemzőt és adatmezőt magába foglaló, mindenre kiterjedő rekonsziliáció felépítéséhez roppant sok időre és erőforrásra lenne szükség. Ehelyett a megoldás az, hogy csak a legkritikusabb adatokra koncentrálunk. A kritikusságot főként üzleti szempontból kell meghatározni, de – pénzügyi adatok migrációjáról lévén szó – a számviteli egyeztetés sem kihagyható az ellenőrzésből.
Noha a rekonsziliáció végső soron az éles indulási folyamatban jelent egy eszközt a migráció elfogadásához, ha időben előkészítjük és minden releváns kritikus adatra lefuttatunk egy ilyen összehasonlítást, akkor a migráció végrehajtási fázisában a hibák nyomonkövetése és a hibajavítás terén is jelentős előnyöket fog jelenteni.
Ez növeli fogja a hibák észlelésének esélyét a tesztelés korai szakaszaiban, és ezért a rekonsziliációt nem csak a folyamatot követő riportként és a go / no-go döntések megalapozásaként kell figyelembe venni, hanem aktívan fel kell használni hatékonyságjavító intézkedésként a migráció végrehajtása során is.
Van azonban egy jelentős kockázata: a megfelelő rekonsziliációs folyamat megtervezése és kialakítása nem egyszerű, a teljes migrációs folyamat bonyolultságával összemérhető. Egy nem tökéletes rekonsziliáció a semmiért tett hatalmas erőfeszítéseket jelent, mivel semmissé teszi az esetleges erőforrás-megtakarításokat.
Rendben, akkor hogyan lehet a megfelelő rekonsziliációs folyamatot megtervezni? Ezt egy következő bejegyzésben fogjuk tárgyalni.
Hivatkozások
1 Correctness and completeness of logic programs Version of 24-04-2015 Wlodzimierz Drabent, Institute of Computer Science, Polish Academy of Sciences, and IDA, Linkoping University, Sweden
Ismerje meg a MINDSPIRE kapcsolódó szolgáltatásait:
Kérdése vagy megjegyzése van a bejegyzéssel kapcsolatban?
Küldje el üzenetét és munkatársaink felveszik Önnel a kapcsolatot!
Legújabb adatmigrációs referenciáink
Többet szeretne tudni adatmigrációs szolgáltatásainkról?
További információkért kattintson ide: