Enhed 3 / 11

Datamodellering, Data Dictionary og Enterprise Data Architecture

Gevinster:

  • Evne til at forklare konceptuelle, logiske og fysiske datamodeller og normaliseringskoncepter og producere udkast til entitetsforhold med støtte fra kunstig intelligens
  • Evne til at udarbejde dataordbog, forretningsregler og tabelrelationer med strukturerede prompter og verificere dem mod det rigtige system
  • Evne til kritisk at evaluere AI-genererede skemaforslag med hensyn til integritet, singularitet og overholdelse af forretningsregler.

Et informationssystem er i bund og grund en struktur, der holder data organiseret. Datamodellering er opgaven med at designe en virksomheds fakta (kunde, ordre, produkt, faktura) og deres forhold til hinanden på en struktureret måde. En god datamodel er grundlaget for nøjagtig rapportering, hurtige forespørgsler og konsistente data; En dårlig model er kilden til mange års inkonsistens og gentagne korrektionsarbejde. Det meste af tiden koder MIS-professionalen ikke modellen fra bunden, men verificerer, at modellen overholder forretningsreglerne og oversætter modellen mellem forretningsenheden og IT.

Datamodellering foregår på tre abstraktionsniveauer. Den konceptuelle model (engelsk konceptuel) er det højeste niveau: hvilke hovedenheder eksisterer, og hvordan hænger de sammen? "Kunden afgiver en ordre, ordren inkluderer produktet." Der er ingen tekniske detaljer. Den logiske model definerer hver enheds attributter (felter), nøgler og relationstyper; men det er stadig ikke bundet til et specifikt databaseprodukt. Den fysiske model (engelsk fysisk) er den konkrete version af tabellerne, datatyperne og indekserne i en specifik database (f.eks. SQL Server, PostgreSQL). Disse tre niveauer er mere og mere detaljerede versioner af den samme idé.

Entitet-relation og nøgler

Datamodellens grundlæggende sprog er Entity-Relationship (ER) modellen. Entitet kan opfattes som en tabel: Kunde, Ordre. Attributten er kolonnen i tabellen: navn, e-mail, beløb. Relation er, hvordan enheder er forbundet: en kunde kan have mange ordrer (en-til-mange-relation).

Der er to kritiske nøglebegreber. Primær nøgle er det felt, der unikt identificerer hver række i en tabel; for eksempel KundeID. En fremmednøgle er et felt i en tabel, der peger på den primære nøgle i en anden tabel; Kunde-ID'et i ordretabellen forbinder hvilken kundes ordre det er. Disse forbindelser sikrer referentiel integritet: en ordre kan ikke afgives til en kunde, der ikke eksisterer.

Tip: Når AI'en skal generere et ER-udkast, gør det det nemmere eksplicit at anmode om primærnøglen for hver tabel og fremmednøglen for hver relation. Men kontroller hver fremmednøgle foreslået af modellen i forhold til den faktiske forretningsregel: nogle gange er forholdet, du tror er "en-til-mange", faktisk "mange-til-mange".

Normalisering: Forebyggelse af tilbagefald

Normalisering er processen med at reducere redundans og bevare integriteten ved at opdele data i logiske tabeller. Målet er at opbevare den samme information ét sted. For eksempel, i stedet for at indtaste kundeadressen igen og igen i hver ordrelinje, beholder du adressen én gang i Kundetabellen og forbinder den med en fremmednøgle fra ordren. På denne måde, når adressen ændres, opdaterer du den ét sted; Ellers vil hundredvis af ordrer have forskellige adresser. Dette kaldes opdateringsanomali.

Det modsatte af normalisering er denormalisering: bevidst tillade nogle gentagelser for at rapportere hastigheden. I forretningssystemer (operationel database) foretrækkes normalisering generelt, og i rapporteringssystemer (data warehouse) foretrækkes denormalisering ofte. Så "normalisering er ikke altid godt"; Beslutningen træffes efter formålet.

Dataordbog: Fællessprog

Dataordbog er et dokument, der definerer, hvad hvert felt betyder, dets type, begrænsninger og forretningsregel. Hvad betyder "status"-feltet? Hvilke værdier kan det tage (afventer, godkendt, annulleret)? Er det obligatorisk? Uden dette dokument vil det samme felt blive fortolket forskelligt af forskellige teams, og rapporten vil blive forvrænget. Dataordbogen er organisationens lingua franca og en af ​​MIS-professionelles mest værdifulde leverancer. AI kan hurtigt udtrække et indledende dataordbogsudkast fra den eksisterende tabelstruktur; Men kun den enhed, der bruger disse data, verificerer den sande forretningsmæssige betydning af hvert felt.

Tre minietuier: Efter numrene

Sag 1 — Omkostningerne ved gentagelse. I et distributionsselskab blev kundeadressen holdt adskilt i både ordre- og fakturatabellerne. Når en kunde flyttede, blev adressen kun opdateret i én tabel; 1.400 fakturaer gik til den gamle adresse og blev refunderet. Hvis adressen blev normaliseret i en enkelt tabel, ville en enkelt opdatering være tilstrækkelig. Saneringsprojektet kostede 2 uger.

Case 2 — Forkert type forhold. En MIS-ekspert i en uddannelsesinstitution anerkendte (en-til-mange) forholdet "Student tilhører en klasse" i den AI-genererede model. Eleverne kunne dog tilmelde sig mere end én valgfri klasse; Relationen var faktisk mange-til-mange, og en mellemtabel (Record) var påkrævet. Fejlen blev afsløret i feltet, da en elev undlod at melde sig ind i anden klasse. Hvis AI's forslag var blevet bekræftet, ville det være blevet fanget fra starten.

Tilfælde 3 — Værdi af dataordbog. Det blev fastslået, at feltet "policy_status" i et forsikringsselskab blev fortolket forskelligt af 5 forskellige teams, så den samme KPI gav 3 forskellige resultater i rapporterne. Ved at udarbejde en AI-drevet dataordbog og opnå ensartet aftale med forretningsenheden, blev rapportinkonsekvens elimineret, og den månedlige afstemningsmødetid blev reduceret med 60 %.

Svag prompt / stærk prompt

Svag prompt:

Design en e-handelsdatabase.

Kraftig prompt:

Din rolle: Du er en erfaren datamodeller. UDSKRIFT til en LOGISK datamodel i henhold til følgende forretningsregler.Regler:- For hver enhed: felter, primærnøgle, obligatoriske felter.- For hver relation: type (en-til-mange / mange-til-mange) og fremmednøgle.- Foreslå mellemtabel i mange-til-mange relationer.- Normalisere form op til; Hvis du anbefaler bevidst denormalisering, så skriv begrundelsen.- Mærk [BEKRÆVELSE KRÆVET] enhver forretningsregel, du er usikker på. Forretningsregler:- Kunden kan afgive flere ordrer.- En ordre indeholder flere produkter; Ét produkt forekommer i mange ordrer.- Produkter har kategorier.[andre regler...]

Den kraftfulde prompt tydeliggør modelniveauet (logisk), nøgle- og relationsregler, normaliseringsmål og punkter, der kræver bekræftelse.

Fire kopierbare skabeloner

1) Udkast til dataordbog:

En dataordbogsoversigt følger af tabeldefinitionen. For hvert felt: navn, type, er det obligatorisk, mulige værdier, forretningsmæssig betydning (etiket[PREDICTION], hvis det er en forudsigelse). Tabel: [DDL eller feltliste]

2) Normaliseringsgennemgang:

Er der nogen risiko for duplikatdata, opdateringsanomali og mulighed for normalisering i tabelstrukturen nedenfor? For hvert fund skal du skrive ned, hvilken normal form det overtræder og dit forslag. Struktur: [tekst]

3) ER-udkast fra forretningsregel:

Oversæt følgende forretningsregler til enheder, attributter og relationer. Angiv typen af ​​hvert forhold (1-1, 1-N, N-N), og hvis N-N, foreslå en mellemtabel. Marker tvetydige regler. Regler: [tekst]

4) Spørgsmål til bekræftelse af relationstype:

For hver relation i datamodellen nedenfor skal du generere et "ja/nej"-forretningsspørgsmål, der tester rigtigheden af dens type (f.eks. "Kan en elev være tilmeldt mere end én klasse på samme tid?"). Model: [tekst]

Sammenligningsskema: Modelniveauer

funktion

konceptuelle

logisk

fysisk

Detalje

i hvert fald

medium

de fleste

nøgle/relation

Hovedaktiver

Nøgler defineret

Inklusiv indeks/type

Afhænger af databasen

nej

nej

Ja

målgruppe

forretningsenhed

analytiker

Udvikler/DBA

Bidrag af AI

udkast

stærkt træk

Udkast, DBA-bekræftelse

Almindelige fejl

  • Tænker på et mange-til-mange forhold som en-til-mange. Dette er den mest almindelige modelleringsfejl; Hvis mellemtabellen glemmes, kan systemet ikke bevare den faktiske tilstand.
  • At lægge alt i ét bord. At samle alle felter i én tabel for "enkelhedens skyld" producerer duplikering og opdateringsanomalier.
  • Ikke at skrive en dataordbog. Den samme KPI giver forskellige resultater, når betydningen af ​​felterne forbliver i sindet.
  • Blind tillid til AI's anbefaling af datatyper og begrænsninger. Modellen kan foreslå et "stort nok" område; Forretningsreglen bestemmer de faktiske grænser (f.eks. TR ID 11 cifre).
  • Absolutiserende normalisering. Overdreven normalisering ved rapporteringslaget sænker forespørgslen; Formålet varierer afhængigt af konteksten.
Forsigtig: Kunstig intelligens kan producere modeller, der ser pæne ud, men som overtræder forretningsregler. For hvert forhold foreslået af modellen, spørgsmålet "er det virkelig sådan?" Stil et forretningsspørgsmål. Datamodellen er skelettet i systemet; Et brud i skelettet er meget vanskeligt at reparere senere.

Sammenfattende

Datamodellering er processen med at strukturere forretningsfakta med enheder, attributter og relationer og fortsætter på konceptuelt, logisk og fysisk niveau. Primære og fremmede nøgler sikrer referentiel integritet; Normalisering reducerer gentagelse, men denormalisering er også legitim afhængig af formålet. Dataordbogen er organisationens fælles sprog. AI giver betydelig hastighed i at producere ER-udkast, dataordbøger og normaliseringsgennemgange; dog skal relationstyper, datatyper og forretningssemantik bekræftes i forhold til den faktiske forretningsregel. Bare fordi modellen ser godt ud, betyder det ikke, at den er rigtig.

Ansøgningsopgave

Overvej et "bibliotekslånesystem": medlemmer, bøger, låneoptegnelser. (1) Få et logisk modeludkast fremstillet af den kraftfulde prompt. (2) Test typen af ​​hvert forhold, modellen foreslår (specifikt, "kan et medlem have mere end én kopi af den samme bog?") med et forretningsspørgsmål. (3) Find mindst én mange-til-mange-relation og definer en mellemtabel. (4) Skriv dataordbogslinjer for mindst 4 felter (navn, type, obligatorisk, forretningsmæssig betydning). (5) Fremhæv en begrænsning, som modellen kan have passet, og forklar, hvordan du ville verificere den.

tjekliste

  • [ ] Den primære nøgle for hver tabel er defineret.
  • [ ] Jeg bekræftede typen af ​​hvert forhold med forretningsspørgsmålet.
  • [ ] Jeg definerede en mellemtabel for mange-til-mange relationer.
  • [ ] Jeg normaliserede eller begrundede denormaliseringen af ​​duplikerede data.
  • [ ] Jeg skrev en dataordbogslinje for kritiske felter.
  • [ ] Jeg bekræftede AI's datatype/begrænsningsforslag i forhold til forretningsreglen.