Tárolóhely csökkentés és folyamatoptimalizáció archiválással Csókás Péter Mentsl Attila
Tartalom Célok-eredmények Probléma felvetés Kiinduló állapot Megvalósítási koncepció Tervezett eredmények Projekt szervezete Megvalósítás Adattárolás átszervezése Tesztkörnyezetek klónozása Új, rugalmasabb mentési policy kialakítása Elért eredmények További fejlesztési ötletek 2
Célok-eredmények Célok Tárhely csökkentése (30TB) Eredmények Éles környezet: 7 TB Tesztkörnyezetek: 17,4 TB Új mentési policy: 6 TB Összesen: 30,4 TB Mentési média csökkentése (5,4TB) 13,6 TB (20%) Gyorsabb mentés/visszaállítási és release-elési folyamatok (visszatöltés -10,5 óra) Gyakoribb mentések lehetősége Gyorsabb katasztrófa visszaállás 20%-kal gyorsabb eljárás teljes mentés esetén 60%-kal gyorsabb eljárás read only táblaterek esetén 5%-kal gyorsabb release-elési eljárás táblamódosításkor Heti 1 helyett 3 mentés 30-50%-kal gyorsabb visszaállítás 3
Probléma felvetés kiinduló állapot Éles környezet 3-szorosan tükrözve (1 flash copy) Teljes méretű elfogadói, integrációs és performancia tesztkörnyezetek User táblaterek és kapcsolódó rendszerek másolásra kerülnek minden környezetre Nagy mennyiség és ehhez kapcsolódó hosszú mentési /visszatöltési idő miatt heti mentések Üzleti hiba felmerülése esetén nem reális visszaállni a mentésre, és 1-2 nap újrafuttatásával javítani Használt technológiák: Linux, Red Hat 5 Oracle Database 11.2.0.2 Enterprise Edition, Partitioning és OLAP opciók Oracle Designer, Oracle Warehouse Builder és Workflow 4
Probléma felvetés megvalósítási koncepció (tárolási kategóriák) Fontos napi adatok: 3-szor tükrözve, minden mentésben mentve (dimenzió táblák, legfrissebb, bővülő tényadatok) Felhasználói adatok: kétszeresen tükrözve, minden mentésben mentve (felhasználók táblái, kapcsolódó rendszerek táblái, stage táblák) Már nem változó, de friss adatok: read only táblaterekben kétszeresen tükrözve, mentve csak read only-ba kerüléskor illetve teljes mentéskor (ténytáblák 6 hónapnál régebbi, de aktuális éven belüli adatai) Régi illetve kevésbé fontos adatok: read only táblaterekben, egyetlen diszken, mentve csak read only-ba kerüléskor illetve teljes mentéskor (ténytáblák egy évnél régebbi adatai) 5
Probléma felvetés megvalósítási koncepció (folyamatok 1) Klónozás meghatározott adatok kerüljenek a tesztkörnyezetekre (környezetenként eltérhet) konzisztens adatbázis üzletileg indokolt időszakra visszamenőlegesen Read only táblaterek időre particionált táblák read only táblaterekben való elhelyezés (adatkörönként, de akár táblánként) Mentés Read only adatok mentése ritkábban, pl. havonta változó adatok esetén napi mentés 6
Probléma felvetés megvalósítási koncepció (folyamatok 2) Patch-elés Release-ek esetén minden módosítás megengedett heti kis release-ek érdemi megtartása Archiválás Időre particionált táblák esetén elöregítési periódus: mentés és végleges törlés Visszatöltés Archiválás megfelelő dokumentáltsága, hogy üzleti igény esetén rugalmasan visszatölthetők legyenek az adatok 7
Tervezett eredmények 140 120 100 80 60 40 20 Kiinduló kb. 75 TB-ról 30 TB-tal csökkenteni a tárterületet Puffer területet fenntartása a visszatöltések támogatására Gyorsabb mentés-visszatöltési eljárás a csökkenő online tárolt adat miatt Akár napi mentés az eddigi heti mentés helyett 0 tárterület TB pénzügyi egyenleg % kiinduló állapot / befektetés átszervezés után / megtakarítás 8
Projekt szervezete 35% 31% IT fejlsztés IT üzemeltetés Oracle Consulting 34% Erőforrások felhasználása 1/3-os arányokban Oracle Consulting: Koncepció Tanácsadás IT fejlesztés: Koncepció Adatszervezés, diskgroupok Mentési policy alapjai IT üzemeltetés Adatszervezés megvalósítása Mentési policy kialakítása 9
Megvalósítás Adattárolás átszervezése 1 Kialakított diskgroup-ok: RW_DG: felhasználói táblák, egyéb nem klónozandó adatok (éles környezet*3, performancia teszt) RW_TI_DG: tesztkörnyezetekre klónozandó (éles környezet*3, performancia, elfogadói és integrációs teszt) RO_T_DG: elfogadói tesztkörnyezetre klónozandó, read only (éles környezet*2, performancia és elfogadói teszt) RO_DG: nem klónozandó, de még nem is archivált read only (éles környezet*2, performancia teszt) Célok Tárhely csökkentése (30TB) Eredmények Éles környezet: 7 TB Tesztkörnyezetek: 17,4 TB Új mentési policy: 6 TB Összesen: 30,4 TB Mentési média csökkentése (5,4TB) 13,6 TB (20%) 10 Gyorsabb mentés és release (visszatöltés -10,5 óra) Gyakoribb mentések Gyorsabb visszaállás 20%-kal gyorsabb teljes mentés 60%-kal gyorsabb read only mentés 5%-kal gyorsabb release Heti 1 helyett 3 mentés 30-50%-kal gyorsabb visszaállítás
Megvalósítás Adattárolás átszervezése 2 Üzleti támogatással kialakított kategóriák az alábbiak tekintetében: RW_INTERVAL: milyen időszak után kerül read only-ba az adatkör TDW_CLONING_INTERVAL: milyen időszakot másolunk TDW-re NO_ARCHIVE_INTERVAL: milyen időszak után kerül az adatkör archiválásra RW_INTERVAL TDW_CLONING_INTERVAL NO_ARCHIVE_INTERVAL 1M 1Y 1Y 6M 1Y 2Y 6M 1Y ALL 0Y 1Y 2Y NONE NONE ALL ALL ALL ALL 11
Megvalósítás Tesztkörnyezetek klónozása Minden tesztkörnyezetre csak a meghatározott diskgroup-okat klónozzuk, így a folyamat gyorsabb és csak a szükséges tárterületet foglalják. Data dictionary tisztítása fizikailag nem létező adatfájlok Szükségtelen táblaterek eldobása Rendberakás: indexek újraépítése Célok Célok Eredmények Tárhely Tárhely csökkentése csökkentése Éles környezet: 7 7 TB TB (30TB) Tesztkörnyezetek: 17,4 TB TB Új Új mentési policy: 6 6 TB TB Összesen: 30,4 TB TB (16,5 m HUF) Mentési Mentési média csökkentése média csökkentése (5,4TB) 13,6 TB TB (20%, (20%) 6,2 m HUF) Gyorsabb Gyorsabb mentés mentés release és release (visszatöltés -10,5 óra) 20%-kal gyorsabb teljes mentés 60%-kal gyorsabb read only mentés 5%-kal gyorsabb release Gyakoribb Gyakoribb mentések mentések Heti 1 1 helyett 3 3 mentés 12 Gyorsabb Gyorsabb visszaállás visszaállás 30-50%-kal gyorsabb visszaállítás
Megvalósítás Új, rugalmasabb mentési policy kialakítása A projekt során heti háromszori RW mentés mellett döntöttünk kedd, csütörtök és szombat esti ütemezéssel, hétfő, szerda és péntek üzleti napok után Ez megfelelően támogatja az esetleges szükséges visszaállást RO táblatereket havonta nyitjuk fel és mentjük a 3 havi release-ek esetén valamint a köztes hónapok utolsó hétfőjén Archiválást évente egyszer végzünk, az üzleti év lezárása után, május végén az alábbiak szerint Partíciók kiforgatása egyedi táblákba archív séma alá Indexek újraépítése Szalagra írás az archív sémából Célok Célok Eredmények Tárhely Tárhely csökkentése csökkentése Éles környezet: 7 7 TB TB (30TB) Tesztkörnyezetek: 17,4 TB TB Új Új mentési policy: 6 6 TB TB Összesen: 30,4 TB TB (16,5 m HUF) Mentési Mentési média csökkentése média csökkentése (5,4TB) 13,6 TB TB (20%, (20%) 6,2 m HUF) Gyorsabb Gyorsabb mentés mentés release és release (visszatöltés -10,5 óra) 20%-kal gyorsabb teljes mentés 60%-kal gyorsabb read only mentés 5%-kal gyorsabb release Gyakoribb Gyakoribb mentések mentések Heti 1 1 helyett 3 3 mentés 13 Gyorsabb Gyorsabb visszaállás visszaállás 30-50%-kal gyorsabb visszaállítás
Megvalósítás Mentés és visszaállás gyorsulása Kiinduló állapot: 24 órás szalagra mentés 26 órás visszatöltés Arányok RW: ~ 40% RO: ~ 60% Mentés Visszaállás Utána Előtte 0 10 20 30 Célok Célok Eredmények Tárhely Tárhely csökkentése csökkentése Éles környezet: 7 TB (30TB) Tesztkörnyezetek: 17,4 TB Új mentési policy: 6 TB Összesen: 30,4 TB (16,5 m HUF) Mentési Mentési média csökkentése média csökkentése (5,4TB) 13,6 TB (20%, (20%) 6,2 m HUF) Gyorsabb Gyorsabb mentés mentés release /release (visszatöltés -10,5 óra) 20%-kal gyorsabb teljes mentés 60%-kal gyorsabb read only mentés 5%-kal gyorsabb release Gyakoribb Gyakoribb mentések mentések Heti 1 helyett 3 mentés 14 Gyorsabb Gyorsabb visszaállás visszaállás 30-50%-kal gyorsabb visszaállítás
Megvalósítás Nehézségek A projekt megvalósítása közben az egész Adattárházat át kellett költöztetni egy új infrastruktúrára a CEDC-be Ez megnehezítette az ütemezés tervezését a függőség miatt Nehezítette a tesztelést, mivel egy változó környezetben kellett ezt megtenni A projekt ideje alatt további nehézség volt a release-elés és tesztkörnyezetek klónozása, egyrészt az eltérő infrastruktúra, másrészt a különböző környezetek eltérő időpontban történő költöztetése miatt 15
Elért eredmények 180 160 140 120 100 80 60 40 20 0 tárterület TB pénzügyi egyenleg % kiinduló állapot / ráfordítás átszervezés után (terv) / megtakarítás (terv) átszervezés után (tény) / megtakarítás (tény) Összesen: 30,4 TB Éles környezet: 7 TB Tesztkörnyezetek: 17,4 TB Új mentési policy: 6 TB 13,6 TB (20%) 20%-kal gyorsabb eljárás teljes mentés esetén 60%-kal gyorsabb eljárás read only táblaterek esetén 5%-kal gyorsabb release-elési eljárás táblamódosításkor Heti 1 helyett 3 mentés 30-50%-kal gyorsabb visszaállítás 16
További fejlesztési ötletek Mentés/visszaállás és tesztkörnyezetek RW mentések (és akár RO_T_DG diskgroup) a havi RO mentések közti időszakban nem szalagra, hanem diszkre kerülnének mentésre sokkal gyorsabb mentés és visszatöltés rugalmasabb visszaállás, valóban napi mentés Elfogadói tesztkörnyezetről szükség esetén a tesztidőszakban, nagyobb mennyiségű fejlesztések telepítése után mentést készítenénk hiba esetén visszaállási lehetőség végső esetben se kelljen esetleg újra klónozni jobban tervezhető tesztelési ütemezés 17
További fejlesztési ötletek Tömörítés Projekt során egyszeri mozgatás 1 TB megtakarítást eredményezett Rendszeres mozgatás miatt ilyen mértékű javulás a jövőben nem lesz Táblák 38%-a tömörített, tömörítés mértéke kb. 4-szeres Partíciónkénti tömörítés lehetősége Exadata bevezetése esetén további nagy javulás lenne elérhető Tömörítési mód Tip. arány Elérhetőség BASIC 2-4 X Database EE; ingyen Advanced (OLTP) tranzakciós adatokhoz 2-4 X Database EE; opció Hybrid Columnar Compr. QUERY HIGH/LOW Hybrid Columnar Compr. ARCHIVE HIGH/LOW - 10 X - 50 X Exadata, SuperCluster, ZFS SA, Pillar Axiom; ingyen Exadata, SuperCluster, ZFS SA, Pillar Axiom; ingyen 18
SERVICE PROVIDER FOR 19