pondělí 11. ledna 2010

Data Mart pro ČNB výkaznictví

1. Popis oblasti
Data mart pro ČNB výkaznictví jinak také Regulatory reporting data mart (dále jen RRDM) vznikl na základě požadavku na vytvoření hybridního data martu od oddělení Regulatorní výkaznictví Banky. Data mart je stavěn jako nadstavba již existujícího datového skladu. V prvním kroku bylo rozhodnuto, že nově budovaný data mart bude přebírat data, která do DWH již nyní dodávají, následující systémy:
  • Systém kreditních karet
  • Systém pro běžné privátní klientské účty
  • Hlavní kniha – Finanční systém Banky
  • Klientský pobočkový systém
  • Externí data – Správa externích dat DWH
  • Finanční rekonciliace – Rekonciliace finančních dat ze zdrojových systémů a Hlavní knihy v DWH
2. Popis současného stavu
Oddělení regulatorního výkaznictví v současné době provozuje, na DWH zcela nezávislý, data mart, který slouží pro potřeby tvorby reportů pro ČNB. Tento data mart je plněn daty z různých zdrojových systémů v různé podobě a tvoří datovou základnu pro systém DaMiAs.
Data Migration Asistant (DaMiAs) je soubor programů plnících funkci rozhraní a zároveň datové pumpy, kdy vstupní část je závislá na konkrétní struktuře dat v datovém skladu. Výstupem jsou pak zpracované údaje importované do jednotné datové základny SDI.
Požadavek na nový, částečně závislý, data mart vznikl, aby došlo především k odstranění negativních důsledků aktuálního stavu:
  • Business intelligence architektura Banky nemá jednotnou platformu,
  • Zdroje nejsou vynakládány efektivně – je nakupován dodatečný hardware, v databázích jsou uložena duplicitní data,
  • Systémy nejsou podporovány ze strany úseku IT vývoj
Současná architektura datového skladu a závislých data martů v Bance vychází a je založena na metodice Ralpha Kimballa, i když ne vždy zcela dogmaticky dodržované.

3. Návrh řešení
Navrhované řešení RRDM je zobrazeno na následujícím obrázku.


Jedná se o hybridní řešení data martu, kdy struktury tabulek jsou orientované výkaznicky, tj. tabulky jsou vlastně časové řezy, vždy k ultimo měsíce. RRDM se skládá ze tří vrstev:
Závislá část RRDM (datově závislá na DWH) zahrnuje vrstvy L0 a L1. Nezávislou část (plněná a spravovaná prostřednictvím systému DaMiAs) tvoří vrstva L2. Části, na obrázku vybarvené odstíny modré barvy, budou vytvářeny a budou plněny v rámci vývoje nového inkrementu DWH.
Návrh logického datového modelu pro vrstvy L0 a L1 je znázorněn na ER diagramu:


Vrstva L1 je, z hlediska entit a jejich vazeb, téměř stejná jako L0 a liší se pouze o barevně zvýrazněné entity. Červeně označené v L1 chybí, modře označené mají v L1 jinou strukturu (liší se v atributech a případně granularitou záznamů).

3.1 Vrstva L0
Popis
Jedná se vrstvu, ve které jsou umístěny tabulky, které jsou přímo plněné z jediného zdroje – DWH. Součástí této vrstvy může být i oblast externích dat (RRDM_EXT), což jsou číselníky a převodové můstky spravované manuálně a používané pouze pro RRDM. V tomto inkrementu oblast externích dat nebude realizována, neboť nevznikl žádný požadavek na číselník pro RRDM
Tabulky jsou členěny, tam kde to má význam, podle typu účtu nebo zdroje klienta
Vrstva může obsahovat pomocné – stage tabulky pro optimalizaci zpracování dat.

Zpracování dat
Data se do této vrstvy vkládají jednou měsíčně, vždy po uzavření měsíce v DWH pro daný zdrojový systém. Data se nahrávají automaticky po jednotlivých zdrojových systémech samostatným procesem pro každý zdroj. Při nahrávání se stávající data nejprve vymažou a potom se nově vkládají.

Historie dat
Je udržována datová historie pouze pro jeden – aktuální měsíc. Data nejsou archivována.

Přístup uživatelů
Do této vrstvy mají přístup všichni uživatelé s právem pro výběr dat (select) bez možnosti data měnit. Tito uživatelé mají roli RRDM0_ALL_SELECT. Data zde lze upravovat pouze opětovným spuštěním standardního procesu nahrávání dat. (role RRDM0_ALL_CHANGE).

Umístění
Tabulky této vrstvy jsou umístěny pod uživatelem RRDM0_OWNER.

3.2 Vrstva L1
Popis
Vrstva L1 je plněna ETL procesem z vrstvy L0. Tato vrstva dále obsahuje výstupní tabulky z DaMiAs, která je dále využívána reportovacím systémem SDI. Součástí této vrstvy bude Data Correction Tool (DCT), což je pro Banku vyvinutý nástroj na opravu dat.
Tabulky jsou členěny stejně jako v L0, obsahují však navíc členění podle času – měsíční členění.
V této vrstvě budou také definovány tabulky OUT_GL_STAV_DETAIL a OUT_GL_STAV, do kterých bude systém DaMiAs vkládat data. Struktury těchto tabulek a indexy tabulky definuje Oddělení regulatorního výkaznictví. Tabulky budou mít členění podle času. Partition bude definována jako měsíční, vždy k ultimo měsíce.

Zpracování dat
Data jsou plněna na měsíční bázi. Kromě tabulek GL_ACCOUNTS, ACCOUNT FR BALANCE a GL_ACCOUNT_CLASSF_USAGES, které v L1 zcela chybí a tabulek ACCOUNT_GL_BALANCES a GL_BALANCES, které se v některých atributech odlišují, jsou tabulky shodné s vrstvou L0. Data v L1 mohou být upravována:
  • Standardním spuštěním ETL procesu
  • Manuálně prostřednictvím DCT
  • Skriptem, který všechny změny ukládá do zvláštní log tabulky, společné s DCT
V současné době DCT nemá definováno API pro logování změn v externích skriptech nebo aplikacích, proto toto aplikační rozhraní musí být připraveno v rámci vývojových prací.

Historie dat
Požadavkem uživatelů je mít data dostupná po dobu 6 měsíců přímo v databázi a po dobu 10 let z offline zálohy. Obnova ze zálohy starší 6 měsíců by se prováděla jen na základě požadavku Oddělení regulatorního výkaznictví. Pro offline zálohu je navrženo rozšíření stávajícího Operátorského prostředí DWH o možnosti archivace databáze do formátu Oracle Export nebo Oracle Data Pump. Takto extrahované archivační soubory budou uloženy v archivačním systému Banky. Po dobu, než bude vyvinuta DWH Archivace, nebudou data v RRDM mazána. Předpokládá se nasazení DWH Archivace v průběhu jednoho roku, tj. data v L1 by měla být maximálně za 12 měsíců.

Přístup uživatelů
Do této vrstvy mají přístup všichni uživatelé s právem pro výběr dat (select) bez možnosti data měnit. Tito uživatelé mají roli RRDM1_ALL_SELECT. Data zde lze upravovat pouze opětovným spuštěním standardního procesu nahrávání dat. (role RRDM1_ALL_CHANGE) nebo skriptem resp. DCT s rolí RRDM1_DC_CHANGE

Umístění
Tabulky této vrstvy jsou umístěny pod uživatelem RRDM1_OWNER. Výstupní tabulky DaMiAs potom pod uživatelem OUT_OWNER.

3.3 Vrstva L2
Popis
Vrstva L2, jedná se o nezávislou část RRDM, bude spravována a řízena systémem DaMiAs. Do této vrstvy budou data nahrávaná z vrstvy L1 a dalších systémů, které budou ve správě administrátora DaMiAs. Pro tuto vrstvu bude vyčleněn tabulkový prostor 100 GB.

Zpracování dat
Data budou zpracovávána pouze prostřednictvím systému DaMiAs. Postupy a metody tohoto zpracování nejsou součástí tohoto dokumentu a ani nejsou součástí tohoto řešení.

Historie dat

Délka historie dat je řízena systémem DaMiAs.

Přístup uživatelů

Nepředpokládá se, že do této vrstvy budou přímo přistupovat uživatelé. Veškerá správa se bude provádět prostřednictvím DaMiAs, který bude využívat vlastníka této vrstvy DAMIAS_OWNER.

Umístění

Tabulky této vrstvy budou umístěny pod uživatelem DAMIAS_OWNER

4. Změny prováděné v DWH
Tato koncepce řešení RRDM nevyžaduje žádné zásadní změny v ODS/DWH kromě následujících:
  • Budou doplněny procesy pro plnění a čištění tabulek RRDM do Operátorské konzole DWH
  • Bude doplněna funkčnost Operátorského prostředí o DWH Archivaci
  • Pro optimalizaci plnění - L0 mohou být v DWH vytvářeny dočasné – stage tabulky
  • Externí číselníky klasifikací budou doplněny o nové typy

5. Požadavky na DaMiAs
Pro správnou práci s výstupními OUT tabulkami ve vrstvě L1 musí systém umožňovat tyto aktivity:
  • Správu partition v OUT tabulkách (přidání nové, smazání obsahu – truncate)
  • Správu indexů OUT tabulky (enable/disable/analyse)
V případě práce s daty – masivního vkládání nebo změny záznamů, se doporučuje nejprve provést zneplatnění indexů a jejich opětovné uvedení do provozu s přepočtem statistik, po dokončení změn v tabulce.
Rušení partition bude prováděno v rámci procesu Purge strategie RRDM.
V případě požadavku na změnu struktury OUT tabulky, bude postupována standardním změnovým řízením.
V rámci akceptačních testů musí proběhnout integrační testy s DaMiAs.
Mezi RRDM a „starou“ DaMiAs databází bude vytvořen veřejný databázový link Pro využívání tohoto linku musí být na cílové straně vytvořen uživatel se stejným jménem a heslem jako na straně RRDM.

6. Shrnutí řešení
Celá koncepce hybridního data martu je navržena tak, aby byla snadno rozšiřitelná o další zdrojové systémy, což se i v dalších inkrementech předpokládá. Pro zpětné ověření dat bude, po dobu než dojde k převedení agendy všech zdrojových systému, která reporting vyžaduje, do RRDM zpřístupněno původní „starý“ DaMiAs data mart to prostřednictvím databázového linku.

Obecné výhody navrženého řešení jsou:
  • Využití existujícího hardware, resp. jeho sdílení. Pokud bude nutné jeho posílení investice je provedena pouze na jednom místě
  • Standardizovaná platforma (Oracle / UNIX)
  • Je vyřešeno předání do provozu, zálohování a denní provoz
  • Je zajištěna produkční podpora závislé části


Jiří Zamouřil (Oracle Consulting)

Žádné komentáře: