Dataarkitektur er modellene, retningslinjene, reglene og standardene som styrer hvilke data som samles inn og hvordan de lagres, ordnes, integreres og tas i bruk i datasystemer og organisasjoner.[1] Data er vanligvis ett av flere arkitekturdomener som danner grunnpilarene i envirksomhetsarkitektur ellerløsningsarkitektur.[2]
En dataarkitektur har som mål å få laget datastandarder for alle sine datasystemer, enten som en visjon eller modell av de fremtidige interaksjonene mellom disse datasystemene. For eksempel børdataintegrasjon avhenge av standarder for dataarkitektur, ettersom dataintegrasjon krever datainteraksjoner mellom to eller flere datasystemer. En dataarkitektur beskriver delvisdatastrukturene som brukes av en virksomhet ogapplikasjonsprogramvaren på deres datamaskiner. Dataarkitekturen retter seg mot data som er lagret, data som er i bruk, og data i bevegelse, samt beskrivelser av datalagre, datagrupper og dataelementer, ogkartlegging av disse dataartefaktene til datakvaliteter, applikasjoner, lokasjoner, og så videre.
For å oppnå måltilstanden beskriver dataarkitekturen hvordan data prosesseres, lagres og brukes i etinformasjonssystem. Dataarkitekturen gir kriterier fordataprosesserings-operasjoner for å gjøre det mulig å designedataflyter og kontrollere flyten av data i systemet.
Endataarkitekt er vanligvis ansvarlig for å definere en måltilstand, stå for samkjøring under utvikling og deretter følge opp for å sikre at forbedringer blir gjort i tråd med ånden til den opprinnelige løsningsskissen.
Når man skal definere måltilstanden søker dataarkitekturen å bryte et emne ned til "atomisk" nivå, og bygger det deretter opp igjen til ønsket form. Dataarkitekten bryter emnet ned ved å gå gjennom de tre tradisjonelle arkitektoniske stadiene:
I datakolonnen iZachman-rammeverket for virksomhetsarkitektur finner man følgende:
Lag | Perspektiv | Data ( «hva») | Interessent |
1 | Omfang / kontekstuell | Liste over ting og arkitektoniske standarder[3] som er viktige for bransjen | Planlegger |
2 | Forretningsmodell / konseptuell | Semantisk modell ellerkonseptuell/virksomhets-datamodell | Eier |
3 | Systemmodell / logisk | Virksomhets/logisk datamodell | Design |
4 | Teknisk modell / fysisk | Fysisk datamodell | Bygger |
5 | Detaljerte representasjoner | Faktiskdatabase | Utvikler |
I en annen og bredere forstand inkluderer dataarkitektur også en komplett analyse av relasjonene mellom en organisasjons funksjoner, tilgjengeligteknologi ogdatatyper.
En dataarkitektur bør defineres i planleggingsfasen av utformingen av et nytt dataprosesserings- og lagringssystem. Hovedtyper og -kilder av data som er nødvendige for å støtte virksomheten bør identifiseres på en måte som er fullstendig, konsekvent og forståelig. Det primære kravet på dette stadiet er å definere alle relevante dataenheter, og ikke å spesifiseremaskinvare. En dataenhet er en enhver relle eller abstrakt ting som en organisasjon eller enkeltperson ønsker å lagre data om.
Den fysiske dataarkitekturen for et informasjonssystem er en del av en teknologiplan. Teknologiplanen fokuserer på de faktiske håndgripelige elementene skal skal brukes i implementeringen av dataarkitekturdesignet. Fysisk dataarkitektur omfatterdatabasearkitektur. Databasearkitekturen utgjør en konseptuell modell av den faktiske databaseteknologien som vil understøtte den designede dataarkitekturen.
Enkelte elementer må defineres i designfasen av dataarkitekturen. For eksempel må man beskrive en administrativ struktur som skal etableres for å administrere dataressursene. I tillegg må metodene som skal brukes for å lagre dataene defineres, og det må genereres en beskrivelse av databaseteknologien som skal benyttes, samt en beskrivelse av prosessene som skal manipulere dataene. Det er også viktig å designegrensesnitt til dataene fra andre systemer, samt et design forinfrastruktur som skal støtte vanlige dataoperasjoner (som nødprosedyrer, dataimport,sikkerhetskopiering, ekstern overføring av data).
Uten føringer fra et velimplementert dataarkitekturdesign kan vanlige dataoperasjoner bli implementert på forskjellige måter, hvilket vil gjøre det vanskelig å forstå og kontrollere dataflyter innenfor disse systemene. Slik fragmentering er uønsket på grunn av potensial for økte kostnader og datautkoblinger. Slike utfordringer kan for eksempel oppstå i raskt voksende bedrifter eller bedrifter som har mange ulike avdelinger
En riktig utført dataarkitekturfase som en del av planleggingen av et informasjonssystem vil tvinge organisasjonen til å spesifisere og beskrive både interne og eksterne informasjonsflyter. Dette kan være mønstre som organisasjonen ikke tidligere har tatt seg tid til å konseptualisere, og det kan derfor på dette tidspunktet være mulig å identifisere kostbare informasjonsmangler, dårlige koblinger mellom avdelinger, og dårlige koblinger mellom systemer i organisasjonen som kanskje ikke har vært tydelige før dataarkitekturanalysen.[4]
Ulike begrensninger og påvirkninger vil ha en effekt på dataarkitekturdesignet. Disse inkluderer krav fra virksomheten, teknologidrivere, økonomi, forretningspolicyer og dataprosesseringsbehov.