Enhet 3 / 11

Datamodellering, Data Dictionary och Enterprise Data Architecture

Vinster:

  • Förmåga att förklara konceptuella, logiska och fysiska datamodeller och normaliseringskoncept och producera utkast till entitetsrelationer med stöd av artificiell intelligens
  • Förmåga att utforma dataordbok, affärsregel och tabellrelationer med strukturerade uppmaningar och verifiera dem mot det verkliga systemet
  • Förmåga att kritiskt utvärdera AI-genererade schemaförslag i termer av integritet, singularitet och efterlevnad av affärsregler.

Ett informationssystem är i grunden en struktur som håller data organiserad. Datamodellering är uppgiften att utforma fakta om en verksamhet (kund, order, produkt, faktura) och deras relation till varandra på ett strukturerat sätt. En bra datamodell är grunden för korrekt rapportering, snabba frågor och konsekventa data; En dålig modell är källan till år av inkonsekvens och upprepat korrigeringsarbete. För det mesta kodar MIS-proffsen inte modellen från grunden, utan verifierar att modellen följer affärsreglerna och översätter modellen mellan affärsenheten och IT.

Datamodellering fortsätter på tre abstraktionsnivåer. Den konceptuella modellen (engelska konceptuella) är den högsta nivån: vilka huvudenheter finns och hur är de relaterade? "Kunden lägger en beställning, beställningen inkluderar produkten." Det finns inga tekniska detaljer. Den logiska modellen definierar attribut (fält), nycklar och relationstyper för varje entitet; men den är fortfarande inte knuten till en specifik databasprodukt. Den fysiska modellen (engelska fysiska) är den konkreta versionen av tabellerna, datatyperna och indexen i en specifik databas (t.ex. SQL Server, PostgreSQL). Dessa tre nivåer är allt mer detaljerade versioner av samma idé.

Entitet-relation och nycklar

Grundspråket för datamodellen är Entity-Relationship (ER) modellen. Entitet kan ses som en tabell: Kund, Order. Attributet är kolumnen i tabellen: namn, e-post, belopp. Relation är hur enheter är sammankopplade: en kund kan ha många beställningar (en-till-många-relation).

Det finns två viktiga nyckelbegrepp. Primärnyckel är fältet som unikt identifierar varje rad i en tabell; till exempel kund-ID. En främmande nyckel är ett fält i en tabell som pekar på primärnyckeln i en annan tabell; Kund-ID i beställningstabellen kopplar ihop vilken kunds beställning det är. Dessa kopplingar säkerställer referensintegritet: en beställning kan inte göras för en kund som inte finns.

Tips: När du låter AI generera ett ER-utkast gör det det lättare att uttryckligen begära primärnyckeln för varje tabell och främmande nyckel för varje relation. Men verifiera varje främmande nyckel som föreslagits av modellen mot den faktiska affärsregeln: ibland är relationen du tror är "en-till-många" faktiskt "många-till-många".

Normalisering: Förhindrar återfall

Normalisering är processen att minska redundans och bevara integritet genom att dela upp data i logiska tabeller. Målet är att hålla samma information på ett ställe. Till exempel, istället för att skriva in kundadressen om och om igen i varje orderrad, behåller du adressen en gång i Kundtabellen och länkar den med en främmande nyckel från ordern. På så sätt, när adressen ändras, uppdaterar du den på ett ställe; Annars kommer hundratals beställningar att ha olika adresser. Detta kallas uppdateringsavvikelse.

Motsatsen till normalisering är denormalisering: att medvetet tillåta en viss upprepning för att rapportera hastigheten. I affärssystem (operativ databas) är normalisering i allmänhet att föredra, och i rapporteringssystem (datalager) är denormalisering ofta att föredra. Så "normalisering är inte alltid bra"; Beslutet fattas efter syftet.

Data Dictionary: Common Language

Datadictionary är ett dokument som definierar vad varje fält betyder, dess typ, begränsningar och affärsregel. Vad betyder "status"-fältet? Vilka värden kan det ta (Väntande, Godkänd, Avbruten)? Är det obligatoriskt? Utan detta dokument kommer samma fält att tolkas olika av olika team och rapporten kommer att förvrängas. Dataordboken är organisationens lingua franca och en av MIS-professionellts mest värdefulla resultat. AI kan snabbt extrahera ett första dataordboksutkast från den befintliga tabellstrukturen; Men det är bara den enhet som använder den datan som verifierar den verkliga betydelsen av varje fält.

Tre minifodral: Efter siffrorna

Fall 1 — Kostnaden för upprepning. I ett distributionsföretag hölls kundadressen separat i både order- och fakturatabellen. När en kund flyttade uppdaterades adressen i endast en tabell; 1 400 fakturor gick till den gamla adressen och återbetalades. Om adressen normaliserades i en enda tabell skulle en enda uppdatering vara tillräcklig. Saneringsprojektet kostade 2 veckor.

Fall 2 — Fel typ av relation. En MIS-expert vid en utbildningsinstitution erkände (en-till-många) förhållandet "Student tillhör en klass" i den AI-genererade modellen. Däremot kunde studenter anmäla sig till mer än en valbar klass; Relationen var faktiskt många-till-många och en mellantabell (Rekord) krävdes. Misstaget avslöjades i fält när en elev misslyckades med att skriva in sig i andra klass. Om AI:s förslag hade bekräftats skulle det ha fångats från början.

Fall 3 — Värde på dataordbok. Det fastställdes att fältet "policy_status" i ett försäkringsbolag tolkades olika av 5 olika team, så samma KPI gav 3 olika resultat i rapporterna. Genom att utarbeta en AI-driven dataordbok och uppnå enhetlig överenskommelse med affärsenheten eliminerades inkonsekvens i rapporterna och den månatliga avstämningsmötestiden minskade med 60 %.

Svag prompt / Stark prompt

Svag uppmaning:

Designa en e-handelsdatabas.

Kraftfull uppmaning:

Din roll: Du är en erfaren datamodellerare. UTFORMA EN LOGISK datamodell enligt följande affärsregler.Regler:- För varje entitet: fält, primärnyckel, obligatoriska fält.- För varje relation: typ (en-till-många / många-till-många) och främmande nyckel.- Föreslå mellantabell i många-till-många-relationer.- Normalisera form upp till; Om du rekommenderar avsiktlig denormalisering, skriv motiveringen.- Märk [BEKRÄFTELSE KRÄVS] alla affärsregler du är osäker på. Affärsregler:- Kunden kan göra flera beställningar.- En beställning innehåller flera produkter; En produkt förekommer i många beställningar.- Produkter har kategorier.[andra regler...]

Den kraftfulla uppmaningen förtydligar modellnivån (logisk), nyckel- och relationsregler, normaliseringsmål och punkter som kräver bekräftelse.

Fyra kopieringsbara mallar

1) Utkast till dataordbok:

En dataordbok följer av tabelldefinitionen. För varje fält: namn, typ, är det obligatoriskt, möjliga värden, affärsbetydelse (etikett[PREDICTION] om det är en förutsägelse). Tabell: [DDL eller fältlista]

2) Normaliseringsgranskning:

Finns det någon risk för dubbletter av data, uppdateringsavvikelser och möjlighet till normalisering i tabellstrukturen nedan? För varje fynd, skriv ner vilken normal form den bryter mot och ditt förslag. Struktur: [text]

3) ER-utkast från affärsregel:

Översätt följande affärsregler till enheter, attribut och relationer. Ange typen av varje samband (1-1, 1-N, N-N) och om N-N, föreslå en mellantabell. Markera tvetydiga regler. Regler: [text]

4) Verifieringsfrågor för relationstyp:

För varje relation i datamodellen nedan, generera en "ja/nej" företagsfråga som testar korrektheten av dess typ (t.ex. "Kan en elev vara inskriven i mer än en klass samtidigt?"). Modell: [text]

Jämförelsediagram: Modellnivåer

funktion

konceptuella

logiskt

fysiska

Detalj

åtminstone

medium

de flesta

nyckel/relation

Huvudsakliga tillgångar

Nycklar definierade

Inklusive index/typ

Beror på databas

nej

nej

Ja

målgrupp

affärsenhet

analytiker

Utvecklare/DBA

Bidrag av AI

utkast

starkt drag

Utkast, DBA-bekräftelse

Vanliga misstag

  • Tänker på en många-till-många-relation som en-till-många. Detta är det vanligaste modelleringsfelet; Om mellantabellen glöms bort kan systemet inte behålla det faktiska tillståndet.
  • Lägger allt i en tabell. Att samla alla fält i en tabell för "enkelhetens skull" producerar dubbelarbete och uppdateringsavvikelser.
  • Att inte skriva en dataordbok. Samma KPI ger olika resultat när betydelsen av fälten finns kvar i sinnet.
  • Litar blint på AI:s rekommendation av datatyper och begränsningar. Modellen kan föreslå ett "tillräckligt stort" område; Affärsregeln bestämmer de faktiska gränserna (t.ex. TR ID 11 siffror).
  • Absolutiserande normalisering. Överdriven normalisering i rapporteringsskiktet saktar ner frågan; Syftet varierar beroende på sammanhanget.
Varning: Artificiell intelligens kan producera modeller som ser snygga ut men som bryter mot affärsregler. För varje relation som föreslagits av modellen, frågan "är det verkligen så här?" Ställ en affärsfråga. Datamodellen är skelettet i systemet; En fraktur i skelettet är mycket svår att reparera senare.

Sammanfattningsvis

Datamodellering är processen att strukturera affärsfakta med enheter, attribut och relationer och fortsätter på konceptuell, logisk och fysisk nivå. Primära och främmande nycklar säkerställer referensintegritet; Normalisering minskar upprepning, men denormalisering är också legitim beroende på syftet. Dataordboken är organisationens gemensamma språk. AI ger betydande snabbhet i att producera ER-utkast, dataordböcker och normaliseringsgranskningar; relationstyper, datatyper och affärssemantik måste dock bekräftas mot den faktiska affärsregeln. Bara för att modellen ser bra ut betyder det inte att den är rätt.

Applikationsuppgift

Tänk på ett "bibliotekslånesystem": medlemmar, böcker, låneregister. (1) Få ett logiskt modellutkast framställt av den kraftfulla prompten. (2) Testa typen av varje relation som modellen föreslår (specifikt "kan en medlem ha mer än ett exemplar av samma bok?") med en affärsfråga. (3) Hitta minst en många-till-många-relation och definiera en mellantabell. (4) Skriv datalexikonrader för minst 4 fält (namn, typ, obligatorisk, affärsmässig betydelse). (5) Markera en begränsning som modellen kan ha passat in och förklara hur du skulle verifiera den.

checklista

  • [ ] Den primära nyckeln för varje tabell är definierad.
  • [ ] Jag verifierade typen av varje relation med affärsfrågan.
  • [ ] Jag definierade en mellantabell för många-till-många-relationer.
  • [ ] Jag normaliserade eller motiverade denormaliseringen av dubblettdata.
  • [ ] Jag skrev en dataordboksrad för kritiska fält.
  • [ ] Jag bekräftade AI:s datatyp/begränsningsförslag mot affärsregeln.