Pelnas:
- Gebėjimas paaiškinti konceptualius, loginius ir fizinius duomenų modelius ir normalizavimo koncepcijas bei parengti esybės santykių juodraščius, pasitelkiant dirbtinį intelektą.
- Galimybė kurti duomenų žodyno, verslo taisyklių ir lentelių ryšius su struktūriniais raginimais ir patikrinti juos su realia sistema
- Gebėjimas kritiškai įvertinti AI generuojamų schemų pasiūlymus vientisumo, išskirtinumo ir verslo taisyklių laikymosi požiūriu.
Informacinė sistema iš esmės yra struktūra, kuri tvarko duomenis. Duomenų modeliavimas – tai užduotis struktūriškai suprojektuoti verslo faktus (klientas, užsakymas, produktas, sąskaita faktūra) ir jų tarpusavio ryšį. Geras duomenų modelis yra tikslių ataskaitų teikimo, greitų užklausų ir nuoseklių duomenų pagrindas; Blogas modelis yra daugelio metų nenuoseklumo ir pasikartojančių taisymo darbų šaltinis. Dažniausiai MIS profesionalas nekoduoja modelio nuo nulio, o patikrina, ar modelis atitinka verslo taisykles, ir verčia modelį tarp verslo padalinio ir IT.
Duomenų modeliavimas vyksta trimis abstrakcijos lygiais. Koncepcinis modelis (angl. conceptual) yra aukščiausias lygis: kokie pagrindiniai subjektai egzistuoja ir kaip jie susiję? „Klientas pateikia užsakymą, į užsakymą įtraukta ir prekė“. Techninių detalių nėra. Loginis modelis apibrėžia kiekvieno objekto atributus (laukus), raktus ir ryšių tipus; tačiau jis vis tiek nėra susietas su konkrečiu duomenų bazės produktu. Fizinis modelis (anglų k. fizinis) yra konkreti lentelių, duomenų tipų ir indeksų versija konkrečioje duomenų bazėje (pvz., SQL Server, PostgreSQL). Šie trys lygiai yra vis išsamesnės tos pačios idėjos versijos.
Esybė-ryšys ir raktai
Pagrindinė duomenų modelio kalba yra subjekto ir ryšio (ER) modelis. Esybę galima įsivaizduoti kaip lentelę: Klientas, Užsakymas. Atributas yra lentelės stulpelis: vardas, el. pašto adresas, suma. Ryšys yra tai, kaip subjektai yra sujungti: klientas gali turėti daug užsakymų (santykis „vienas su daugeliu“).
Yra dvi svarbios pagrindinės sąvokos. Pirminis raktas yra laukas, unikaliai identifikuojantis kiekvieną lentelės eilutę; pavyzdžiui, Kliento ID. Išorinis raktas yra vienos lentelės laukas, nukreipiantis į kitos lentelės pirminį raktą; Kliento ID užsakymų lentelėje sujungia, kurio kliento užsakymas yra. Šios jungtys užtikrina referencinį vientisumą: užsakymas negali būti pateiktas klientui, kurio nėra.
Patarimas: kai dirbtinis intelektas sugeneruoja ER juodraštį, lengviau aiškiai paprašyti pirminio rakto kiekvienai lentelei ir išorinio rakto kiekvienam ryšiui. Tačiau patikrinkite kiekvieną modelio siūlomą išorinį raktą, kad jis atitiktų tikrąją verslo taisyklę: kartais santykiai, kurie, jūsų manymu, yra „vienas su daugeliu“, iš tikrųjų yra „daugelis su daugeliu“.
Normalizavimas: pasikartojimo prevencija
Normalizavimas – tai perteklumo mažinimo ir vientisumo išsaugojimo procesas dalijant duomenis į logines lenteles. Tikslas – tą pačią informaciją laikyti vienoje vietoje. Pavyzdžiui, užuot kiekvieną kartą įvedę kliento adresą kiekvienoje užsakymo eilutėje, vieną kartą išsaugote adresą Klientų lentelėje ir susiejate jį su užsienio raktu iš užsakymo. Tokiu būdu, pasikeitus adresui, jį atnaujinate vienoje vietoje; Priešingu atveju šimtai užsakymų turės skirtingus adresus. Tai vadinama atnaujinimo anomalija.
Normalizavimo priešingybė yra denormalizacija: sąmoningas pasikartojimų leidimas, siekiant ataskaitų greičio. Verslo sistemose (operacinėje duomenų bazėje) dažniausiai pirmenybė teikiama normalizavimui, o ataskaitų teikimo sistemose (duomenų saugykla) – denormalizavimui. Taigi „normalizacija ne visada yra gerai“; Sprendimas priimamas atsižvelgiant į tikslą.
Duomenų žodynas: bendrinė kalba
Duomenų žodynas yra dokumentas, apibrėžiantis, ką kiekvienas laukas reiškia, jo tipą, apribojimus ir verslo taisyklę. Ką reiškia „būsenos“ laukas? Kokios vertės gali būti (laukiama, patvirtinta, atšaukta)? Ar tai privaloma? Be šio dokumento tą patį lauką skirtingos komandos interpretuos skirtingai, o ataskaita bus iškraipyta. Duomenų žodynas yra organizacijos lingua franca ir vienas vertingiausių MIS profesionalo rezultatų. AI gali greitai išgauti pradinį duomenų žodyno juodraštį iš esamos lentelės struktūros; Tačiau tik tuos duomenis naudojantis vienetas patvirtina tikrąją kiekvieno lauko verslo reikšmę.
Trys mini dėklai: pagal numerius
1 atvejis – pakartojimo kaina. Paskirstymo įmonėje kliento adresas buvo laikomas atskirai tiek užsakymų, tiek sąskaitų lentelėse. Klientui persikėlus, adresas buvo atnaujintas tik vienoje lentelėje; 1400 sąskaitų faktūrų nukeliavo senuoju adresu ir buvo grąžintos. Jei adresas būtų normalizuotas vienoje lentelėje, pakaktų vieno atnaujinimo. Sutvarkymo projektas kainavo 2 savaites.
2 atvejis. Neteisingas santykių tipas. MIS ekspertas švietimo įstaigoje pripažino (vienas su daugeliu) ryšį „Studentas priklauso klasei“ AI sukurtame modelyje. Tačiau studentai galėjo stoti į daugiau nei vieną pasirenkamąją klasę; Santykiai iš tikrųjų buvo daug prieš daugelį ir reikėjo tarpinės lentelės (įrašo). Klaida atsiskleidė lauke, kai mokinys neįstojo į antrą klasę. Jei AI pasiūlymas būtų pasitvirtinęs, jis būtų gautas nuo pat pradžių.
3 atvejis. Duomenų žodyno reikšmė. Nustatyta, kad lauką „policy_status“ draudimo bendrovėje 5 skirtingos komandos interpretavo skirtingai, todėl ataskaitose tas pats KPI pateikė 3 skirtingus rezultatus. Sukūrus dirbtinio intelekto duomenų žodyną ir sudarius vienodą susitarimą su verslo padaliniu, buvo pašalintas ataskaitų nenuoseklumas, o mėnesinio derinimo susitikimo laikas sutrumpintas 60%.
Silpnas raginimas / stiprus raginimas
Silpnas raginimas:
Sukurkite elektroninės prekybos duomenų bazę.
Galingas raginimas:
Jūsų vaidmuo: Esate patyręs duomenų modeliuotojas. PAGRINDINIS LOGINIS duomenų modelis pagal šias verslo taisykles. Taisyklės:- Kiekvienam subjektui: laukai, pirminis raktas, privalomi laukai.- Kiekvienam ryšiui: tipas (vienas su daug / daug prie daugelio) ir išorinis raktas.- Pasiūlyti tarpinę lentelę santykiuose daug su daug.- 3 Normalizuoti iki įprastos formos; Jei rekomenduojate tyčinį denormalizavimą, parašykite pagrindimą.- Pažymėkite [BŪTINA PATVIRTINTI] bet kurią verslo taisyklę, dėl kurios nesate tikri.Verslo taisyklės:- Klientas gali pateikti kelis užsakymus.- Užsakyme yra keli produktai; Viena prekė pasitaiko daugelyje užsakymų.- Produktai turi kategorijas.[kitos taisyklės...]
Galingas raginimas paaiškina modelio lygį (loginį), rakto ir ryšio taisykles, normalizavimo tikslą ir taškus, kuriuos reikia patvirtinti.
Keturi kopijuojami šablonai
1) Duomenų žodyno juodraštis:
Duomenų žodyno kontūras pateikiamas iš lentelės apibrėžimo. Kiekviename lauke: pavadinimas, tipas, ar tai privaloma, galimos reikšmės, verslo reikšmė (etiketė[PREGĖJIMAS], jei tai numatymas). Lentelė: [DDL arba laukų sąrašas]
2) Normalizavimo peržiūra:
Ar toliau pateiktoje lentelės struktūroje yra duomenų pasikartojimo, atnaujinimo anomalijų ir normalizavimo galimybės? Prie kiekvieno radinio parašykite, kurią normalią formą jis pažeidžia ir savo pasiūlymą. Struktūra: [tekstas]
3) ER projektas iš verslo taisyklės:
Išverskite šias verslo taisykles į esybes, atributus ir ryšius. Nurodykite kiekvieno ryšio tipą (1-1, 1-N, N-N), o jei N-N, pasiūlykite tarpinę lentelę. Pažymėkite dviprasmiškas taisykles. Taisyklės: [tekstas]
4) Santykių tipo patvirtinimo klausimai:
Kiekvienam toliau pateiktame duomenų modelyje esančiam ryšiui sugeneruokite verslo klausimą „taip/ne“, kuris patikrins jo tipo teisingumą (pvz., „Ar mokinys gali būti įtrauktas į daugiau nei vieną klasę vienu metu?“). Modelis: [tekstas]
Palyginimo diagrama: modelių lygiai
funkcija
konceptualus
logiška
fizinis
Detalė
bent jau
vidutinis
dauguma
raktas/santykis
Pagrindinis turtas
Raktai apibrėžti
Įskaitant indeksą / tipą
Priklauso nuo duomenų bazės
ne
ne
Taip
tikslinę auditoriją
verslo padalinys
analitikas
Kūrėjas / DBA
AI indėlis
juodraštis
stiprus skersvėjis
Juodraštis, DBA patvirtinimas
Dažnos klaidos
- Apie santykius „daugelis su daugeliu“ galvoji kaip apie „vienas su daugeliu“. Tai dažniausia modeliavimo klaida; Pamiršus tarpinę lentelę, sistema negali išlaikyti tikrosios būsenos.
- Viską sudėti į vieną lentelę. Surinkus visus laukus į vieną lentelę „paprastumo“ dėlei, atsiranda dubliavimo ir atnaujinimo anomalijų.
- Nerašo duomenų žodyno. Tas pats KPI duoda skirtingus rezultatus, kai laukų reikšmė išlieka mintyse.
- Aklai pasitikėjimas AI rekomendacijomis dėl duomenų tipų ir apribojimų. Modelis gali pasiūlyti „pakankamai didelę“ sritį; Verslo taisyklė nustato faktines ribas (pvz., TR ID 11 skaitmenų).
- Absoliutizuojantis normalizavimas. Per didelis normalizavimas ataskaitų sluoksnyje sulėtina užklausą; Tikslas skiriasi priklausomai nuo konteksto.
Atsargiai: dirbtinis intelektas gali sukurti modelius, kurie atrodo gražiai, bet pažeidžia verslo taisykles. Kiekvienam modelio pasiūlytam santykiui kyla klausimas "ar tikrai taip?" Užduokite verslo klausimą. Duomenų modelis yra sistemos karkasas; Skeleto lūžį vėliau labai sunku ištaisyti.
Apibendrinant
Duomenų modeliavimas – tai verslo faktų struktūrizavimo procesas su esybėmis, atributais ir ryšiais bei pajamomis konceptualiu, loginiu ir fiziniu lygmenimis. Pirminiai ir išoriniai raktai užtikrina nuorodos vientisumą; Normalizavimas sumažina pasikartojimą, tačiau denormalizavimas taip pat yra teisėtas, priklausomai nuo tikslo. Duomenų žodynas yra bendrinė organizacijos kalba. AI užtikrina didelį greitį kuriant ER juodraščius, duomenų žodynus ir normalizavimo apžvalgas; tačiau ryšių tipai, duomenų tipai ir verslo semantika turi būti patvirtinti pagal faktinę verslo taisyklę. Tai, kad modelis atrodo gerai, dar nereiškia, kad jis tinkamas.
Taikymo užduotis
Apsvarstykite „bibliotekų skolinimo sistemą“: nariai, knygos, skolinimo įrašai. (1) Turėkite loginio modelio juodraštį, sukurtą naudojant galingą raginimą. (2) Išbandykite kiekvieno modelio siūlomo ryšio tipą (konkrečiai, „ar narys gali turėti daugiau nei vieną tos pačios knygos egzempliorių?“) su verslo klausimu. (3) Raskite bent vieną ryšį daug su daug ir apibrėžkite tarpinę lentelę. (4) Parašykite duomenų žodyno eilutes bent 4 laukeliams (pavadinimas, tipas, privaloma, verslo reikšmė). (5) Pažymėkite apribojimą, kurį modelis galėjo pritaikyti, ir paaiškinkite, kaip jį patikrintumėte.
kontrolinis sąrašas
- [ ] Kiekvienos lentelės pirminis raktas yra apibrėžtas.
- [ ] Patikrinau kiekvieno ryšio su verslo klausimu tipą.
- [ ] Apibrėžiau tarpinę lentelę santykiams „daug su daug“.
- [ ] Normalizavau arba pateisinau pasikartojančių duomenų denormalizavimą.
- [ ] Parašiau duomenų žodyno eilutę kritiniams laukams.
- [ ] Patvirtinau AI duomenų tipo / apribojimų pasiūlymus, neatitinkančius verslo taisyklės.