A relációs adatmodell

Az adatok struktúrálása

  • mögötte: halmazelméleti relációk elmélete
  • reláció
  • adott n halmaz
  • halmazokban található értékek 1-1 domain(tartományból) kerülnek ki
  • a tartományok Descartes-szorzatában megtalálhatók mindazok a (v1,v2,...vn) n-esek amelykre igaz hogy viEDi, Vi=1,2..n-re.
  • reláció lehet az így keletkezett n-eseknek a tetsz részhalmaza
  • a relációt névvel látjuk el
  • pl.: r1 = {(1,y),(1,z),(3,z)}, r2 = {(2,y),(1,z)}

  • sem a domain, sem az elemek sorrendjének nincs jelentősége
  • a hasznos információt az hordozza, hogy az egyes relációkban, ill. egy reláció elemeiben mely értékeket tároljuk együtt
  • ábr: táblázatos formában
  • oszlopokat hozzárendeljük a tartományokhoz
  • attrb kardinalitás: az egyes atrb különböző ártákeinek száma
  • táblázat sora: reléció elemei
  • fejléc: attribútum
  • az adatelemekhez rendelkező információt az hordozza, hogy milyen neveket adunk az attrib-nak
  • az egyes attrb értékekhez rendelhető inf. bizonytalan
  • további inf: a reláció egyazon elemének attribútumértékei összetartoznak
  • súlyos hiba: a relációkhoz kapcsolódó szemantika nem definiált kellőképp
  • relációs séma: melyik relációba milyen attrb találhatók
  • jel: R(A1,A2,...An)
    -pl : SZEMÉLY(NÉV,KOR,FOGLALKOZÁS)
  • r(R): r reláció sémája R
  • adatbázis séma: a relációs sémák összességének neve, amelyet az adatbázis tartalmaz
  • reláció foka: a relécióban levő oszlopok száma
  • reláció számossága: a relációban levő sorok számossága
  • nem tart két azonos sort egy reláció
  • az oszlopoknak egyértemlű nevük van

Műveletek relációkon

  • műveletek meghatározásával válik teljessé
  • ezen műveletkeeből épül fel a relációs algebra

Egyesítés, unió

  • feltétele: az egyesítendő relációk sémáinak ua attribútumból kell állniuk
  • DE: nem kell azonosnak lenniük
  • nem biztos, hogy névvel is azonosíthatóak lesznek

Különbségképzés

  • same megkötések
  • metszetet felesleges bevezetni mert: A ∩ B = A \ (A \ B).

Descartes-sorzat

  • r1xr2: az összes olyan (n1+n2)-esekből áll, amelyeknek első n1 attrb, az első operandusból, második n2 attrb a második opr származik, ebben a rögzített sorrendben
  • nincs megkötés

Vetítés

  • egyoperandusos művelet
  • a reláció össze rekordjának egyes attrb megtartjuk, a többit töröljük

Kiválasztás

  • egyoperandusos
  • részhalmaz képzése az r reláción, vezérlésére egy logikai formula szolgál
  • r rel minden elemére kiértékeljük
  • azon elemeket vesszük be az új relációba, melyre a formula igaz értéket vesz fel
  • jel:: σF(r), ahol az F logikai formula a szelekciós feltétel
  • a logikai formula kvantor mentes
  • tart: konstansok vagy R attrb azonosítói, aritmetikai összehasonlító operátorokat, logikai operátorokat

Természetes illesztés

  • adott 2 reláció, melynek van 1/ több megeggyező nevő attrb-a
  • sorra vesszük a 2 reláció minden rekordját és kiválasztjuk azokat, amelyek érték szerint is megegyznek
  • összefűzzük olyan rekorddá, amelyben mindkét relációban szereplő azonos nevű és értékú attrb csak egyszer lesz figyelembe véve
  • származtatott művelet
  • ki lehet fejezni alapműveleteink segítségével is: Legyen R és S a két adott reláció sémája. Legyenek X1,X2,...,Xn az azonos attribútumnevek. Ekkor
    r 1 s = πR∪Sσ(R.X1=S.X1)∧...∧(R.Xn=S.Xn)(r × s)
  • közös nevű attrb esetében Descartes szorzatba megy át
  • külső illesztés: a hiányzó adatok helyén null érték fog állni

Θ-illesztés

  • legyen r és s két reláció Θ pedig egy kvantormentes feltétel, amelyet az r és s relációk 1-1 attrb között definiálunk
  • a táblák Descartes szorzatából az értelmezett Θ feltétel szerint választottunk ki sorokat.
  • t = σΘ(r × s)

Hányados

  • jelölje r÷s azt a relációt, amelyre igaz az, hogy az s-sel alkotott Descartes-szorzata a lehető legbővebb részhalmaza r-nek: (r÷s)×s ⊆ r

Relációs lekérdező nyelvek

  • a legtöbb relációs db-kezelő rendszer lekérdező nyelve
    • relációs algebra(ISBL)
    • relációs sorkalkulus (QUEL)
  • relációs oszlopkalkulus(SQL,QBE)
  • a nyelvek részben algebra részben logikai, kalkulus jellegűek

Relációs sorkalkulus

  • egy elsőrendű nyelv, amely tehát kvantorokat is tartalmazhat
    • a kvantorok sorvektor változókat kvantifikálnak(számszerűsítenek)
  • a nyelv szimbólumaiból atomakat hozhatunk létre, amelyek formulákká építhetők, a formulák pedig egy kifejezésbe építve alkalmasak arra, hogy segítségükkel relációkat írjunk le

Szimbólumai

  • zárójelek: (, )
  • aritmetikai relációjelek: <, >, =, ̸=, ≤, ≥
  • logikai műveleti jelek: ¬, ∧, ∨
  • sorváltozók s^(n), n változós
  • sorváltozók komponensei: s(n)[i], ahol <=i<=n
  • (konstans) relációk: R(m), m változós
  • konstansok: c
  • kvantorok: ∃, ∀

Atomok

  • R(m)(s(m))
  • s(n)[i]Θu(k)[j], ahol 1 ≤ i ≤ n, 1 ≤ j ≤ k és Θ aritmetikai relációjel
  • s(n)[i] Θ c
  • R(n)(c1,c2,..., cn)

Formulák

  • minden atom formula
  • ha Ψ1 és Ψ2 formulák, akkor Ψ1 ∧ Ψ2, Ψ1 ∨ Ψ2, ¬Ψ1 is formulák
  • ha Ψ formula és s(n) egy szabad sorváltózója, akkor (∃s(n))Ψ és ( ∀s(n)) Ψ is formulák, amelyekben s(n) már kötött sorváltozó

Kifejezések

  • {s(m)|Ψ(s(m))}

Igazságérték

  • a bemutatott formalizmusnak készítsük el egy értelmezését rögzítve, hogy a változók és a konstansok milyen értéket vehetnek fel
  • meg kell adni ezeknek az értékeknek a halmazát, ez lesz a formulához tartozó: interpretációs halmaz
  • az egyszerűség kedvéért most minden változóhoz és konstashoz egyetlen közös halmazt rendelünk
  • legyen A: tetsz, véges számítógépeben ábrázolható számhalmaz
  • tételezzük fel, hogy c ∈ A,s(n) ∈ An,R(m) ⊆Am
  • ezen interpretációs halmaz elemeit felhasználva a sorváltozók minden komponense értéket kaphat, ami után minden formulához egy igazságérték rendelhető
  • az igazságérték meghatározása
    • R(m) (s (m) ) pontosan akkor igaz, ha s (m) ∈ R(m) , s(m) ∈ Am
    • s (n) [i] Θ u (k) [j], továbbá s (n) [i] Θ c pontosan akkor igaz, ha az értékekre fennáll a Θ aritmetikai reláció (s (n) ∈ An, u(k) ∈ Ak , c ∈ A)
    • R(n) (c1, c2, . . . , cn) pontosan akkor igaz, ha (c1, c2, . . . , cn) ∈ R(n) (ci ∈ A)
    • Ψ1 szabad sorváltozói az s (nt ) t ∈ Ant, t = 1, 2, . . . , r1 értékeket, míg Ψ2 szabad sorváltozói a v (kj ) j ∈ A kj , j = 1, 2, . . . , r2 értékeket veszik fel, akkor
      • Ψ1 ∧ Ψ2 pontosan akkor igaz, ha Ψ1 és Ψ2 is igaz.
      • Ψ1 ∨ Ψ2 pontosan akkor igaz, ha Ψ1 vagy Ψ2 igaz,
      • ¬Ψ1 pontosan akkor igaz, ha Ψ1 hamis
    • Ha Ψ1 szabad sorváltozója l (k) és sorváltozói az s (nt ) t ∈ Ant (t = 1, 2, . . . , r) értékeket vették fel, akkor
      • (∃l (k) )Ψ(l (k) , s (n1 ) 1 , s (n2 ) 2 , . . . , s (nr) r ) pontosan akkor igaz, ha van olyan u (k) ∈ Ak , amelyre Ψ(u (k) , s (n1 ) 1 , s (n2 ) 2 , . . . , s (nr) r ) igaz, továbbá
      • (∀l (k) )Ψ(l (k) , s (n1 ) 1 , s (n2 ) 2 , . . . , s (nr) r ) pontosan akkor igaz, ha minden u (k) ∈ Ak esetén Ψ(u (k) , s (n1 ) 1 , s (n2 ) 2 , . . . , s (nr) r ) igaz.
  • A kifejezések interpretációja: { s (m) Ψ(s (m) ) } pontosan azoknak az s (m) ∈ Am eknek a halmaza, amelyekre a Ψ formula igaz
  • a kifejezések tehát olyan relációkat határoznak meg, melyek attrb értékei A elemei közül kerülnek ki
  • az adatbázisok tartalma azonban időben változik, így egy interpretáció csak egy adott időpillanatban teszi lehetővé az adatbázis lekérdezését
  • az idő múlásával változni kell az interpretációnak is
  • ami nem változik az a formális nyelv elemei
  • ezt használhatjuk kül időppontokban lekérdezésre
  • van e olyan jó a sorkalkulus, mint a relációs algebra
  • tétel

Biztonságos sorkalkulus

  • cél, hogy a sorkalkulus kif kiértékelhető legyen számítógépben kezelhető méretű relációk véges idő mellett
  • alapgondolat: le kell szűkíteni azon változóértékek halmazát, amelyek a sorkalkulus kif formuláját igazzá tehetik egy olyan halmazra, amely magából a bemeneti relációkból és esetleges egyéb konstansokból áll
  • ez a halmaz a formula doménje DOM(Ψ)
  • biztonságos kifejezés
  • módszerek biztonságosság eldöntésére:
    • (∃u)R(u) ∧ . . . alakú formulák mindig biztonságosak u-ban
    • (∀u)ω(u) alakú részformulák ekvivalensek ¬(∃u)¬ω(u)-val.

Megjegyzés

  • egyes szerzők egy harmadik feltételt is definiálnak, hogy az ell-hez ne kelljen átalakítani az univerzális kvantort tartalmazó részformulákat
    • Ψ-nek minden (∀u)ω(u) alakú részformulájára teljesül, hogy ha u valamely komponense nincs DOM(ω)-ban, akkor u kielégíti ω-t az ω-beli szabad változók minden értéke mellett

click to edit

1

  • (∀v)¬R3(v) ∨ λ(t, v)
  • a részformula magja: ¬R3(v)∨ alakú, ezért kijelentendő, hogy a v kötött változó minden doménen kivüli értéke kielégiti a részformulát a t szabad változó minden lehetséges étéke mellett
  • így az előzővel öszhangban a részformula biztonságos

2

  • egy biztonságos kifejezés formuláját negálva nem biztonságos kifejezést kapunk
  • ez fordítva nem felt igaz

3*

  • a formulák biztonságosságánakmeghatározása és a formula kiértékelése két különböző dolog

4
-

Relációs oszlopkalkulus

  • a elsősorban abban különbözik a sorkalkulustól, hogy a sorváltozók helyett egyszerű változók szerepelnek benne
  • bizonyos lekérdezések egyszerűbben fogalmazhatók meg
  • felépítése és interpretációja hasonló

különbségek

  • atomok:
    • oszlopváltozók: ui
  • atomok felépítése:
    • R(m)(x1,x2...xm): konstansok/oszlopváltozók
    • x Θy, smae
  • kifejezések:
    • {x1, x2, . . . xm| Ψ(x1, x2, . . . xm)}