pat, mat in 40 sql-ov
DESCRIPTION
Pat, Mat In 40 SQL-ov. Kje so izvorni podatki, kako jih prenašamo v podatkovno skladišče? Kaj bi storili drugače, če bi vedeli to kar vemo danes? Vidne in skrite rezerve (časa in prostora). Kdo je ubil Lauro Palmer?. 113 Dimenzij in 15 Dejstev 951 Polj 97 GB 44 PL/SQL programov - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/1.jpg)
PAT, MAT IN 40 SQL-OV
Marko Antloga
Boštjan Begelj
Ljubljana, 2.junij.2004
![Page 2: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/2.jpg)
2
Pat, Mat In 40 SQL-ov
• Kje so izvorni podatki, kako jih prenašamo v podatkovno skladišče?
• Kaj bi storili drugače, če bi vedeli to kar vemo danes?
• Vidne in skrite rezerve (časa in prostora).
• Kdo je ubil Lauro Palmer?
![Page 3: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/3.jpg)
3
Nekaj statistike za uvod
113 Dimenzij in 15 Dejstev951 Polj 97 GB 44 PL/SQL programovOracle 8.1.7OpenVMS 7.3150.000 zapisov dnevno
![Page 4: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/4.jpg)
4
Polnjenje iz zunanjih datotek
![Page 5: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/5.jpg)
5
Polnjenje iz drugih urejenih virov podatkov (manjše baze, preglednice…)
![Page 6: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/6.jpg)
6
Polnjenje iz relacijske baze (transakcijskega sistema)
![Page 7: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/7.jpg)
7
Običajen PL/SQL stavek
DECLAREBEGINEND
DECLARE ime_proc VARCHAR2 (20) := '&1';
CURSOR c_cenik_2 (p_cenik_id NUMBER) IS SELECT fcenik0_cenik0_id,
apg_cenik_pd.artikel(fcenik0_cenik0_id) FROM kis_fcenik0_cenik0 WHERE fcenik0_cenik0_id = p_cenik_id FOR UPDATE;
PROCEDURE kis_fcenik0_cenik0_insert (ddatspr_danlet_ds_in IN kis_fcenik0_cenik0.ddatspr_danlet_ds%TYPE ... ) IS BEGIN INSERT INTO kis_fcenik0_cenik0 ... END kis_fcenik0_cenik0_insert;
![Page 8: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/8.jpg)
8
BEGIN FOR i IN c_cenik_1 LOOP st_select := st_select + 1; FOR j IN c_cenik_2 (i.cenik_id) LOOP DELETE FROM kis_fcenik0_cenik0 WHERE CURRENT OF c_cenik_2; st_update := st_update + 1; END LOOP; st_insert := st_insert + 1; END LOOP;
cas_zacetka_prog := SYSDATE; ime_sistema := tpg_apl001_kas.gl_name; tpg_floging_loging.p001 (izvprg_o); -- INSERT /*+ APPEND + PARALLEL*/ INTO kas_dmkzkup_mkzkup (...) SELECT /*+ PARALLEL(kis_dmkzkup_mkzkup,120) */ ... FROM kis_dmkzkup_mkzkup; -- st_insert := SQL%ROWCOUNT; tpg_apl001_kas.trunc_table ('kis_dmkzkup_mkzkup'); -- dbms_izpis (ime_cilja); cas_konca_stavka := SYSDATE;
END;
…
![Page 9: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/9.jpg)
9
Vmesno območje (ki ga varujejo modre čelade)
• Označevanje že prenesenih podatkov
• Ključi v transakcijski bazi in podatkovnem skladišču
• Nadzor prenosa
• Popravki zgodovine oz. dodajanje atributov
![Page 10: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/10.jpg)
10
Vidne in skrite rezerve (časa in prostora)
• Paralelno izvajanje več SQL stavkov
• Polnjenje tabel
• Particioniranje tabel
• Pregled indeksov
• Uporaba agregatov
![Page 11: Pat, Mat In 40 SQL-ov](https://reader034.vdocuments.pub/reader034/viewer/2022052308/56814ba0550346895db87ccf/html5/thumbnails/11.jpg)
11
ZAKLJUČEK