Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Partitioning megvalósítása egy konkrét alkalmazásban Nagyméretű adattáblák szelídítése partícionálással.

Hasonló előadás


Az előadások a következő témára: "Partitioning megvalósítása egy konkrét alkalmazásban Nagyméretű adattáblák szelídítése partícionálással."— Előadás másolata:

1

2 Partitioning megvalósítása egy konkrét alkalmazásban Nagyméretű adattáblák szelídítése partícionálással

3 Bemutatkozás Szederkényi Zsolt Click On Informatikai Kft. Ügyvezető

4 Miről lesz szó? Minimális infó Click On-ról Minimális infó magáról a partícionálásról Esettanulmány Egy konkrét példán keresztül, de általános megközelítésben Nem lesznek konkrét rekordszámok, futási idők, hardware paraméterek, csak nagyságrendek

5 -ról CLICK ON Kft. kizárólag magyar tulajdonú, független technológiai vállalkozás Meghatározó tevékenység Alkalmazás és rendszerfejlesztés Tanácsadás Kompetencia területek CRM Portál megoldások Ügyfélszolgálati megoldások Dokumentum menedzsment Ügyviteli rendszerek Néhány fontosabb referencia •ISM •Középületépítő Rt. •Lattmann Kft. (St Gobain Co.) •MATÁV •MTA és intézményei •Strabag Kft. •TVK •UPC Magyarország Kft. •Vertesz Elektrronikai Kft (Group Schneider Co.) •MOL A BBJ Book Of Lists kiadványa (2003): Click On-t a 49. helyre sorolta a magyarországi fejlesztőcégek között

6 Oracle partícionálás (általános áttekintés) Rendelések tábla Hónapok szerinti felosztás Előző hónapok csak olvashatók Tartomány Lista Hash Vegyes

7 Nagyméretű adatbázisok (VLDB) támogatása vegyes partícionálással Vegyes: tartomány és lista partícionálás JAN FEB OKTOKTOKTOKT NOV DEC BpGyőrMiskolcPécsSzeged

8 Egy konkrét feladat A kihívás Egy távközlési cég hívásadatainak elemzése Limitált hardware erőforrások 7*24 adatszolgáltatás 7*24 adatbetöltés

9 Kezelendő adatok Hívásadatok legalább 1 évnyi on-line (milliárdos nagyságrend) Hívásadatok különböző forrásból Központok felől Billing rendszerekből Előfeldolgozó rendszerekből Ügyféladatok (milliós nagyságrend)

10 Feladat Különböző forrásból származó (elméletileg azonos tartalmú) hívásadatok összevetése Különböző szempontok szerinti standardizálható lekérdezések Az egész adatmennyiség folyamatos elemzése Csalásfelderítés (fraud) Adatszolgáltatási kötelezettségek … (egyszerre OLTP és Datawarehouse jellegű elemzések, lekérdezések)

11 Tervezés „1.0” (Partitioning nélkül) Táblák Hívásadatok (A, B, C), indexekkel Ügyféladatok Betöltés Batch jelleggel érkezik az input (TXT), SQLLDER Lekérdezés SQL-ekkel

12 Eredmény 1.0 : csőd! Import Egy napi adat betöltése 3 napig tart !!! Export (Backup) Megoldhatatlan Tuning Oracle varázsparaméterek Oprendszer Diszkek Memória

13 Import Szedjük le az indexeket különben lehetetlen insert-álni ennyi rekordot Az egész tábláról? Csak az aktuális idősávról Export (Backup) Bontsuk időszeletekre hisz mindig csak az újabb időszakot kell menteni Régebbi adatok törlése Bontsuk szeletekre az adatbázist, a régebbi szeletet mindig „irtsuk ki” Na még 1*! (Tervezés 2.0)

14 Megoldási lehetőségek Időszeletek Heti blokk a hívásrekordoknak Havi blokk az ügyféladatoknak Verzió A Legyen annyi tábla ahány időszak, majd a lekérdezések eldöntik melyik táblából keressenek Verzió B Funkciónként egy tábla, Oracle partíciókkal

15 Import előkészítés WEEK 1 WEEK 2 WEEK 3 WEEK 4 WEEK 5 WEEK 6 IDX INPUT állományok Előkonvertált állományok (heti file-ok) Partícionált tábla

16 Betöltés A „varázslás” Előkonvertált állományok (heti file-ok) TEMP TABLE WEEK 1 WEEK 2 WEEK 3 WEEK 4 WEEK 5 WEEK 6 IDX Partícionált tábla WEEK 3 1.sqlldr 2. INSERT /*APPEND+*/ IDX 3. CREATE INDEX 4. EXCHANGE PARTITION TEMP TABLE WEEK 3

17 Nagyságrendi méretek Partició adatok ~ 4GB adat / hét ~ 4GB index / hét WEEK 1 WEEK 2 WEEK 3 WEEK 4 WEEK 5 WEEK 6 IDX Partícionált tábla 1 1 adatforrás Heti adatmennyiség: ~4 GB Heti indexméret: ~4 GB  Hét: ~8 GB  Év: 416 GB

18 IDX Backup OLDEST WEEK WEEK 2 WEEK 3 WEEK 4 WEEK 5 WEEK 6 IDX Partícionált tábla 1 WEEK 7 WEEK. WEEK N IDX WEEK 1 Export partition OLDEST WEEK Truncate partition, drop index WEEK 2

19 Restore IDX WEEK 1 WEEK 2 WEEK 3 WEEK 4 WEEK 5 WEEK 6 IDX Partícionált tábla 1 WEEK 7 WEEK. WEEK N IDX WEEK 3 TEMP TABLE 1.sqlldr IDX 2. CREATE INDEX 3. EXCHANGE PARTITION WEEK 3IDX WEEK 3

20 Parallel query funkció Lekérdezések Sebessége nagyságrendekkel nő Futási idők csökkennek IDX week week week week week week IDX Partícionált tábla week week WEEK. WEEK N IDX SELECT * FROM TABLE WHERE DATE BETWEEN 15-JAN-2000 and 20-FEB-2000

21 Másképp? NEM! INPUT mennyiség és Forma Funkcionalitás HW

22 Van kérdés? Kérdés meghallgatása Kérdés megválaszolása Nincs kérdés Köszönöm a figyelmüket Tudom a választ? Megígérem, hogy utánanézek START

23 További információ


Letölteni ppt "Partitioning megvalósítása egy konkrét alkalmazásban Nagyméretű adattáblák szelídítése partícionálással."

Hasonló előadás


Google Hirdetések