Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaCsaba Faragó Megváltozta több, mint 10 éve
1
Partitioning megvalósítása egy konkrét alkalmazásban Nagyméretű adattáblák szelídítése partícionálással
2
Bemutatkozás Szederkényi Zsolt Click On Informatikai Kft. Ügyvezető
3
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
4
-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
5
Oracle partícionálás (általános áttekintés)
Tartomány Lista Hash Vegyes Hónapok szerinti felosztás Előző hónapok csak olvashatók Rendelések tábla
6
Nagyméretű adatbázisok (VLDB) támogatása vegyes partícionálással
Vegyes: tartomány és lista partícionálás JAN FEB OKT NOV DEC Bp Győr Miskolc Pécs Szeged
7
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
8
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)
9
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)
10
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
11
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
12
Na még 1*! (Tervezés 2.0) 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”
13
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
14
Előkonvertált állományok
Import előkészítés Partícionált tábla INPUT állományok WEEK 1 IDX WEEK 2 IDX WEEK 3 IDX WEEK 4 IDX WEEK 5 IDX WEEK 6 IDX Előkonvertált állományok (heti file-ok)
15
Betöltés A „varázslás”
Előkonvertált állományok (heti file-ok) Partícionált tábla WEEK 1 IDX WEEK 3 WEEK 2 IDX TEMP TABLE WEEK 3 IDX WEEK 4 IDX WEEK 5 IDX 4. EXCHANGE PARTITION 2. INSERT /*APPEND+*/ WEEK 6 IDX WEEK 3 TEMP TABLE IDX 1.sqlldr 3. CREATE INDEX
16
Nagyságrendi méretek Partició adatok ~ 4GB adat / hét
~ 4GB index / hét 1 adatforrás Heti adatmennyiség: ~4 GB Heti indexméret: ~4 GB Hét: ~8 GB Év: 416 GB Partícionált tábla 1 WEEK 1 IDX WEEK 2 IDX WEEK 3 IDX WEEK 4 IDX WEEK 5 IDX WEEK 6 IDX
17
Backup WEEK 1 OLDEST WEEK OLDEST WEEK IDX WEEK 2 WEEK 2 IDX WEEK 2
Truncate partition, drop index WEEK 1 Partícionált tábla 1 Export partition OLDEST WEEK OLDEST WEEK IDX WEEK 2 WEEK 2 IDX WEEK 2 WEEK 3 IDX WEEK 4 IDX WEEK 5 IDX WEEK 6 IDX WEEK 7 IDX WEEK . IDX WEEK . IDX WEEK N IDX
18
Restore WEEK 1 IDX WEEK 2 IDX WEEK 3 WEEK 3 IDX IDX WEEK 4 IDX WEEK 5
Partícionált tábla 1 WEEK 1 IDX WEEK 2 IDX 3. EXCHANGE PARTITION WEEK 3 WEEK 3 IDX IDX WEEK 4 IDX 2. CREATE INDEX WEEK 5 IDX WEEK 6 IDX WEEK 3 TEMP TABLE WEEK 3 IDX WEEK 7 IDX WEEK . IDX WEEK . IDX 1.sqlldr WEEK 3 WEEK N IDX
19
Parallel query funkció
Lekérdezések Sebessége nagyságrendekkel nő Futási idők csökkennek Partícionált tábla 1 week IDX week IDX week IDX week IDX week IDX week IDX week IDX SELECT * FROM TABLE WHERE DATE BETWEEN 15-JAN-2000 and 20-FEB-2000 week IDX WEEK . IDX WEEK N IDX
20
Másképp? INPUT mennyiség és Forma NEM! Funkcionalitás HW
21
START Nincs kérdés Köszönöm a figyelmüket Van kérdés? Tudom a választ? Kérdés meghallgatása Kérdés megválaszolása Megígérem, hogy utánanézek
22
További információ www.click-on.hu 1-4690000
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.