Adatvagyon-integráció-konszolidáció
A Miau Wiki wikiből
Tartalomjegyzék
Adatfragmentumok összevezetése
Az alábbi, (egytáblás) adatvagyon-gazdálkodási szabványokat minden informatikát tanuló Hallgató rutinszerűen kell, hogy értse és használja. Egyetlen szakdolgozatnak sem lenne szabad megszületnie az ott feldolgozott adatok korrekt kezelése nélkül...
Előzmények
- Annak érdekében, hogy egy adatbázist létre hozassunk, elsőként meg kell határozni az ebben tárolni kívánt adattartalmakat (vö. APEH-statisztikák).
- Az adattartalmak rögzítése után ezek nyers állapotait rendelkezésre kell bocsátani pl.
- internetes kereséssel (vö. képernyőképek, html-másolatok, fájl-mentések)
- papír-alapú források esetén beszkennelt (lehetőség szerint karakterfelismeréssel támogatott) állományok (vö. http://miau.gau.hu/temp/apeh)
Adatbázis-tervezési lépések
- A nyers adatok vizuális értelmezése és az elemzési célok alapján meg kell határozni milyen dimenziókra (egytáblás alapesetben milyen oszlopokra) van szükség az adatbázisban, azaz milyen meta-adatokkal kívánunk leírni egy-egy megfigyelt, mért értéket.
- Alapértelmezés szerint: sorszám, objektum, attribútum, érték, mértékegység, forrás, dátum (rögzítés), rögzítette (monogram)
- Amennyiben a nyers tartalmak ennél több struktúrát engednek feltárni, akkor ezek használata kötelező: pl.
- térbeli hierarchiák (pl. megye, statisztikai régió, ország)
- időbeli hierarchiák (pl. év, félév, negyedév, hónap, nap)
- jelenséghierarchiák (pl. mutatószámok csoportjai)
- A dimenziók/oszlopok meghatározása után illik, de nem mindig lehetséges azonnal megalkotni a kódszótárt, mely tartalmazza, milyen oszlopban milyen értékkészlet fordulhat elő. A kódszótár kialakítása lehet többlépcsős, iteratív, ill. végső soron utólagos folyamat is, bár ez esetben a potenciális revíziók száma irracionálisan nagy is lehet...
Egy-személyes feladatvégzés
- A kódszótár és a nyers adatok ismeretében az elsődleges feladat a cél-struktúrába belekényszeríteni a nyers tartalmakat.
- Ennek során számos hiba léphet fel, melyeket folyamatos önellenőrzéssel kell feltárni:
- a kódszótár előírásait követni kell
- fel kell készülni arra, hogy a kódszótár alapján teljes kombinatorikai terekben gondolkodjunk
- vagyis kerüljük adatok elhagyását
- és kerüljük adatok többszörös rögzítését
- minden mutatószámnak lehetőség szerint csak egyetlen egy mértékegysége legyen
- minden megye csak egy régióhoz tartozzon
- minden érték a rájellemző értelmezési intervallumba essen
- minden részhalmaz (pl. megyék) összege legyen egyenlő ugyanazon halmaz más típusú felbontása (pl. statisztikai régiók) után kapott összegekkel, vagy amennyiben adott a mindösszesen (HU) értékekkel.
Adatállományok integrációja és konszolidációja
- Az egy-személyes adatrögzítés eredményeit másoljuk fel egy közös helyre, s rendezzük ezeket méretük szerint sorrendbe: http://miau.gau.hu/temp/apeh/strukturalt_adatok_uj/?C=S;O=D
- Válasszuk ki a legnagyobb méretű állományt, mely átlagos esetben a legtöbb rekordot/sort kell, hogy tartalmazza immár egységes ellenőrzési elvek alapján jónak minősítve.
- Definiáljunk egy új oszlopot az egyes állományok elérési útjának megadása érdekében és töltsük is fel az alapadatok esetére is azonnal.
- Válasszuk ki a második legnagyobb állományt és nyissuk meg.
- Ellenőrizzük le az alábbiakat:
- azonosak-e az oszlopfejlécek (pl. HA()-függvény segítségével)
- az első eltérés máris az állomány elérési útjának hiányát fogja jelezni
- ezt azonnal pótoljuk, vagyis adjuk meg az állomány URL-jét
- Másoljuk be fejléc és kihagyott sorok nélkül a kisebb állományt a nagyobb alá.
- Majd kezdjük el az összes ismert önellenőrzési lépés újbóli végrehajtását:
- ellenőrizzük le, hogy a kódszótár szabályai továbbra is érvényben vannak-e
- vizsgáljuk meg, nem keletkeztek-e ellentmondások (azonos meta-adatokkal leírt eltérő értékek)
- nem jöttek-e létre redundáns adatsorok (azonos meta-adatokkal leírt azonos értékek)
- Tegyünk kísérletet új strukturális rétegek felismerésére: pl. mutatószámcsoportok képzésére. Ennek érdekében hozzunk létre új oszlopot, s erre vonatkozóan minden elvárást rögzítsünk a kódszótárban.
- Tegyünk kísérletet az azonnal elemezhető adatrétegek felismerésére, hiszen az adatbázis építésének legfőbb célja, hogy ennek készenléte után azonnal elemezhessük a benne rögzített adatokat...
- A fenti lépéseket addig folytassuk míg minden fragmentum feldolgozásra nem került, ill. minden strukturális elvárás nem teljesült.
Specialitások
- Ha nincs sorszám-oszlop, akkor az állomány URL mellett ezt is létre kell hozni...
- Ha a fejléc elemek kis-nagybetűs írásmódban (jelenség=Jelenség), szinonima-alkalmazásban (év=Évszám, vagy mikor ellenőrizte = ellenőrzés dátuma) térnek el egymástól, szó sorrendben (XLS forrás = forrás xls), ezeket csak vizuális elemzéssel lehet felismerni...
- Ilyen eltérések elvileg nem fordulhatnának elő, hiszen a kódszótárnak ki kell terjednie az oszlopfejlécekre is...
- Abban az esetben, ha egy-egy eltérésről nem dönthető el egyértelműen az azonossági szabályoknak való megfelelés, improvizálás helyett vonja be a döntéshozót a folyamatba...
- Az értékként való beillesztéskor a dátum formátuma elvész, de helyre kell állítani...
- Minden helyesírási hibát azonnal javítani kell!
- A kis- és a nagybetű használata legyen következetes!
- A szóközök és egyéb tagoló jelek használata legyen következetes.
- A dimenziók közötti fogalomhasználat legyen következetes: vagyis pl. a KMR legyen mindenütt KMR...
- Minden egyes értékkészlet legyen önmagában kihagyás- és átfedésmentes, ill. ne legyen benne halmazidegen elem...
- Egyetlen meta-adat sem hiányozhat!!!
- Minden egyes összevonás legyen külön állományként elmentve: pl. http://miau.gau.hu/temp/apeh/2reteg.xls
2011 tavasz: megyei negyedéves KSH-adatvagyon véglegesítése
- Forrás: KSH
- Az ellenőrzés előtt minden egyes rekord saját azonosítót kapott, hogy a pontszerű javításoknál legyen mire hivatkozni (ID, régi érték, új érték)
- Általános ellenőrzés: a forrás dokumentumban mutatók sorrendje eltér a sablontól egyes megyékben (pl. Nyugat-Dunántúl, GYMS 2009), ill. egyes mutatók nem szerepelnek az egyes években, ami adatrögzítési elcsúszások forrása lehet
- Minden MAX/MIN típusú ellenőrzés esetén a javítás után frissíteni kell a kimutatásokat, hogy a másodlagos extrém értékek előbukkanhassanak (még a helyes extrém értékek törlése is kötelező, mert mögöttük megbújhatnak valódi hibák is)
- Általános ellenőrzés: a beszédes forrás-URL és a meta-adatok alapján (megye, negyedév. év) ellenőrizni kell a megfelelést, hiszen önmagában az nem elegendő, ha egy xls-érték és a forrás-érték azonos, ha a forrás maga téves
- Tartalom-függő specialitások
- regionális adat (statisztikai régió) bármely megye forrás-állományából származhat (megye=mind)
- egyes, azonos régió tartozó megyék esetén nem vezet számszerű hibához, ha valamely másik régiós megye pdf-állománya a forrás, de ez semmiképpen nem "szép" (az ilyen adatrögzítés zömmel csoportosan lép fel, s ennek tömeges javítása újabb hibák forrása lehet!)
- az ilyen jellegű egyedi hibák zömmel érték és forrás hibát, azaz dupla-hibát jelentenek
- A megyei adatok a IV. negyedévben visszamenőleg közlik az előző negyedévek egyes adatait, tehát a legjobb minőségű I. negyedéves adatot nem az I. negyedéves forrásokban kell keresni, de a gyorsjelentés-jellegű adatátvétel az saját negyedévből nem tekinthető hibának
- Azon adatok forrása és értéke mindenképpen ellenőrizendő, ahol az adat egy később időpontról illene, hogy szóljon, mint ami a forrás-dokumentum saját időjelölése (file-név) alapján vélelmezhető...
- Amennyiben pl. az objektumok, időkoordináták között aggregációs szintek vannak jelen, vagyis pl. a regionális adat 3 megye összegeként és megyénként is adott, ezek számszaki összevezethetőségét ellenőrizni kell (pl. demo).
- Azonos értékek "vadászata": kicsi a valószínűsége annak, hogy a végtelen variációs térben két/több érték azonos...
Ellenőrzési nézetek
- 2D = jelenség * év_negyedév_megye
Feltárható:
- az egyes mutatószámok időbeli rendelkezésre állásának szabályszerűsége
- az munkanélküliségi ráta esetén a negyedéves nevezéktan-csúszásból következő redundanci (pl. II.né = I.félév)
- az össz-darabszámok oszloponként ismét típushelyzetekre engednek következtetni megyénként
- 2D = jelenség * régió szűrőben mértékegység=% nézet = MAX/MIN (értelmezési intervallum letapogatása)
Feltárható:
- vannak-e irracionálisnak vélelmezhető %-os értékek, melyek téves adatrögzítésből erednek
- a téves adatrögzítés gyanúja esetén magát a megyét és a negyedévet teljesen ellenőrizni kell szisztematikus elcsúszások feltárása érdekében
- 2D = jelenség * régió fajlagos mutatókra szűrve (pl. valami/valami), nézet = MAX/MIN (értelmezési intervallum letapogatása)
Feltárható:
- vannak-e irracionálisnak vélelmezhető %-os értékek, melyek téves adatrögzítésből erednek
- a téves adatrögzítés gyanúja esetén magát a megyét és a negyedévet teljesen ellenőrizni kell szisztematikus elcsúszások feltárása érdekében
- 2D = megyénként leszűrt mutatók és idősorelemek táblázata alapján kiugró (de nem max/min) értékek keresése
Feltárható:
- vannak-e elgépelések nem irracionális intervallumokban