Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

L-iżvilupp ta' faċilità ta' ħażna hija impriża twila u serja.

Ħafna fil-ħajja ta 'proġett jiddependi fuq kemm il-mudell tal-oġġett u l-istruttura bażi huma maħsuba fil-bidu.

L-approċċ ġeneralment aċċettat kien u jibqa 'diversi varjanti tal-kombinazzjoni tal-iskema tal-istilla mat-tielet forma normali. Bħala regola, skond il-prinċipju: data inizjali - 3NF, vetrini - stilla. Dan l-approċċ, ittestjat fiż-żmien u appoġġjat minn ammont kbir ta’ riċerka, huwa l-ewwel (u xi drabi l-unika) ħaġa li tiġi f’moħħna speċjalista b’esperjenza tad-DWH meta jaħseb dwar kif għandu jkun repożitorju analitiku.

Min-naħa l-oħra, in-negozju b'mod ġenerali u r-rekwiżiti tal-klijenti b'mod partikolari għandhom tendenza li jinbidlu malajr, u d-dejta għandha t-tendenza li tikber kemm "fil-fond" kif ukoll "fil-wisa '". U dan huwa fejn jidher l-iżvantaġġ ewlieni ta 'stilla - limitat flessibilità.

U jekk fil-ħajja kwieta u komda tiegħek bħala żviluppatur DWH f'daqqa:

  • il-kompitu qamet "biex tagħmel mill-inqas xi ħaġa malajr, u mbagħad naraw";
  • deher proġett li qed jiżviluppa malajr, bil-konnessjoni ta' sorsi ġodda u ħidma mill-ġdid tal-mudell tan-negozju mill-inqas darba fil-ġimgħa;
  • deher klijent li m'għandux idea kif għandha tidher is-sistema u liema funzjonijiet għandha fl-aħħar mill-aħħar twettaq, iżda lest jesperimenta u jirfina b'mod konsistenti r-riżultat mixtieq filwaqt li jersaq eqreb lejha b'mod konsistenti;
  • Il-maniġer tal-proġett daħal bl-aħbar tajba: "U issa għandna b'aġilità!"

Jew jekk inti interessat biss li ssir taf kif inkella tista 'tibni faċilitajiet ta' ħażna - merħba lill-qatgħa!

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Xi tfisser "flessibbiltà"?

L-ewwel, ejja niddefinixxu liema proprjetajiet għandu jkollha sistema sabiex tissejjaħ "flessibbli".

Separatament, ta 'min isemmi li l-proprjetajiet deskritti għandhom jirrelataw speċifikament ma' sistema, mhux biex proċess l-iżvilupp tagħha. Għalhekk, jekk ridt taqra dwar Agile bħala metodoloġija ta 'żvilupp, huwa aħjar li taqra artikli oħra. Pereżempju, propju hemmhekk, fuq Habré, hemm ħafna materjali interessanti (bħal reviżjoni и prattikuU problematiku).

Dan ma jfissirx li l-proċess ta 'żvilupp u l-istruttura tal-maħżen tad-dejta huma kompletament mhux relatati. B'mod ġenerali, għandu jkun ferm aktar faċli li jiġi żviluppat repożitorju Aġili għal arkitettura b'aġilità. Madankollu, fil-prattika, aktar spiss ikun hemm għażliet bl-iżvilupp Agile tad-DWH klassika skond Kimbal u DataVault - skond Waterfall, milli koinċidenzi kuntenti ta 'flessibilità fiż-żewġ forom tagħha fuq proġett wieħed.

Allura, liema kapaċitajiet għandu jkollu l-ħażna flessibbli? Hemm tliet punti hawn:

  1. Kunsinna bikrija u tibdil mgħaġġel - dan ifisser li idealment l-ewwel riżultat tan-negozju (pereżempju, l-ewwel rapporti ta’ ħidma) għandu jinkiseb kemm jista’ jkun kmieni, jiġifieri, anki qabel ma s-sistema kollha tkun iddisinjata u implimentata bis-sħiħ. Barra minn hekk, kull reviżjoni sussegwenti għandha tieħu wkoll l-inqas ħin possibbli.
  2. Irfinar iterattiv - dan ifisser li kull titjib sussegwenti idealment m'għandux jaffettwa l-funzjonalità li diġà qed taħdem. Huwa dan il-mument li ħafna drabi jsir l-akbar ħmar il-lejl fuq proġetti kbar - illum jew għada, oġġetti individwali jibdew jakkwistaw tant konnessjonijiet li jsir aktar faċli li tirrepeti kompletament il-loġika f'kopja fil-qrib milli żżid qasam ma 'tabella eżistenti. U jekk tkun sorpriż li l-analiżi tal-impatt tat-titjib fuq oġġetti eżistenti tista 'tieħu aktar żmien mit-titjib innifsu, x'aktarx li għadek ma ħdimtx ma' mħażen tad-dejta kbar fil-banek jew it-telekomunikazzjoni.
  3. Naddatta b'mod kostanti għar-rekwiżiti tan-negozju li qed jinbidlu - l-istruttura ġenerali tal-oġġett għandha tkun iddisinjata mhux biss b'kont meħud tal-espansjoni possibbli, iżda bl-istennija li d-direzzjoni ta 'din l-espansjoni li jmiss lanqas biss setgħet tkun ħolma fl-istadju tad-disinn.

U iva, li jintlaħqu dawn ir-rekwiżiti kollha f'sistema waħda huwa possibbli (naturalment, f'ċerti każijiet u b'xi riżervi).

Hawn taħt ser nikkunsidra tnejn mill-metodoloġiji tad-disinn b'aġilità l-aktar popolari għall-imħażen tad-dejta - Mudell tal-ankra и Vault tad-Data. Tħallew barra mill-parentesi huma tekniki eċċellenti bħal, pereżempju, EAV, 6NF (fil-forma pura tiegħu) u dak kollu relatat ma 'soluzzjonijiet NoSQL - mhux għax huma b'xi mod agħar, u lanqas għax f'dan il-każ l-artikolu jhedded li jakkwista. il-volum tad-disser medju. Huwa biss li dan kollu jirrelata ma 'soluzzjonijiet ta' klassi kemmxejn differenti - jew ma 'tekniki li tista' tuża f'każijiet speċifiċi, irrispettivament mill-arkitettura ġenerali tal-proġett tiegħek (bħal EAV), jew globalment għal paradigmi oħra ta 'ħażna ta' informazzjoni (bħal databases tal-graffs). u għażliet oħra NoSQL).

Problemi tal-approċċ "klassiku" u s-soluzzjonijiet tagħhom f'metodoloġiji flessibbli

B'approċċ "klassiku" nifhem l-istilla antika tajba (irrispettivament mill-implimentazzjoni speċifika tas-saffi sottostanti, jalla s-segwaċi ta 'Kimball, Inmon u CDM jaħfruli).

1. Kardinalità riġida tal-konnessjonijiet

Dan il-mudell huwa bbażat fuq diviżjoni ċara tad-data fi Dimensjoni и fatti. U dan, indannat, huwa loġiku - wara kollox, l-analiżi tad-dejta fil-maġġoranza assoluta tal-każijiet tirriżulta għall-analiżi ta 'ċerti indikaturi numeriċi (fatti) f'ċerti sezzjonijiet (dimensjonijiet).

F'dan il-każ, il-konnessjonijiet bejn l-oġġetti huma stabbiliti fil-forma ta 'relazzjonijiet bejn it-tabelli bl-użu ta' ċavetta barranija. Dan jidher pjuttost naturali, iżda immedjatament iwassal għall-ewwel limitazzjoni tal-flessibbiltà - definizzjoni stretta tal-kardinalità tal-konnessjonijiet.

Dan ifisser li fl-istadju tad-disinn tal-mejda, trid tiddetermina b'mod preċiż għal kull par ta 'oġġetti relatati jekk jistgħux jirrelataw bħala ħafna għal ħafna, jew 1 għal ħafna biss, u "f'liema direzzjoni". Dan jiddetermina direttament liema tabella se jkollha ċ-ċavetta primarja u liema se jkollha ċ-ċavetta barranija. Il-bidla ta 'din l-attitudni meta jiġu riċevuti rekwiżiti ġodda x'aktarx twassal għal ħidma mill-ġdid tal-bażi.

Pereżempju, meta tfassal l-oġġett ta '"irċevuta ta' flus kontanti", int, billi sserraħ fuq il-ġuramenti tad-dipartiment tal-bejgħ, stabbilejt il-possibbiltà ta 'azzjoni promozzjoni waħda għal diversi pożizzjonijiet ta' kontroll (iżda mhux viċi versa):

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH
U wara xi żmien, il-kollegi introduċew strateġija ta 'marketing ġdida li fiha jistgħu jaġixxu fuq l-istess pożizzjoni diversi promozzjonijiet fl-istess ħin. U issa għandek bżonn timmodifika t-tabelli billi tissepara r-relazzjoni f'oġġett separat.

(L-oġġetti kollha derivati ​​li fihom il-kontroll tal-promozzjoni huwa magħqud issa jeħtieġ li jittejbu wkoll).

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH
Relazzjonijiet fil-Vault tad-Data u l-Mudell tal-Ankra

L-evitar ta 'din is-sitwazzjoni rriżulta li kien pjuttost sempliċi: m'għandekx għalfejn tafda lid-dipartiment tal-bejgħ biex tagħmel dan. il-konnessjonijiet kollha huma inizjalment maħżuna f'tabelli separati u jipproċessaha bħala ħafna għal ħafna.

Dan l-approċċ ġie propost Dan Linstedt bħala parti mill-paradigma Vault tad-Data u appoġġjat bis-sħiħ Lars Rönnbäck в Mudell tal-Ankra.

Bħala riżultat, aħna jkollna l-ewwel karatteristika distintiva ta 'metodoloġiji flessibbli:

Ir-relazzjonijiet bejn l-oġġetti mhumiex maħżuna f'attributi ta' entitajiet prinċipali, iżda huma tip separat ta' oġġett.

В Vault tad-Data dawn it-tabelli li jgħaqqdu jissejħu link, u ġewwa Mudell tal-Ankra - Tie. L-ewwel daqqa t'għajn, huma simili ħafna, għalkemm id-differenzi tagħhom ma jispiċċawx bl-isem (li se jiġi diskuss hawn taħt). Fiż-żewġ arkitetturi, it-tabelli tal-link jistgħu jgħaqqdu kwalunkwe numru ta' entitajiet (mhux neċessarjament 2).

Din is-sensja, mal-ewwel daqqa t'għajn, tipprovdi flessibilità sinifikanti għall-modifiki. Struttura bħal din issir tolleranti mhux biss għal bidliet fil-kardinalità ta 'rabtiet eżistenti, iżda wkoll għaż-żieda ta' oħrajn ġodda - jekk issa pożizzjoni ta 'kontroll għandha wkoll rabta mal-kaxxier li kissruha, id-dehra ta' rabta bħal din se sempliċement. issir add-on fuq tabelli eżistenti mingħajr ma taffettwa xi oġġetti u proċessi eżistenti.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

2. Duplikazzjoni tad-dejta

It-tieni problema solvuta minn arkitetturi flessibbli hija inqas ovvja u hija inerenti fl-ewwel lok. Kejl tat-tip SCD2 (qisien li jinbidlu bil-mod tat-tieni tip), għalkemm mhux huma biss.

F'maħżen klassiku, dimensjoni hija tipikament tabella li fiha ċavetta surrogata (bħala PK) u sett ta 'ċwievet tan-negozju u attributi f'kolonni separati.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Jekk dimensjoni tappoġġja l-verżjoni, il-konfini tal-validità tal-verżjoni huma miżjuda mas-sett standard ta' oqsma, u għal ringiela waħda fis-sors, jidhru diversi verżjonijiet fir-repożitorju (waħda għal kull bidla fl-attributi verżjoni).

Jekk dimensjoni fiha mill-inqas attribut verżjoni wieħed li jinbidel ta' spiss, in-numru ta' verżjonijiet ta' dimensjoni bħal din ikun impressjonanti (anki jekk l-attributi li jifdal ma jkunux verżjoni jew qatt ma jinbidlu), u jekk hemm diversi attributi bħal dawn, in-numru ta' verżjonijiet jista' jikbru b'mod esponenzjali min-numru tagħhom. Din id-dimensjoni tista 'tieħu ammont sinifikanti ta' spazju fuq disk, għalkemm ħafna mid-dejta li taħżen hija sempliċement duplikati ta 'valuri ta' attribut immutabbli minn ringieli oħra.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Fl-istess ħin, huwa wkoll ħafna drabi użat denormalizzazzjoni — xi attributi huma maħżuna intenzjonalment bħala valur, u mhux bħala link għal ktieb ta' referenza jew dimensjoni oħra. Dan l-approċċ iħaffef l-aċċess għad-dejta, u jnaqqas in-numru ta 'joints meta jaċċessaw dimensjoni.

Tipikament dan iwassal għal l-istess informazzjoni hija maħżuna simultanjament f'diversi postijiet. Pereżempju, informazzjoni dwar ir-reġjun ta' residenza u l-kategorija tal-klijent tista' tinħażen fl-istess ħin fid-dimensjonijiet "Klijent" u l-fatti "Xiri", "Konsenja" u "Sejħiet taċ-Ċentru tas-Sejħiet", kif ukoll fil-"Klijent - Maniġer tal-Klijent". ” tabella tal-link.

B'mod ġenerali, dan deskritt hawn fuq japplika għal dimensjonijiet regolari (mhux verżjoni), iżda f'dawk verżjoni jista 'jkollhom skala differenti: id-dehra ta' verżjoni ġdida ta 'oġġett (speċjalment retrospettivament) twassal mhux biss għall-aġġornament ta' kollha relatati tabelli, iżda għad-dehra cascading ta 'verżjonijiet ġodda ta' oġġetti relatati - meta t-Tabella 1 tintuża biex tinbena Tabella 2, u t-Tabella 2 tintuża biex tinbena Tabella 3, eċċ. Anki jekk ma jkunx involut attribut wieħed tat-Tabella 1 fil-kostruzzjoni tat-Tabella 3 (u huma involuti attributi oħra tat-Tabella 2 miksuba minn sorsi oħra), il-verżjoni ta' din il-kostruzzjoni bħala minimu twassal għal overhead addizzjonali, u fil-massimu għal żejjed. verżjonijiet fit-Tabella 3. li m'għandha x'taqsam xejn magħha, u aktar 'l isfel fil-katina.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

3. kumplessità mhux lineari ta 'xogħol mill-ġdid

Fl-istess ħin, kull storefront ġdid mibni fuq il-bażi ta 'ieħor iżid in-numru ta' postijiet fejn id-dejta tista '"diverġenti" meta jsiru bidliet fl-ETL. Dan, imbagħad, iwassal għal żieda fil-kumplessità (u fit-tul) ta’ kull reviżjoni sussegwenti.

Jekk dan ta 'hawn fuq jiddeskrivi sistemi bi proċessi ETL rari modifikati, tista' tgħix f'tali paradigma - għandek bżonn biss li tiżgura li jsiru modifiki ġodda b'mod korrett għall-oġġetti kollha relatati. Jekk ir-reviżjonijiet iseħħu ta 'spiss, il-probabbiltà li aċċidentalment "nieqsin" diversi konnessjonijiet tiżdied b'mod sinifikanti.

Jekk, barra minn hekk, nqisu li ETL "versioned" huwa sinifikament aktar ikkumplikat minn wieħed "mhux versioned", isir pjuttost diffiċli li jiġu evitati żbalji meta taġġorna ta' spiss din il-faċilità kollha.

Il-ħażna ta' oġġetti u attributi f'Data Vault u Anchor Model

L-approċċ propost mill-awturi ta 'arkitetturi flessibbli jista' jiġi fformulat kif ġej:

Huwa meħtieġ li tissepara dak li jinbidel minn dak li jibqa 'l-istess. Jiġifieri, aħżen iċ-ċwievet separatament mill-attributi.

Madankollu, wieħed m'għandux iħawwad mhux versioned attribut ma mhux mibdula: l-ewwel waħda ma taħżinx l-istorja tal-bidliet tagħha, iżda tista 'tinbidel (per eżempju, meta tikkoreġi żball ta' input jew tirċievi dejta ġdida); it-tieni waħda qatt ma tinbidel.

L-opinjonijiet huma differenti dwar x'jista' eżattament jitqies immutabbli fil-Vault tad-Data u l-Mudell tal-Ankra.

Mil-lat arkitettoniku Vault tad-Data, jistgħu jitqiesu mhux mibdula sett sħiħ ta 'ċwievet - naturali (TIN tal-organizzazzjoni, kodiċi tal-prodott fis-sistema tas-sors, eċċ.) u surrogat. F'dan il-każ, l-attributi li jifdal jistgħu jinqasmu fi gruppi skond is-sors u/jew il-frekwenza tal-bidliet u Żomm tabella separata għal kull grupp b'sett indipendenti ta' verżjonijiet.

Fil-paradigma Mudell tal-Ankra meqjusa mhux mibdula ċavetta surrogata biss essenza. Kull ħaġa oħra (inklużi ċwievet naturali) hija biss każ speċjali tal-attributi tagħha. Fejn l-attributi kollha huma indipendenti minn xulxin b'mod awtomatiku, għalhekk għal kull attribut a tabella separata.

В Vault tad-Data jissejħu tabelli li fihom ċwievet tal-entità Hubami. Il-hubs dejjem fihom sett fiss ta' oqsma:

  • Ċwievet ta 'Entità Naturali
  • Ċavetta surrogata
  • Link għas-sors
  • Irreġistra l-ħin taż-żieda

Postijiet f'Hubs qatt ma jinbidlu u ma jkollhom l-ebda verżjonijiet. Esternament, iċ-ċentri huma simili ħafna għat-tabelli tat-tip ID-mappa użati f'xi sistemi biex jiġġeneraw surrogati, madankollu, huwa rakkomandat li tuża hash minn sett ta 'ċwievet tan-negozju bħala surrogati f'Data Vault. Dan l-approċċ jissimplifika r-relazzjonijiet tat-tagħbija u l-attributi minn sorsi (l-ebda ħtieġa li tingħaqad mal-hub biex tikseb surrogat, sempliċement ikkalkula l-hash ta 'ċavetta naturali), iżda jista' jikkawża problemi oħra (relatati, pereżempju, ma 'ħabtiet, każ u mhux stampabbli). karattri fi string keys, eċċ. .p.), għalhekk mhux ġeneralment aċċettat.

L-attributi l-oħra kollha tal-entità huma maħżuna f'tabelli speċjali msejħa Satelliti. Hub wieħed jista' jkollu diversi satelliti li jaħżnu settijiet differenti ta' attributi.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Id-distribuzzjoni tal-attributi fost is-satelliti sseħħ skont il-prinċipju bidla konġunta — f'satellita waħda jistgħu jinħażnu attributi mhux verżjonati (per eżempju, data tat-twelid u SNILS għal individwu), f'ieħor - dawk b'verżjoni rari li jinbidlu (per eżempju, kunjom u numru tal-passaport), fit-tielet - dawk li jinbidlu ta' spiss (pereżempju, indirizz tal-kunsinna, kategorija, data tal-aħħar ordni, eċċ.). F'dan il-każ, il-verżjonijiet jitwettaq fil-livell ta 'satelliti individwali, u mhux l-entità kollha kemm hi, għalhekk huwa rakkomandabbli li jitqassmu attributi sabiex l-intersezzjoni tal-verżjonijiet fi ħdan satellita waħda tkun minima (li tnaqqas in-numru totali ta' verżjonijiet maħżuna. ).

Ukoll, biex jiġi ottimizzat il-proċess tat-tagħbija tad-dejta, attributi miksuba minn sorsi varji huma spiss inklużi f'satelliti individwali.

Is-satelliti jikkomunikaw mal-Hub permezz ċavetta barranija (li jikkorrispondi għal kardinalità 1-to-ħafna). Dan ifisser li valuri ta 'attribut multipli (pereżempju, numri tat-telefon ta' kuntatt multipli għal klijent wieħed) huma appoġġjati minn din l-arkitettura "default".

В Mudell tal-Ankra tabelli li jaħżnu ċwievet jissejħu Ankri. U jżommu:

  • Ċwievet surrogati biss
  • Link għas-sors
  • Irreġistra l-ħin taż-żieda

Ċwievet naturali mil-lat tal-Mudell tal-Ankra huma kkunsidrati attributi ordinarji. Din l-għażla tista 'tidher aktar diffiċli biex tinftiehem, iżda tagħti ħafna aktar skop għall-identifikazzjoni tal-oġġett.

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Pereżempju, jekk id-dejta dwar l-istess entità tista 'tiġi minn sistemi differenti, li kull waħda minnhom tuża ċ-ċavetta naturali tagħha stess. F'Data Vault, dan jista' jwassal għal strutturi pjuttost ingombranti ta' diversi ċentri (wieħed għal kull sors + verżjoni prinċipali li tgħaqqad), filwaqt li fil-mudell Anchor, iċ-ċavetta naturali ta' kull sors taqa' fl-attribut tagħha stess u tista' tintuża meta tgħabbi b'mod indipendenti minn l-oħrajn kollha.

Iżda hemm ukoll punt wieħed insidjuż hawnhekk: jekk attributi minn sistemi differenti huma kkombinati f'entità waħda, x'aktarx ikun hemm xi regoli ta '"inkullar", li biha s-sistema trid tifhem li r-rekords minn sorsi differenti jikkorrispondu għal istanza waħda tal-entità.

В Vault tad-Data dawn ir-regoli x'aktarx se jiddeterminaw il-formazzjoni “hub surrogat” tal-entità prinċipali u bl-ebda mod ma jinfluwenzaw iċ-Hubs li jaħżnu ċwievet tas-sors naturali u l-attributi oriġinali tagħhom. Jekk f'xi punt jinbidlu r-regoli tal-għaqda (jew l-attributi li bihom titwettaq jiġu aġġornati), ikun biżżejjed li jiġu fformatjati mill-ġdid iċ-ċentri surrogati.

В Mudell tal-ankra entità bħal din aktarx tkun maħżuna fi l-unika ankra. Dan ifisser li l-attributi kollha, irrispettivament minn liema sors jiġu, se jkunu marbuta mal-istess surrogat. Is-separazzjoni ta' rekords magħquda b'mod żbaljat u, b'mod ġenerali, il-monitoraġġ tar-rilevanza tal-għaqda f'sistema bħal din jistgħu jkunu ħafna aktar diffiċli, speċjalment jekk ir-regoli huma pjuttost kumplessi u jinbidlu ta' spiss, u l-istess attribut jista' jinkiseb minn sorsi differenti (għalkemm ċertament huwa possibbli, peress li kull verżjoni tal-attribut iżomm link għas-sors tagħha).

Fi kwalunkwe każ, jekk is-sistema tiegħek suppost timplimenta l-funzjonalità deduplikazzjoni, rekords li jingħaqdu u elementi MDM oħra, ta 'min tingħata attenzjoni partikolari lill-aspetti tal-ħażna ta' ċwievet naturali f'metodoloġiji b'aġilità. Huwa probabbli li d-disinn tal-Vault tad-Data aktar goff f'daqqa waħda se jkun aktar sigur f'termini ta 'żbalji ta' amalgamazzjoni.

Mudell tal-ankra jipprovdi wkoll tip ta 'oġġett addizzjonali msejjaħ għoqda huwa essenzjalment speċjali tip deġenerat ta 'ankra, li jista' jkun fih attribut wieħed biss. In-nodi suppost jintużaw biex jaħżnu direttorji ċatti (pereżempju, is-sess, l-istat ċivili, il-kategorija tas-servizz tal-konsumatur, eċċ.). B'differenza mill-Ankra, l-Għoqda m'għandha l-ebda tabelli ta' attributi assoċjati, u l-uniku attribut tiegħu (isem) huwa dejjem maħżun fl-istess tabella maċ-ċavetta. In-nodi huma konnessi mal-Ankri permezz ta 'tabelli tal-irbit (Tie) bl-istess mod kif l-Ankri huma konnessi ma' xulxin.

M'hemm l-ebda opinjoni ċara dwar l-użu ta 'Nodes. Pereżempju, Nikolay Golov, li jippromwovi b'mod attiv l-użu tal-Mudell tal-Ankra fir-Russja, jemmen (mhux irraġonevoli) li għal ebda ktieb ta' referenza wieħed jista' jiġi ddikjarat b'ċertezza li huwa dejjem se jkun statiku u ta 'livell wieħed, għalhekk huwa aħjar li immedjatament tuża Ankra sħiħa għall-oġġetti kollha.

Differenza oħra importanti bejn Data Vault u l-mudell Anchor hija d-disponibbiltà attributi tal-konnessjonijiet:

В Vault tad-Data Links huma l-istess oġġetti sħaħ bħal Hubs, u jista 'jkollhom attributi proprji. Fil Mudell tal-ankra Il-links jintużaw biss biex jgħaqqdu l-Ankri u ma jistax ikollhom l-attributi tagħhom stess. Din id-differenza tirriżulta f'approċċi ta' mmudellar differenti b'mod sinifikanti fatti, li se jiġu diskussi aktar.

Ħażna tal-fatti

Qabel dan, tkellimna prinċipalment dwar l-immudellar tal-kejl. Il-fatti huma ftit inqas ċari.

В Vault tad-Data oġġett tipiku għall-ħażna tal-fatti huwa Link, li fis-satelliti tagħha huma miżjuda indikaturi reali.

Dan l-approċċ jidher intuwittiv. Jipprovdi aċċess faċli għall-indikaturi analizzati u ġeneralment huwa simili għal tabella tal-fatti tradizzjonali (l-indikaturi biss huma maħżuna mhux fit-tabella nnifisha, iżda fit-tabella "ġirien"). Iżda hemm ukoll in-nases: waħda mill-modifiki tipiċi tal-mudell - l-espansjoni taċ-ċavetta tal-fatt - teħtieġ iżżid ċavetta barranija ġdida għal Link. U dan, imbagħad, "jkisser" il-modularità u potenzjalment jikkawża l-ħtieġa għal modifiki għal oġġetti oħra.

В Mudell tal-ankra Konnessjoni ma jistax ikollha l-attributi tagħha stess, għalhekk dan l-approċċ mhux se jaħdem - assolutament l-attributi u l-indikaturi kollha għandhom ikunu marbuta ma 'ankra waħda speċifika. Il-konklużjoni minn dan hija sempliċi - Kull fatt jeħtieġ ukoll l-ankra tiegħu stess. Għal xi wħud minn dak li aħna mdorrijin nipperċepixxu bħala fatti, dan jista 'jidher naturali - pereżempju, il-fatt ta' xiri jista 'jiġi mnaqqas perfettament għall-oġġett "ordni" jew "irċevuta", li jżuru sit għal sessjoni, eċċ. Iżda hemm ukoll fatti li għalihom mhux daqshekk faċli li ssib "oġġett ta' trasportatur" naturali bħal dan - pereżempju, il-fdalijiet ta 'merkanzija fl-imħażen fil-bidu ta' kull jum.

Għaldaqstant, il-problemi bil-modularità meta tespandi ċavetta tal-fatti fil-mudell tal-Ankra ma jinqalgħux (biżżejjed li sempliċement iżżid Relazzjoni ġdida mal-Ankra korrispondenti), iżda t-tfassil ta' mudell biex juri l-fatti huwa inqas mhux ambigwu; Ankri "artifiċjali" jistgħu jidhru li juru l-mudell tal-oġġett tan-negozju b'mod mhux ċar.

Kif tinkiseb il-flessibbiltà

Il-kostruzzjoni li tirriżulta fiż-żewġ każijiet fiha ħafna aktar tabelliminn kejl tradizzjonali. Iżda jista 'jieħu spazju fuq disk ferm inqas bl-istess sett ta 'attributi verżjoni bħad-dimensjoni tradizzjonali. Naturalment, m'hemm l-ebda maġija hawn - kollox huwa dwar in-normalizzazzjoni. Billi nqassmu attributi fuq Satelliti (fil-Vault tad-Data) jew tabelli individwali (Mudell tal-Ankra), innaqqsu (jew neliminaw kompletament) duplikazzjoni ta 'valuri ta' xi attributi meta jinbidlu oħrajn.

Għal Vault tad-Data ir-rebħ jiddependi fuq id-distribuzzjoni tal-attributi fost is-Satelliti, u għal Mudell tal-ankra — hija kważi direttament proporzjonali għan-numru medju ta' verżjonijiet għal kull oġġett ta' kejl.

Madankollu, l-iffrankar tal-ispazju huwa vantaġġ importanti, iżda mhux il-vantaġġ ewlieni tal-ħażna tal-attributi separatament. Flimkien ma 'ħażna separata ta' relazzjonijiet, dan l-approċċ jagħmel il-maħżen disinn modulari. Dan ifisser li żżid kemm attributi individwali kif ukoll oqsma ta 'suġġetti ġodda sħaħ f'mudell bħal dan jidher sovrastruttura fuq sett eżistenti ta’ oġġetti mingħajr ma jibdilhom. U dan huwa preċiżament dak li jagħmel il-metodoloġiji deskritti flessibbli.

Dan jixbah ukoll it-tranżizzjoni mill-produzzjoni tal-biċċa għall-produzzjoni tal-massa - jekk fl-approċċ tradizzjonali kull tabella tal-mudell hija unika u teħtieġ attenzjoni speċjali, allura f'metodoloġiji flessibbli diġà hija sett ta '"partijiet" standard. Min-naħa waħda, hemm aktar tabelli, u l-proċessi tat-tagħbija u l-irkupru tad-data għandhom jidhru aktar ikkumplikati. Min-naħa l-oħra, isiru tipiku. Li jfisser li jista 'jkun hemm awtomatizzati u mmexxija mill-metadata. Il-mistoqsija "kif se npoġġuha?", li t-tweġiba għaliha tista 'tieħu parti sinifikanti tax-xogħol fuq it-titjib tad-disinn, issa sempliċement mhix worth it (kif ukoll il-mistoqsija dwar l-impatt tat-tibdil tal-mudell fuq il-proċessi tax-xogħol ).

Dan ma jfissirx li l-analisti m'huma meħtieġa xejn f'sistema bħal din - xi ħadd għad irid jaħdem permezz tas-sett ta 'oġġetti b'attributi u jara fejn u kif jgħabbiha kollha. Iżda l-ammont ta 'xogħol, kif ukoll il-probabbiltà u l-ispiża ta' żball, huma mnaqqsa b'mod sinifikanti. Kemm fl-istadju tal-analiżi kif ukoll matul l-iżvilupp tal-ETL, li f'parti sinifikanti tista 'titnaqqas għall-editjar tal-metadata.

Naħa mudlama

Dan kollu ta 'hawn fuq jagħmel iż-żewġ approċċi verament flessibbli, teknoloġikament avvanzati u adattati għal titjib iterattiv. Naturalment, hemm ukoll "kanna fl-ingwent", li naħseb li diġà tista 'raden.

Id-dekompożizzjoni tad-dejta, li hija l-bażi tal-modularità ta’ arkitetturi flessibbli, twassal għal żieda fin-numru ta’ tabelli u, għaldaqstant, overhead li jingħaqad meta jittieħed kampjun. Sabiex sempliċiment tikseb l-attributi kollha ta 'dimensjoni, f'maħżen klassiku għażla waħda hija biżżejjed, iżda arkitettura flessibbli teħtieġ serje sħiħa ta' tingħaqad. Barra minn hekk, jekk dawn il-joints kollha għar-rapporti jistgħu jinkitbu minn qabel, allura l-analisti li huma mdorrijin jiktbu SQL bl-idejn se jbatu darbtejn.

Hemm diversi fatti li jagħmlu din is-sitwazzjoni aktar faċli:

Meta taħdem b'dimensjonijiet kbar, l-attributi kollha tagħha kważi qatt ma jintużaw simultanjament. Dan ifisser li jista 'jkun hemm inqas tingħaqad milli jidher mal-ewwel daqqa t'għajn lejn il-mudell. Data Vault jista' wkoll iqis il-frekwenza mistennija tal-kondiviżjoni meta jalloka attributi lis-satelliti. Fl-istess ħin, Hubs jew Ankri nfushom huma meħtieġa primarjament għall-ġenerazzjoni u l-immappjar ta’ surrogati fl-istadju tat-tagħbija u rarament jintużaw f’mistoqsijiet (dan huwa veru speċjalment għall-Ankri).

Is-sieħba kollha huma biċ-ċavetta. Barra minn hekk, mod aktar "kompressat" ta 'ħażna tad-dejta inaqqas l-overhead tat-tabelli tal-iskannjar fejn ikun meħtieġ (per eżempju, meta tiffiltra bil-valur tal-attribut). Dan jista' jwassal għall-fatt li t-teħid ta' kampjuni minn database normalizzata b'mazz ta' tingħaqad se jkun saħansitra aktar mgħaġġel mill-iskannjar ta' dimensjoni tqila waħda b'ħafna verżjonijiet għal kull ringiela.

Per eżempju, hawn fil dan L-artikolu fih test komparattiv dettaljat tal-prestazzjoni tal-mudell Anchor b'kampjun minn tabella waħda.

Jiddependi ħafna fuq il-magna. Ħafna pjattaformi moderni għandhom mekkaniżmi interni ta 'ottimizzazzjoni ta' tingħaqad. Pereżempju, MS SQL u Oracle jistgħu "jaqbżu" tingħaqad mat-tabelli jekk id-dejta tagħhom ma tintużax imkien ħlief għal tingħaqad ieħor u ma jaffettwax l-għażla finali (eliminazzjoni tabella/join), u MPP Vertica esperjenza ta’ kollegi minn Avito, wera li huwa magna eċċellenti għall-Mudell ta 'l-Ankra, minħabba xi ottimizzazzjoni manwali tal-pjan ta' mistoqsija. Min-naħa l-oħra, il-ħażna tal-Mudell tal-Ankra, pereżempju, fuq Click House, li għandha appoġġ limitat għall-unjoni, għadha ma tidherx qisha idea tajba ħafna.

Barra minn hekk, għaż-żewġ arkitetturi hemm mossi speċjali, li tagħmel l-aċċess għad-dejta aktar faċli (kemm mil-lat tal-prestazzjoni tal-mistoqsijiet kif ukoll għall-utenti finali). Pereżempju, Tabelli Point-In-Time f'Data Vault jew funzjonijiet speċjali tal-mejda fil-mudell Anchor.

B'kollox

L-essenza ewlenija tal-arkitetturi flessibbli kkunsidrati hija l-modularità tad-"disinn" tagħhom.

Hija din il-proprjetà li tippermetti:

  • Wara xi tħejjija inizjali relatata mal-iskjerament tal-metadejta u l-kitba ta' algoritmi ETL bażiċi, malajr jipprovdu lill-klijent bl-ewwel riżultat fil-forma ta 'koppja ta' rapporti li jkun fihom dejta minn ftit oġġetti sors biss. Mhuwiex meħtieġ li taħseb kompletament (anke fl-ogħla livell) il-mudell tal-oġġett kollu.
  • Mudell tad-dejta jista 'jibda jaħdem (u jkun utli) bi 2-3 oġġetti biss, u mbagħad jikbru gradwalment (dwar il-mudell tal-Ankra Nikolai applikati paragun sabiħ mal-miċelju).
  • Il-biċċa l-kbira tat-titjib, inkluż l-espansjoni tal-qasam tas-suġġett u ż-żieda ta 'sorsi ġodda ma taffettwax il-funzjonalità eżistenti u ma toħloqx riskju li tkisser xi ħaġa li diġà qed taħdem.
  • Grazzi għad-dekompożizzjoni f'elementi standard, il-proċessi ETL f'sistemi bħal dawn jidhru l-istess, il-kitba tagħhom tagħti lilha nnifisha għall-algoritmizzazzjoni u, fl-aħħar mill-aħħar, awtomazzjoni.

Il-prezz ta 'din il-flessibbiltà huwa prestazzjoni. Dan ma jfissirx li huwa impossibbli li tinkiseb prestazzjoni aċċettabbli fuq mudelli bħal dawn. Iktar iva milli le, tista 'sempliċement teħtieġ aktar sforz u attenzjoni għad-dettall biex tikseb il-metriċi li trid.

Apps

Tipi ta' entitajiet Vault tad-Data

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Aktar informazzjoni dwar Data Vault:
Il-websajt ta' Dan Lystadt
Kollha dwar Data Vault bir-Russu
Dwar Data Vault fuq Habré

Tipi ta' entitajiet Mudell tal-Ankra

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Aktar dettalji dwar il-Mudell tal-Ankra:

Websajt tal-ħallieqa ta' Anchor Model
Artiklu dwar l-esperjenza tal-implimentazzjoni tal-Mudell tal-Ankra f'Avito

Tabella fil-qosor b'karatteristiċi komuni u differenzi tal-approċċi kkunsidrati:

Ħarsa ġenerali tal-Metodoloġiji tad-Disinn Agile DWH

Sors: www.habr.com

Żid kumment