Hva er datamodellering?
Datamodellering er prosessen med å diagrammere dataflyter.
Oversikt over datamodellering
Datamodellering er prosessen med å diagrammere dataflyter. Når du oppretter en ny eller alternativ databasestruktur, starter designeren med et diagram over hvordan data vil flyte inn i og ut av databasen. Dette flytdiagrammet brukes til å definere egenskapene til dataformatene, strukturene og databasehåndteringsfunksjonene for effektivt å støtte dataflytkravene. Etter at databasen er bygget og distribuert, lever datamodellen videre til å bli dokumentasjonen og begrunnelsen for hvorfor databasen eksisterer og hvordan dataflyten ble utformet.
Datamodellen som er et resultat av denne prosessen, gir et rammeverk av relasjoner mellom dataelementer i en database samt en veiledning for bruk av dataene. Datamodeller er et grunnleggende element i programvareutvikling og analyse. De gir en standardisert metode for å definere og formatere databaseinnhold konsekvent på tvers av systemer, slik at ulike applikasjoner kan dele de samme dataene.
Hvorfor er datamodellering viktig?
En omfattende og optimalisert datamodell bidrar til å skape en forenklet, logisk database som eliminerer redundans, reduserer lagringskrav og muliggjør effektiv henting. Det utstyrer også alle systemer med en «eneste sannhetskilde» – noe som er avgjørende for effektiv drift og god overholdelse av regelverk og lovkrav. Datamodellering er et viktig trinn i to viktige funksjoner i et digitalt foretak.
Programvareutviklingsprosjekter (nye eller tilpasninger) utført av IT-fagfolk
Før du designer og bygger et programvareprosjekt, må det være en dokumentert visjon om hvordan det endelige produktet vil se ut og hvordan det vil oppføre seg. En stor del av denne visjonen er settet med forretningsregler som styrer den ønskede funksjonaliteten. Den andre delen er databeskrivelsen – dataflytene (eller datamodellen) og databasedesignet for å støtte den.
Datamodellering holder oversikt over visjonen og gir et veikart for programvaredesignerne. Med databasen og datastrømmene fullstendig definert og dokumentert, og systemer utviklet i henhold til disse spesifikasjonene, bør systemene levere den forventede funksjonaliteten som kreves for å holde dataene nøyaktige (forutsatt at framgangsmåtene er fulgt på riktig måte.)
Analyser og visualisering – eller Business Intelligence – et primært beslutningsverktøy for brukere
Med økende datavolumer og økende antall brukere, trenger organisasjoner en måte å gjøre rådata til praktisk informasjon for beslutningstaking. Ikke overraskende har etterspørselen etter dataanalyse vokst dramatisk. Datavisualisering gjør data enda mer tilgjengelige for brukerne ved å presentere dataene grafisk.
Dagens datamodeller forvandler rådata til nyttig informasjon som kan gjøres om til dynamiske visualiseringer. Datamodellering klargjør dataene for analyse: Rens dataene, definer måltallene og dimensjonene, og utvid data ved å etablere hierarkier, definere enheter og valutaer, og legge til formler.
Hva er typene datamodellering?
De tre primære datamodelltypene er relasjonell, dimensjonal og entitetsrelasjon (E-R). Det er også flere andre som ikke er i generell bruk, inkludert hierarkisk, nettverk, objektorientert og multiverdi. Modelltypen definerer den logiske strukturen – hvordan dataene lagres, logisk – og dermed hvordan de lagres, organiseres og hentes.
- Relasjonell: Selv om "eldre" i tilnærming, den vanligste databasemodellen fortsatt i bruk i dag er relasjonell, som lagrer dataene i faste format poster og ordner data i tabeller med rader og kolonner. Den mest grunnleggende typen datamodell har to elementer: måltall og dimensjoner. Måltall er numeriske verdier, for eksempel kvanta og inntekt, som brukes i matematiske beregninger som sum eller gjennomsnitt. Dimensjoner kan være tekst eller numeriske. De brukes ikke i beregninger og inkluderer beskrivelser eller steder. Rådataene defineres som et måltall eller en dimensjon. Annen terminologi som brukes i relasjonsdatabasedesign inkluderer "relasjoner" (tabellen med rader og kolonner), "attributter" (kolonner), "tupler" (rader) og "domene" (sett av verdier tillatt i en kolonne). Selv om det finnes tilleggsvilkår og strukturelle krav som definerer en relasjonsdatabase, er den viktige faktoren relasjonene som er definert i den strukturen. Felles dataelementer (eller nøkler) kobler tabeller og datasett sammen. Tabeller kan også knyttes eksplisitt, som forhold mellom foreldre og underordnede, inkludert én-til-én-forhold, én-til-mange eller mange-til-mange.
- Dimensjonal: Mindre stiv og strukturert, den dimensjonale tilnærmingen favoriserer en kontekstuell datastruktur som er mer relatert til forretningsbruk eller kontekst. Denne databasestrukturen er optimalisert for onlinespørringer og datalagringsverktøy. Kritiske dataelementer, for eksempel et transaksjonskvantum, kalles "fakta" og ledsages av referanseinformasjon som kalles "dimensjoner", være produkt-ID, enhetspris eller transaksjonsdato. En faktatabell er en primærtabell i en dimensjonsmodell. Henting kan være rask og effektiv – med data for en bestemt type aktivitet som er lagret sammen – men mangelen på relasjonslenker kan komplisere analytisk henting og bruk av dataene. Siden datastrukturen er knyttet til forretningsfunksjonen som produserer og bruker dataene, kan det være problematisk å kombinere data produsert av ulike systemer (i et datalager).
- Entity-Rich (E-R): En E-R-modell representerer en forretningsdatastruktur i grafisk form som inneholder bokser med ulike former for å representere aktiviteter, funksjoner eller "entiteter" og linjer som representerer tilknytninger, avhengigheter eller "relasjoner". E-R-modellen blir så brukt til å opprette en relasjonsdatabase hvor hver rad representerer en entitet og feltene i den raden inneholder attributter. Som i alle relasjonsdatabaser brukes «nøkkeldataelementer» for å koble tabeller sammen.
Hva er de tre nivåene av dataabstraksjon?
Det finnes mange typer datamodeller, med ulike typer mulige oppsett. Databehandlingssamfunnet identifiserer tre typer modellering for å representere tankenivåer etter hvert som modellene utvikles.
Konseptuell datamodell
Dette er "big picture"-modellen som representerer den generelle strukturen og innholdet, men ikke detaljen i dataplanen. Det er det typiske startpunktet for datamodellering, som identifiserer de ulike datasettene og dataflyten gjennom organisasjonen. Den konseptuelle modellen er høynivå-blueprint for utvikling av de logiske og fysiske modellene og er en viktig del av dataarkitekturdokumentasjonen.
Logisk datamodell
Det andre detaljnivået er den logiske datamodellen. Det mest nært knyttet til den generelle definisjonen av "datamodell" ved at den beskriver dataflyten og databaseinnholdet. Den logiske modellen legger til detaljer til den generelle strukturen i konseptuell modell, men inkluderer ikke spesifikasjoner for selve databasen som modellen kan brukes på ulike databaseteknologier og produkter. (Vær oppmerksom på at det kanskje ikke finnes en konseptuell modell hvis prosjektet er relatert til en enkelt applikasjon eller et annet begrenset system.)
Fysisk datamodell
Den fysiske databasemodellen beskriver spesifikasjonene for hvordan den logiske modellen vil bli realisert. Den må inneholde nok detaljer for å gjøre det mulig for teknologer å lage den faktiske databasestrukturen i maskinvare og programvare for å støtte applikasjonene som vil bruke den. Det er unødvendig å si at den fysiske datamodellen er spesifikk for et utpekt databaseprogramvaresystem. Det kan være flere fysiske modeller avledet fra en enkelt logisk modell hvis forskjellige databasesystemer vil bli brukt.
Datamodelleringsprosess og -teknikker
Datamodellering er i seg selv en top-down-prosess, som starter med den konseptuelle modellen for å etablere den totale visjonen, og deretter fortsetter til den logiske modellen, og til slutt den detaljerte utformingen som finnes i den fysiske modellen.
Å bygge den konseptuelle modellen er for det meste en prosess med å konvertere ideer til en grafisk form som ligner en programmererutviklers flytskjema.
Moderne datamodelleringsverktøy kan hjelpe deg med å definere og bygge dine logiske og fysiske datamodeller og databaser. Her er noen typiske datamodelleringsteknikker og trinn:
Fastsett entiteter og opprett et entitetsrelasjonsdiagram (ERD). Entiteter kan bedre beskrives som "dataelementer av interesse for virksomheten din." For eksempel vil "kunde" være en enhet. “Salg” ville være en annen. På en ERD dokumenterer du hvordan disse ulike entitetene forholder seg til hverandre i bedriften, og hvilke forbindelser på høyt nivå som finnes mellom dem.
Definer fakta, måltall og dimensjoner. Et faktum er den delen av dataene som viser en bestemt forekomst eller transaksjon, for eksempel salget av et produkt. Måltallene dine er kvantitative, som kvantum, inntekt, kostnad og så videre. Dimensjonene dine er kvalitative måltall, for eksempel beskrivelser, lokaliseringer og datoer.
Opprett en datavisningslenke ved hjelp av et grafisk verktøy eller via SQL-spørringer. Hvis du ikke er kjent med SQL, er det grafiske verktøyet det mest intuitive alternativet, slik at du kan dra og slippe elementer inn i modellen din og bygge forbindelsene dine visuelt. Når du oppretter en visning, har du muligheten til å kombinere tabeller og til og med andre visninger til én utdata. Når du velger en kilde i den grafiske visningen og drar den oppå en kilde som allerede er knyttet til utdataene, har du muligheten til å enten koble til eller opprette en sammenslåing av disse tabellene.
Moderne analyseløsninger kan også hjelpe deg med å velge, filtrere og koble sammen datakilder ved hjelp av en grafisk dra-og-slipp-visning. Avanserte verktøy er tilgjengelige for dataeksperter som vanligvis arbeider i IT, men brukere kan også opprette egne historier ved å opprette en datamodell visuelt og organisere tabeller, diagrammer, kart og andre objekter for å fortelle en historie basert på datainnsikt.
Eksempler på datamodellering
For alle applikasjoner – enten det er forretninger, underholdning, personlige eller andre – er datamodellering et nødvendig tidlig trinn i å utforme systemet og definere infrastrukturen som trengs for å aktivere systemet. Dette omfatter alle typer transaksjonssystemer, applikasjonssett eller programpakker for databehandling eller andre systemer som samler inn, oppretter eller bruker data.
Datamodellering er nødvendig for datalagring fordi et datalager er et repository for data hentet inn fra flere kilder, som sannsynligvis har lignende eller relaterte data i forskjellige formater. Det er nødvendig å først kartlegge lagerformatene og strukturen for å bestemme hvordan hvert innkommende datasett skal manipuleres for å oppfylle behovene til lagerdesignet – slik at dataene vil være nyttige for analyse og datautvinning. Datamodellen er da en viktig tilrettelegger for analytiske verktøy, eksekutivinformasjonssystemer (dashboards), datautvinning og integrasjon med alle datasystemer og applikasjoner.
I de tidlige stadiene av design for et hvilket som helst system, er datamodellering en viktig forutsetning for at alle andre trinn og stadier avhenger av å etablere grunnlaget som alle programmer, funksjoner og verktøy er avhengige av. Datamodellen er som et felles språk som gjør det mulig for systemer å kommunisere gjennom deres forståelse og aksept av dataene som beskrevet i modellen. Dette er viktigere enn noen gang i dagens verden av Big Data, maskinlæring, kunstig intelligens, skytilkobling, IoT og distribuerte systemer, inkludert kantdatabehandling.
Utvikling av datamodellering
I en veldig reell forstand har datamodellering eksistert så lenge som databehandling, datalagring og dataprogrammering, selv om selve begrepet sannsynligvis bare kom i vanlig bruk rundt den tiden databasehåndteringssystemene begynte å utvikle seg på 1960-tallet. Det er ikke noe nytt eller nyskapende om konseptet med å planlegge og arkitektere en ny struktur. Datamodellering i seg selv har blitt mer strukturert og formalisert etter hvert som flere data, flere databaser og flere varianter av data har dukket opp.
I dag er datamodellering mer viktig enn noen gang ettersom teknologer sliter med nye kilder til data (IoT-sensorer, lokaliseringsbevisste enheter, klikkstrømmer, sosiale medier) sammen med en onrush av ustrukturerte data (tekst, lyd, video, rå sensor utgang) - i volumer og hastighet som overskrider egenskapene til tradisjonelle systemer. Det er nå en konstant etterspørsel etter nye systemer, innovative databasestrukturer og teknikker, og nye datamodeller for å knytte denne nye utviklingsinnsatsen sammen.
Hva er neste for datamodellering?
Informasjonstilkobling og store mengder data fra så mange forskjellige kilder – inkludert sensorer, tale, video, e-post og mer – utvider omfanget av modelleringsprosjekter for IT-fagfolk. Internett er selvfølgelig en av pådriverne av denne utviklingen. Skyen er en stor del av løsningen da den er den eneste databehandlingsinfrastrukturen som er stor nok, skalerbar nok og fleksibel nok til å håndtere nåværende og fremtidige krav i den voksende verden av tilkobling.
Alternativer for databasedesign er også i endring. For et tiår siden var den dominerende databasestrukturen en radorientert relasjonsdatabase ved hjelp av tradisjonell disklagringsteknologi. Dataene for en typisk ERP-hovedbok eller beholdningsstyring ble lagret i dusinvis av forskjellige tabeller som må oppdateres og modelleres. I dag lagrer moderne ERP-løsninger aktive data i minnet ved hjelp av en søyledesign for en dramatisk reduksjon i tabeller og økning i hastighet og effektivitet.
For bransjer vil de nye selvbetjeningsverktøyene som er tilgjengelige i dag, fortsette å forbedre seg. Og nye verktøy vil bli introdusert for å gjøre datamodellering og visualisering enda enklere og mer samarbeidende.
Oppsummering
En gjennomtenkt og komplett datamodell er nøkkelen til utviklingen av en virkelig funksjonell, nyttig, sikker og nøyaktig database. Start med den konseptuelle modellen for å legge ut alle komponentene og funksjonene i datamodellen. Deretter presiserer du disse planene i en logisk datamodell som beskriver dataflyten og klargjør definisjonen av hvilke data som trengs, og hvordan de skal innhentes, håndteres, lagres og distribueres. Den logiske datamodellen styrer den fysiske datamodellen som er spesifikk for et databaseprodukt, og er det detaljerte designdokumentet som styrer opprettingen av databasen og applikasjonsprogramvaren.
God datamodellering og databasedesign er avgjørende for utviklingen av funksjonelle, pålitelige og sikre applikasjonssystemer og databaser som fungerer godt med datalagre og analyseverktøy – og legger til rette for datautveksling med forretningspartnere og blant flere applikasjonssett. Velgjennomtenkte datamodeller bidrar til å sikre dataintegritet, noe som gjør bedriftens data enda mer verdifulle og pålitelige.
Utforsk moderne datamodelleringsverktøy
Koble data til forretningskontekst for å gi forretningsbrukere mulighet til å låse opp innsikt.
Ideer du ikke finner noe annet sted
Registrer deg for en dose Business Intelligence levert rett til innboksen din.