Eelmises artiklis rÀÀkisin DATA VAULTi pÔhialustest, kirjeldasin DATA VAULTi pÔhielemente ja nende eesmÀrke. Kuid teema DATA VAULT ei ole ammendatud, on oluline arutada jÀrgmisi samme DATA VAULTi evolutsioonis.
Selles artiklis keskendun DATA VAULTi arengule ja ĂŒleminekule BUSINESS DATA VAULTile ehk lihtsalt BUSINESS VAULTile.
BUSINESS DATA VAULTi tekkimise pÔhjused
Oluline on mĂ€rkida, et kuigi DATA VAULTil on teatud tugevused, ei ole tal vĂ€hetĂ€htsaid puudusi. Ăks neist puudustest on analĂŒĂŒsipĂ€ringute kirjutamise keerukus. PĂ€ringutes on mĂ€rkimisvÀÀrne hulk JOIN'e, mistĂ”ttu kood muutub pikaks ja mahukaks. Samuti ei toimu DATA VAULTis sisalduvate andmete puhul mingeid muundurite rakendamist, seega ei oma DATA VAULT puhtal kujul Ă€ri seisukohalt absoluutset vÀÀrtust.
Just nende puuduste kÔrvaldamiseks on DATA VAULTi metodoloogiat laiendatud selliste elementidega nagu:
- PIT (point in time) tabelid;
- BRIDGE tabelid;
- PREDEFINED DERIVATIONS.
Vaatame neid elemente lÀhemalt.
PIT tabelid
Tavaliselt vĂ”ib ĂŒhe Ă€rilise objekti (HUB) koostises olla andmeid erineva vĂ€rskendussagedusega. NĂ€iteks, kui rÀÀgime inimese iseloomustavatest andmetest, siis vĂ”ime öelda, et telefoninumber, aadress vĂ”i e-posti aadress muutuvad sagedamini kui nĂ€iteks nimi, passiandmed, perekonnaseis vĂ”i sugu.
SeetÔttu tuleb satelliitide mÀÀramisel arvestada nende vÀrskendussagedust. Miks see on oluline?
Kui ĂŒhes tabelis hoida atribuute erineva vĂ€rskendussagedusega, tuleb iga kord, kui kĂ”ige sagedamini muutuva atribuudi vÀÀrtus uuendatakse, tabelisse rida lisada. Selle tagajĂ€rjel suureneb kettaruumi maht ja pĂ€ringute tĂ€itmise aeg.
NĂŒĂŒd, kui oleme satelliidid vĂ€rskendussageduse kaupa jaganud ja saame andmeid laadida sĂ”ltumatult, tuleb tagada vĂ”imalus saada ajakohaseid andmeid. Parim on teha seda ilma liigsete JOIN'ide kasutamiseta.
Selgitame, et nÀiteks on vajalik saada ajakohast (viimase vÀrskenduse kuupÀeva jÀrgi) teavet satelliitidelt, millel on erinev vÀrskenduse sagedus. Selleks on vajalik mitte ainult JOIN teostamine, vaid ka mitme sisemist pÀringute loomine (iga satelliidi kohta, mis sisaldab teavet) maksimaalse vÀrskenduse kuupÀeva MAX(VÀrskenduse kuupÀev) valimisega. Iga uue JOIN'iga kasvab selline kood ja muutub kiiresti arusaamatuks.
PIT tabel on mÔeldud selliste pÀringute lihtsustamiseks; PIT tabelid tÀidetakse samal ajal uute andmete salvestamisega DATA VAULT'i. PIT tabel:

Nii on meil teave andmete asjakohasuse kohta kĂ”ikide satelliitide kohta igal ajahetkel. Kasutades JOIN'e PIT tabeliga, saame tĂ€ielikult vĂ€ltida sisemisi pĂ€ringuid, tingimusel et PIT tĂ€idetakse iga pĂ€ev ja ilma vahepealseteta. Isegi kui PIT'is on vahepealseid andmete puudusi, on ajakohaste andmete saamiseks piisav ainult ĂŒhe sisemise pĂ€ringu kasutamine PIT-i juurde. Ăks sisemine pĂ€ring töötab kiiremini kui sisemised pĂ€ringud iga satelliidi kohta.
BRIDGE
BRIDGE tĂŒĂŒpi tabelid aitavad samuti analĂŒĂŒtiliste pĂ€ringute lihtsustamisel. Kuid erinevalt PIT-ist on need vahendiks, mis lihtsustab ja kiirendab pĂ€ringute tegemist erinevate hubide, linkide ja nende satelliitide vahel.
Tabel sisaldab kĂ”iki vajalikke vĂ”tmeid kĂ”igi satelliitide jaoks, mis sageli esinevad pĂ€ringutes. Lisaks vĂ”ivad vajadusel hajutatud Ă€rivĂ”tmed olla tĂ€iendatud tekstivormingus vĂ”tmetega, kui vĂ”tmete nimetused on analĂŒĂŒsiks vajalikud.
Asi on selles, et ilma BRIDGE'i kasutamiseta on erinevate hubide satelliitide andmete saamisel vajalik teostada JOIN mitte ainult satelliitide endi, vaid ka linkide vahel, mis ĂŒhendavad hubid.
BRIDGE'i olemasolu vĂ”i puudumine sĂ”ltub andmete ladustamise konfiguratsioonist ja pĂ€ringute tĂ€itmise kiirusest. Ăksikut BRIDGE'i nĂ€idet on keeruline vĂ€lja mĂ”elda.
EELMĂĂRATUD TULETUSED
Ăks veel objekti tĂŒĂŒp, mis toob meid lĂ€hemale BUSINESS DATA VAULT'ile, on tabelid, mis sisaldavad eelnevalt arvutatud nĂ€itajaid. Need tabelid on Ă€ri jaoks tĂ”eliselt olulised, sest nad sisaldavad teavet, mis on koondatud antud reeglite jĂ€rgi, ja vĂ”imaldavad sellele suhteliselt lihtsalt juurde pÀÀseda.
Arhitektuuriliselt PREDEFINED DERIVATIONS esindavad nad mitte midagi muud kui veel ĂŒht satelliiti teatud hub'i ĂŒmber. Nagu tavaline satelliit sisaldab see Ă€ri vĂ”tit ja kirje loomise kuupĂ€eva satelliidis. Siinkohal lĂ”pevad sarnasused. Sellise âspetsialiseeritudâ satelliidi atribuutide edasine koosseis mÀÀratakse Ă€ri kasutajate poolt, tuginedes kĂ”ige nĂ”utuimatele eelnevalt arvutatud nĂ€itajatele.
NÀiteks, hub, mis sisaldab teavet töötaja kohta, vÔib sisaldada satelliiti selliste nÀitajatega nagu:
- Minimaalne palk;
- Maksimaalne palk;
- Keskmine palk;
- Kogusumma arvutatud palgast jne.
On loogiline lisada PREDEFINED DERIVATIONS selle sama hub'i PIT tabelisse, et oleks lihtne saada andmevÀlju töötaja kohta valitud kuupÀeval.
KOKKUVĂTE
Kuidas praktika nÀitab, et DATA VAULTi kasutamine Àri kasutajate poolt on mitmel pÔhjusel keeruline:
- Koodi pÀringud on keerukad ja mahukad;
- Rohkus JOIN'e mÔjutab pÀringute jÔudlust;
- AnalĂŒĂŒtiliste pĂ€ringute kirjutamiseks on vajalik erakordne teadmiste tase andmete ladustamise struktuurist.
JuurdepÀÀsu lihtsustamiseks laiendatakse DATA VAULTi tÀiendavate objektidega:
- PIT (point in time) tabelid;
- BRIDGE tabelid;
- PREDEFINED DERIVATIONS.
JÀrgmisel Kavan, et rÀÀkida, minu arvates, kÔige huvitavamast, neile, kes töötavad BI'ga. Tutvustan, kuidas luua faktitabelite ja mÔÔtmetabelite aluseid DATA VAULTist.
Artikli materjalid pÔhinevad:
- VDS-l on vÔimalik installida: Kenta Graciano artikkel, kus on lisaks pÔhjalikule kirjeldusele ka mudeli skeemid;
- Raamatul: 'Building a Scalable Data Warehouse with DATA VAULT 2.0';
- Artikkel .
Allikas: habr.com
