Az ET 3NF-ben van, ha minden nemkulcs TT-a függ NORMALIZÁLÁS folyt. Az ET 3NF-ben van, ha minden nemkulcs TT-a függ a kulcstól, a teljes kulcstól és csak a kulcstól.
Azaz: nincs benne ismétlődés, részleges függés és tranzitív függés.
A NORMALIZÁLÁS TERMÉSZETE Automatizálás nem automatizálható, de támogatható segédeszközökkel egyértelműség: emberi feladat Iterációk több lépés a jó végeredményig
Valódi alternáló kulcsokat nem vizsgálunk! VEVŐ (Vevőkód, Vevőnév, Vevőcím) tfh. a Vevőnév is egyedi VEVŐ-1 (Vevőkód, Vevőcím) VEVŐ-2 (Vevőnév, Vevőcím) EZ MARHASÁG! Valódi alternáló kulcsokat nem vizsgálunk!
MAGASABB NORMÁLFORMÁK BCNF 4NF 5NF Elméleti szakemberek megoldásai gyakorlatilag nem létező problémákra
SZEMANTIKUS NORMALIZÁLÁS A szerkezetet a jelenségek természetes viszonyait (vö. fogalmi szint) mérlegelve alakítjuk át, amelynek problémáját a gépies (matematikai) normalizálás tárta föl.
SZEMANTIKUS NORMALIZÁLÁS Nem relációkat kell logikai szinten normalizálni, hanem a modellt kell fogalmi szinten optimalizálni!
PÉLDÁK Számla (kimenő) Megrendelés Casco (lineáris szerkezet) Lakások (többféle kapcsolat)
SZÁMLA (KIMENŐ)
SZÁMLA (KIMENŐ)
SZÁMLA (KIMENŐ)
SZÁMLA (KIMENŐ) VEVŐ / CIKK (N:M) VEVŐ / SZÁMLA / CIKK (1:N+N:M) VEVŐ / SZÁMLAFEJ / SZÁMLASOR CIKK / SZÁMLASOR (1:N mind)
CASCO (LINEÁRIS SZERK.) 1:1 kapcsolat ÉS NEM altípus KOCSI (Rendszám, …) CASCO (Cascoszám, …) Problémák vannak!
1. PROBLÉMA Nincs kapcsolat, pedig kellene
2. PROBLÉMA Kapcsolat VAN, pl.: KOCSI (Rendszám, Cascoszám, …) CASCO (Cascoszám, Rendszám, …) (Hmmm…)
3. PROBLÉMA KOCSI (Rendszám, Cascoszám, …) CASCO (Cascoszám, Rendszám, …) A Kocsitípus TT hová kerülne (formális normalizálás)? CIKLIKUS FÜGGÉS ESETE
MEGOLDÁS 1:1 nem mindkét oldalról kötelező alá-fölérendeltséget kell feltételezni: kiegészítő ET. (a kocsinak van casco-ja) KOCSI (Rendszám, Kocsitípus, …) CASCO (Cascoszám, Rendszám, …)
LAKÁSOK Egy lakásnak akárhány tulajdonosa lehet (1.) Egy embernek akárhány lakásban lehet tulajdonrésze (1.) Egy embernek egyetlen állandó lakcíme van egy időben (kiv.: hajléktalanok) (2.) Egy embernek egyetlen tartózkodási helye lehet egy időben (3.)
LAKÁSOK
LAKÁSOK–SZEMÉLYEK 1. Birtoklási viszony (N:M) Felbontás: BIRTOKOL (Lakásszám+Személyi szám+Mettől, Szerzés jogcíme, Tulajdoni hányad, Meddig, Megszűnés jogcíme, …)
LAKÁSOK–SZEMÉLYEK 2. Állandó lakcím, egyszerre egy, idők folyamán több (N:M) Felbontás: LAKCÍM (Lakásszám+Személyi szám+Mettől, Milyen minőségben, Meddig, …)
LAKÁSOK–SZEMÉLYEK 3. Tartózkodási hely, l. Állandó lakcím esete (lakcím=lakcím)
SAJÁTOS SZERKEZETI TÉNYEZŐK
MINŐSÉGI ADATMODELLEZÉS valósághű tükörkép korlátozott kezelő esetén is!!!
KORLÁTOZOTT KEZELŐ szerepnevek nem közönséges TT-k többszörös inhomogén kapcsolat visszamutató kapcsolat családfa egyedaltípus …
TÖBBSZÖRÖS INHOMOGÉN KAPCSOLAT …van két ET között, ha az egyike másik azonosítójának több szerepnevét tartalmazza CÍM (Címkód, …) SZEMÉLY-R (Személyazonosító, Címkód, Címkód, …) SZEMÉLY-J (Személyazonosító, Lakcímkód, Levelezési címkód, …)
TÖBBSZÖRÖS INHOMOGÉN KAPCSOLAT CÍM (Címkód, …) SZEMÉLY (Személyazonosító, …) SZEMÉLY/CÍM (Személyazonosító + Címkód, Dátumtól, Dátumig)
TÖBBSZÖRÖS INHOMOGÉN KAPCSOLAT 1. példa: M értéke mereven 2 (l. fentebb); 2. példa: M értéke akármennyi lehet, a kapcsolatnak saját jellemzői is vannak (l. filmek és alkotók).
HOMOGÉN VISZONYOK Az ET visszamutató kapcsolatban áll önmagával, ha saját szerepneve FF tőle
HOMOGÉN VISZONYOK SZEMÉLY-R (Személyazonosító, Személyazonosító) SZEMÉLY-1 (Személyazonosító, Házastárs-azonosító) (kötelezőség) SZEMÉLY-2 (Személyazonosító, Főnökazonosító) (kötelezőség)
HOMOGÉN VISZONYOK Több expliciten kifejezhető tényt nem szabad impliciten egy tényezőben tükrözni
HOMOGÉN VISZONYOK SZERZŐDŐ (Szerződőkód, …) SZERZŐDÉS-1 (Szerződésszám, …, Szerződőkód-1, Szerződőkód-2) A szerződést egy partner köti, de NÉHA házaspár is szerződik.
HOMOGÉN VISZONYOK SZERZŐDŐ (Szerződőkód, …) SZERZŐDÉS-2 (Szerződésszám, …) SZERZŐDÉS/SZERZŐDŐ (Szerződés-szám+Szerződőkód) Azaz M:N kapcsolat (holnap a kapcsolat jellemzőire is szükség lesz)
HOMOGÉN VISZONYOK SZERZŐDŐ (Szerződőkód, …) SZERZŐDÉS (Szerződésszám, …, Szerződőkód) HÁZASPÁROK (Szerződőkód-1 + Szerződőkód-2) A szerződő fél a házaspár, és nem két személy! (vö. darabjegyzék és eladás)
UNÁRIS ET NYELV-1 (Nyelvkód, Nyelv) kölcsönös függés! NYELV-2 (Nyelv)
SZÁRMAZTATOTT TT. modellezni kell, tárolni lehet (hatékonyság)
SZÁRMAZTATOTT TT. intenzionális származtatás extenzionális származtatás
INTENZIONÁLIS SZÁRM. TT-okon alapul, pl.: Tételérték=Mennyiség*Ár helye: a tényezőket tartalmazó ET-ok kulcsainak „legkisebb közös többszörösénél” RENDELÉSTÉTEL (Rendelésszám+ Cikkszám, Mennyiség)
EXTENZIONÁLIS SZÁRM. EF-okon alapul, pl.: Rendelésérték=SUM(Tételérték) helye: a tényezőket tartalmazó ET-ok kulcsainak „legnagyobb közös osztójánál” RENDELÉS (Rendelésszám, ...) RENDELÉSTÉTEL (Rendelésszám+ Cikkszám, ...)
KRITIKUS TERVEZÉSI TÉNYEZŐK
FOGALOMALKOTÁS Nevek valósághű érthető magyarul (hejesirash!!!) egyértelmű minősítés (azonosítót nem, leírót mértékletesen) egyeztetett
FOGALOMALKOTÁS Absztrakció Adott cégen belül minden fogalmat a teljes szervezet szintjén kell értelmezni vö. „Az adatmodell: 1”
kerülendő az implicit specializáció (partner–iskola) A specializációnak és generalizációnak sosem a darabszám az alapja (személy, szervezet / partner)
egy jelenség = egy fogalom = egy modellezési egység = egy név
CSOPORTOK csoportok és tagok: háló (N:M) egy csoportnak legalább 2 tagja van nem lehet ciklikus problémás implicit csoportok (alvázszám-típus) Számlaszám:=Vevőkód+Sorszám vektor
AZONOSÍTÓK sosem lehet üres/ismeretlen (részei sem)!!! RENDELÉSTÉTEL Rendelésszám+Cikkszám Rendelésszám+Tételsorszám Rendeléstétel azonosító
KÓDOK azonosító nem lehet kód, csak nagyon egyszerű esetben legvégső esetben fogalmi egyneműség (egy TT-ba nem vonhatók össze eltérő tartalmak) (Hm...) kódpozíciók szerepe (Grrrrr...)
INDEXEK a pontos fogalmi szerkezet NEM váltható ki fizikai szintű indexeléssel (vö. ismétlődő csoport)
SZEREPNEVEK szerepnév <> minősítés pl.: Vevő rendelésszám NEM szerepnév, hanem minősítés (a szállító és a vevő rendelések eltérő fogalmi lényegek!) explicit módon megadandó (lista)
BESZÉLTÜNK… modellezésről adatmodellről az adatmodell jóságáról … minimális
BESZÉLTÜNK… az adatbázis„építés” háromszemélyes társasjáték tervező/fejlesztő vezető (megrendelő) felhasználó („user”)
Mert elronthatja a felhasználó is!!! MITŐL ROSSZ MÉGIS? Mert elronthatja a felhasználó is!!!
HÁNY AZ ADATBÁZIS? Az adatMODELL mindig 1, az adatbázis lehet logikai/fizikai szinten megosztott pl. dolgozó, szakértő, ügyfél
ALKALMAZÁSI ADATSZABVÁNYOK Azonosító-szabványok Kódszabványok Írásszabványok
AZONOSÍTÓ-SZABVÁNYOK Baja: területi jelzőszám, Sopron: kötvényszám, Eger: folyó sorszám
KÓDSZABVÁNYOK cipész – „CI” cipsz – 144 suszter – „Sch” varga – SZJ 44-52-27-1
ÍRÁSSZABVÁNYOK Kovács Lajos KOVACS LAJOS dr. Kovács Lajos dr.Kovacs Lajos … Kovács Lajos dr.
EGY SZABVÁNY ANNYIT ÉR… …amennyit betartanak belőle. (Azaz ellenőrizni kell!)
MENEDZSELÉSI SZABVÁNYOK technikai váltások adatkonverzió kommunikációs monitor bemenet/kimenet/ADB emberi ellenőrzése szerkezeti épség ellenőrzése adatbiztonság (Kürt Rt.) változásmenedzselés
VÁLTOZÁSMENEDZSELÉS változás a gyártástechnológiában kényszer piaci parancs többlethaszon reménye
ADATGAZDA az ADB erőforrás az adatgazda feladatai nyilvántartást vezet az ismeretekről összhangot teremt a résztvevők és a lehetőségek között szabványok kialakítása, betartatása minőség-ellenőrzés…
ADAT-ADB-INFORMÁCIÓ fogalomalkotás egyeztetés adatszerep
ADAT-ADB-INFORMÁCIÓ 4. adatmodellezés 5. adatkonverzió (időbeli összefüggések) 6. bizonylattervezés 7. adatbevitel (ellenőrzés)
ADAT-ADB-INFORMÁCIÓ új ismeret születik 9. adatkimenet tallózó adatkezelés szelektív adatkezelés 9. adatkimenet 10. finomhangolás