Adatbázisok/ZH feladatok

A VIK Wikiből
A lap korábbi változatát látod, amilyen Nagy Marcell (vitalap | szerkesztései) 2018. december 25., 22:17-kor történt szerkesztése után volt. (Új oldal, tartalma: „<!-- {{Rejtett|mutatott='''Megoldás'''|szöveg= TODO. }} --> Ezen az oldalon néhány feladatot találsz témakörönként az új (VITMAB04) [Adatbázisokhoz], amik a…”)
(eltér) ← Régebbi változat | Aktuális változat (eltér) | Újabb változat→ (eltér)
Ugrás a navigációhoz Ugrás a kereséshez


Ezen az oldalon néhány feladatot találsz témakörönként az új (VITMAB04) [Adatbázisokhoz], amik a régi tárgy 1996-2007 közötti ZH feladatsoraiból lettek kiválogatva. Ehhez hasonló jellegű feladatok lehetnek az új tárgyban is.

ER modell és diagram, átalakítás relációs sémára

(1996-04-16 1.) Az alábbi leírást egy laikus adta: Egy paciensnek számos betegsége is lehet, vannak betegségek, amiben pillanatnyilag senki sem szenved. Minden pacienst egyetlen mentőállomáson kezelnek, akár több orvos is. Az orvosoknak több paciensük is lehet, akik különböző mentőállomásokon is fekhetnek. Egy mentőállomás lehet akár üres is és mindig pontosan egy kórházhoz tartozik. Egy kórháznak esetleg több mentőállomása és több orvosa is van. Egy orvost legfeljebb 3 kórház alkalmaz. A kórházat mindig egy olyan igazgató vezeti, aki a kórház orvosa is, közgazdászdiplomával is rendelkezik és más kórházzal nincs munkaviszonya.

a) Készítsen a fentiekről egyed-kapcsolati diagramot! Tüntesse fel pontosan a kapcsolatok funkcionalitását is! Azonosítsa az egyedeket célszerûen megválasztott attribútumokkal, határozza meg a kulcsokat!

b) Alakítsa át a diagramot relációs sémákká úgy, hogy a kapcsolatok megvalósításához a lehető legkevesebb relációt használja!




(2000-04-25 1. módosítva) Alakítsa át az alábbi ER diagramot relációs sémára úgy, hogy minimális számú sémát használjon fel!

Adatb zh 2000-04-25 feladat-1 ER-diagram.png




(2000-11-17/A 1. módosítva) Alakítson ki ER-modellt, ami személyeket, munkahelyeiket és munkáikat leíró (egyszerűsített) adatbázis alapjául szolgálhat. Az alábbiakat szeretnénk ábrázolni. Személy; név, személyi szám, lakcím, munkahely(ek), beosztás(ok), projektek, amiken dolgozik. Eszköz; megnevezés, azonosító, tulajdonos cég, a projekt(ek) amiben használják. Cég; név, cím, vezető, dolgozók, projektek. Projekt; elnevezés, vezető, érintett cég(ek), határidő, résztvevők.




(2001-11-16 1.) Adott az alábbi E-R diagram, amely egy videokölcsönző üzlet működéséhez szükséges elemeket tartalmazza: a kazettákat, ügyfeleket, kölcsönzéseket, előjegyzéseket.

Adatb zh 2001-11-16 feladat-1 ER-diagram.png

Alakítsa át a diagramot relációs sémákba úgy, hogy a lehető legkevesebb relációs sémát definiálja! A relációs séma elemeit a megfelelő ER-diagrambeli elemmel azonosan nevezze el.




(2002-11-15/B 5. módosítva) Tervezzen ER-diagramot egy színházi adatbázishoz, melyben az alábbiakat akarjuk tárolni. A színházakról nyilvántartjuk a nevüket, címüket, milyen darabokat játszanak jelenleg, kik a dolgozói főállásban. Egy színdarabról tároljuk a címét, szerzőjét, rendezőjét, azt, hogy melyik színházban játsszák és hogy kik szerepelnek benne. A dolgozókról tároljuk nevüket, személyi számukat és hogy melyik színházban dolgoznak. A színészekről ezeken kívül még azt is akarjuk tudni, hogy tudnak-e énekelni és hogy melyik darabokban játszanak, a rendezőkről pedig azt, hogy miket rendeznek. Az alábbi megkötések érvényesek: egy darabot csak egy ember rendez, egy darab csak egy színházban megy, továbbá egy dolgozó csak egy színháznál lehet főállásban.




(2004-06-02 4. módosítva) Alakítsa át az alábbi ER diagramot relációs sémára!

Adatb zh 2004-06-02 feladat-4 ER-diagram.png




(2004-11-19 1.) A következő egyed kapcsolat modell egy repülőtársaság adatbázisának egyszerűsített tervét tartalmazza. A következő információkat szeretnénk tárolni: Repülőtér; az azonosító kódját és a várost ahol van, RepJárat; különböző járatok számát, az indulási és érkezési időpontot és repteret (minden járat leszállás nélkül közlekedik), EgyRepülés; egy adott járat konkrét napon való közlekedését és az aznapra beosztott legénységet (de nincs feltüntetve ki milyen beosztásban van, pl. ki a pilóta, ... ), Alkalmazott: az összes alkalmazott TBSzáma és neve. Alakíts ki egy megfelelő relációs sémát a modellhez! Törekedj a redundancia-mentességre! Ne felejtsd el megadni a kulcsokat!

Adatb zh 2004-11-19 feladat-1 ER-diagram.png




(2007-04-25 1.) Egy óvoda adatait szeretnénk tárolni egy adatbázisban. Az óvodában gyerekek vannak illetve óvónénik és óvóbácsik dolgoznak. Mindenkiről nyilván akarjuk tartani a nevét, személyi számát, születési dátumát és helyét. A gyerekekről tárolni akarjuk az óvodai jelüket és a szüleik mobilszámát, a dolgozókról pedig a diplomázásuk évét. Az óvodában csoportok is vannak, minden csoportnak van neve. Tárolni akarjuk, hogy melyik gyerek melyik csoportba jár és melyik csoportnak ki az óvónénije illetve óvóbácsija. (Egy gyerek egy csoportba jár, egy csoportnak két gondozója van, minden dolgozó pontosan egy csoportban dolgozik.) Az óvodában különórákat is szerveznek, itt tárolni akarjuk a különóra nevét (pl. angol), a különóra időpontját, azt, hogy ki tartja (ez valaki az óvoda dolgozói közül) és hogy kik járnak rá. Készítsen E/K diagrammot ehhez az adatbázishoz, ne feledkezzen el a kulcsok jelöléséről sem. Röviden írja le, hogyan határozta meg az egyes kapcsolatok jellegét.




(2005-04-19 1.) Egy menza havi menüit szeretnénk tárolni égy adatbázisban. A menü minden nap egy levest, egy főételt és egy édességet tartalmaz. Egy étel többször is előfordulhat az adott hónapban, de tudjuk, hogy egy adott leves-főétel kombinációhoz, csak egyféle édesség illik. Minden ételnek szeretnénk tárolni a nevét, az energiatartalmát és hogy melyik hozzávalóból mennyi kell. Készíts E/K diagramot az adatbázishoz!




(2005-05-03 1. módosítva) A következő E/K modellhez határozz meg relációs sémát!

Adatb zh 2005-05-03 feladat-1 ER-diagram.png




(2006-11-20 1.) Egy középiskola tanárait és diákjait szeretnénk tárolni egy adatbázisban. Mindenkiről nyilván akarjuk tartani a nevét, személyi számát, születési dátumát és helyét. Minden diákról tárolni akarjuk, hogy melyik osztályba jár most (pl. 10.b) és hogy eddig hány évfolyamon bukott. Minden tanárról tároljuk a gúnynevét és azt hogy mely osztályokban mely tárgyakat tanítja, akik pedig osztályfőnökök is, azokról azt is, hogy hol osztályfőnökök és hogy ez hányadik osztályuk a pályafutásuk során. (Minden tanár legfeljebb egy osztályban osztályfőnök egy időben és egy osztálynak csak egy osztályfőnöke van.)

a) Készítsen E/K diagrammot ehhez az adatbázishoz, ne feledkezzen el a kulcsok jelöléséről sem. Röviden írja le, hogyan határozta meg az egyes kapcsolatok jellegét.

b) Alakítsa át a az előző pontban adott E/K diagrammot relációs sémává, az órán tanult eljárást használva.




(2004-11-30 1. módosítva) A következő egyed kapcsolat modell egy orvosi rendelő adatbázisának egyszerűsített tervét tartalmazza. Alakíts ki egy megfelelő relációs séma tervet ugyanehhez az adatbázishoz! Törekedj a redundanciamentességre! Ne felejtsd el megadni a kulcsokat!

Adatb zh 2004-11-30 feladat-1 ER-diagram.png


Relációs adatmodell

(2004-06-02 2.) Ha egy A attribútum kardinalitása kisebb, mint az A domén elemeinek száma, akkor A nem lehet (egyszerű) kulcs. Igazolja vagy cáfolja az állítást!


Relációs algebra

(2000-11-17/A-B 3.) Tekintsük a következő alaprelációkat (a kézenfekvő értelmezéssel): Kedvel(személy, sör), Kapható(söröző,sör), Látogat(személy, söröző). Fejezze ki relációs algebra segítségével

a) azon sörök összességét, melyeket minden látogató kedvel azokban a sörözőkben, ahol kaphatók.

b) azon személyek összességét, akik minden sört kedvelnek azokban a sörözőkben, ahol látogatnak.




(2001-11-16 2.) Egy könyvtári kölcsönzéseket segítő relációs adatbázis négy relációjának a sémái az alábbiak. Az azonos nevű attribútumok jelentése is azonos. KÖNYV(RAKT, SZERZO, CIM), KÖLCS(RAKT, O_ID, K_DATUM), OLVASO(O_ID, O_NEV, LAKCIM), VISSZA(RAKT, O_ID, V_DATUM, K_ID) A relációk, ill. attribútumaik jelentése rendre a könyvtári KÖNYVek RAKTári száma (egyedi azonosító), SZERZŐje és CÍMe, a KÖLCSönzött könyvek RAKTári száma, a kölcsönző Olvasó egyedi azonosítója és a Kölcsönzés DÁTUMa. Az OLVASÓ reláció az Olvasók azonosítóját, NEVét és LAKCÍMét tartalmazza. Amikor egy könyvet VISSZAhoznak, akkor belekerül a vissza relációba, a V_DATUM értéke pedig a visszavétel dátuma lesz, K_ID a visszavevő könyvtáros azonosítója.

a) Adjon meg egy relációalgebrai kifejezést, amely azt a relációt állítja elő, amely azoknak az olvasóknak a neveit valamint az általuk kölcsönzött könyvek szerzőit és címeit tartalmazza, amelyeket az olvasók 2001. okt. folyamán késve hoztak vissza a könyvtárba. A kölcsönzési idő 1 hónap.

b) Mit tudunk mondani a jelenleg kölcsönzés alatt lévő könyvekről?




(2002-11-15/A 2. módosított) Tekintsük az alábbi Csillagflotta adatbázissémát: Csillaghajó(hajónév, év, faj), Dolgozó(dolgozónév, azonosító, születés), Beosztás(azonosító, hajónév, rang). A relációk jelentése: Csillaghajó; a hajó neve, gyártási éve és az, hogy melyik faj tervei alapján készült, Dolgozó; neve, Csillagflotta-azonosítója, mikor született, Beosztás: melyik dolgozó, melyik hajón, milyen rangban dolgozik. Adjunk relációs algebrai kifejezést, mely

a) előállítja azon a dolgozók nevét, akik klingon (faj által tervezett) hajón dolgoznak.

b) megkeresi azon a dolgozók nevét, akik Catherine Janeway kapitány hajóján dolgoznak.




(2002-11-15/A-B 4.) Legyen R és S két, azonos attribútumokkal rendelkező reláció, X pedig ezen közös attribútumhalmaz egy részhalmaza. Mely igaz (melyek igazak) az alábbi állítások közül?

a) πX(R ∩ S) = πX(R) ∩ πX(S)

b) πX(R ∪ S) = πX(R) ∪ πX(S)

c) πX(R \ S) = πX(R) \ πX(S)




(2007-04-25 2.) Tekintsük a következő három relációból álló adatbázissémát (ami a Húsvéti Nyúl számára készült): Gyerek(GyerekNév, Nem, SzületésiÉv) (milyen nevű, milyen nemű gyerek mikor született), Kér(GyerekNév, JátékNév) (melyik gyerek mit kért húsvétra), Kap(GyerekNév, JátékNév) (melyik gyerek mit kap húsvétra). Adja meg relációs algebrával azon gyerekek nevét, akik semmi olyat nem kapnak, amit kértek. (Azt feltehetjük, hogy minden gyerek kért legalább egy dolgot.)




(2006-11-20 2.) Tekintsük a következő két relációból álló adatbázissémát: Hallgató (HallgatóNév, Nem, Neptunkód) (milyen nevű, milyen nemű hallgatónak mi a Neptun kódja, kulcs a Neptunkód), Átlagok(Neptunkód, Félév, Átlag) (melyik Neptun kódhoz milyen átlag tartozik egy adott félévben, kulcs a (Neptunkód, Félév) pár). Adja meg relációs algebrával azon hallgatók nevét, akik a "2006/2007/1" félévben a legmagasabb átlagot érték el.




(2004-11-30 3.a) Tekintsük az alábbi adatbázissémát: Járat(Járatszám, Honnan, Hova, Távolság, Indul, Érkezik), Repülőtípus(TípusAzonosító, TípusNév, Hatótávolság), Jogosítvány(PilótaAzonosító, TípusAzonosító), Pilóta(PilótaAzonosító, PilótaNév). A relációk jelentése: Járat; melyik számú járat mikor és honnan, mikor és hova érkezik, mennyi távolságot tesz meg (kulcs a Járatszám), Repülőtípus; a típus azonosítója, neve és mennyit tud megtenni leszállás nélkül (kulcs a TípusAzonosító), Jogosítvány; milyen azonosítójú pilóta milyen azonosítójú gépet tud elvezetni (itt a PilótaAzonosító és a TípusAzonosító együtt alkot kulcsot), Pilóta; milyen azonosítójú polóta és mi a neve (kulcs a PilótaAzonosító). Fejezd ki relációs algebrával azon repülőgépek TípusAzonosítóit, melyek leszállás nélkül el tudnak repülni Budapestről Bombayba.


Sor- és oszlopkalkulus

(1996-04-16 5.) Adott az alábbi relációs adatbázis: LÁTOGAT(KORHELY, KOCSMA), ÁRUL(KOCSMA, SÖR), KEDVEL(KORHELY, SÖR). A relációk értelme rendre: azon KOCSMÁk, amiket egy KORHELY látogat; melyik KOCSMA milyen SÖRt árul; a KORHELYek melyik SÖRöket kedvelik.

Adjon meg egy sorkalkulus kifejezést arra a relációra, amely azokat a korhelyeket tartalmazza, akik látogatnak olyan kocsmát, amely árul olyan sört, amelyet a korhely kedvel!




(2000-04-25 3.) Adott az alábbi relációs adatbázis: GYÁRT(CÉG, TÍPUS, ÁR), SZERETI(VEVŐ, TIPLIS), DOLGOZIK(VEVŐ, CÉG, BEOSZTÁS) A relációk jelentése rendre: azon autóTÍPUSok, amiket egy CÉG gyárt az azok eladási ÁRa; egy VEVŐ melyik autóTÍPUSt szereti; a VEVŐ melyik CÉGnél dolgozik, milyen BEOSZTÁSban.

a) Adjon meg egy sorkalkulus kifejezést, amely azokat a vevőket tartalmazó relációt állítja elő, akik olyan cégnél dolgoznak, amelyek gyártanak olyan autótípust, amilyet a vevő szeret!

b.) Vizsgálja meg, hogy a felírt kifejezés biztonságos-e!




(2000-11-17/A-B 4.) Legyenek R(A, B, C, D) és S(C, D, E) alaprelációk, és legyenek πACE=2(R ⋈ S)), illetve πCD(R) ∩ πCD(S) belőlük képzett leszármaztatott relációk. Fejezze ki ez utóbbiakat sor- és oszlopkalkulussal.




(2002-11-15/A 3.a) Az R reláió attribútumai (A; B ; C; D; E) az S reláió attribútumai pedig (A; B ; F; G). Fejezze ki sorkalkulus segítségével R ⋈ S-et!




(2002-11-15/A 3.b) Az R reláió attribútumai (A; B ; C; D), az S-é pedig (C; D). Ekkor R ÷ S, R és S hányadosa, azon (A; B) attribútumú t sorokból áll, melyekre igaz, hogy bármely S-beli s sor esetén a ts sor R-ben van. Fejezze ki R ÷ S-t oszlopkalkulus segítségével! Feltehetjük, hogy az S reláció nem üres.




(2004-06-02 5.) Vizsgálja meg, hogy biztonságos-e a sorkalkulus. Minden változó doménje a természetes számok halmaza, alma1 = {2,3}.

{ x(1) | (∃ t(1)) x(1)[1] = t(1)[1] ∧ t(1)[1] > 2 ∧ alma(1)(x(1)) }




(2007-04-25 3.) Tekintsük a következő három relációból álló adatbázissémát (ami a Húsvéti Nyúl számára készült): Gyerek(GyerekNév, Nem, SzületésiÉv) (milyen nevű, milyen nemű gyerek mikor született), Kér(GyerekNév, JátékNév) (melyik gyerek mit kért húsvétra), Kap(GyerekNév, JátékNév) (melyik gyerek mit kap húsvétra).

a) Fogalmazza meg szavakkal, hogy mit fejez ki az alábbi sorkalkulusos kifejezés: { t(1) | (∃ u(3)) (u[1] = t[1] ∧ Gyerek(u) ∧ (∀ v(2)) ( v[1] ≠ t[1] ∨ ¬Kér(v) ∨ Kap(v) ) ) }

b) Biztonságos-e a fenti kifejezés?

c) Megadható-e relációs algebrával az a) pontban adott halmaz?




(2005-04-19 2.) Adott egy r és egy s reláció, melyek rendre az R(A, B) illetve az S(B, C) sémára illeszkednek. r-nek nr csupa különböző sora van, s-nek pedig ns. Legfeljebb és legalább hány sora lehet (nr és ns függvényében) az r ⋈ s relációnak, ha

a) A kulcs R-ben,

b) B kulcs R-ben,

c) B kulcs R-ben és S-ben is,

d) A kulcs R-ben, B kulcs S-ben?

(Ez tehát 8 különböző kérdés, mindegyik eredményt indokuld röviden.)




(2005-05-03 2.) Adott a következő séma: Jegyek(Neptun, DiákNév, Tárgykód, Jegy). (Melyik diák melyik tárgyból milyen jegyet kapott, kulcs a. (Neptun, Tárgykód) pár.) Fejezd ki sorkalkulussal azokat a tárgykódokat, amely tárgyakból csak olyan diákok szereztek jegyet, akik Legalább egy tárgyból szereztek legalább elégségest.




(2006-11-20 3.) Adott a következő séma: Jegyek (Neptun, DiákNév, Tárgykód, Jegy). (Melyik diák melyik tárgyból milyen jegyet kapott, kulcs a (Neptun, Tárgykód) pár.) a) Biztonságos-e az alábbi sorkalkulusos kifejezés? {s(1) | ∃ q(4)(Jegyek(q) ∧ q[3] = s[1]) ∧ ∀t(4)(¬Jegyek(t) ∨ s[1] ≠ t[3] ∨ t[4] = '5') }

b) Fejezze ki szavakkal, hogy mit ír le a fenti sorkalkulusos kifejezés.




(2004-11-30 3.b) Tekintsük az alábbi adatbázissémát: Járat(Járatszám, Honnan, Hova, Távolság, Indul, Érkezik), Repülőtípus(TípusAzonosító, TípusNév, Hatótávolság), Jogosítvány(PilótaAzonosító, TípusAzonosító), Pilóta(PilótaAzonosító, PilótaNév). A relációk jelentése: Járat; melyik számú járat mikor és honnan, mikor és hova érkezik, mennyi távolságot tesz meg (kulcs a Járatszám), Repülőtípus; a típus azonosítója, neve és mennyit tud megtenni leszállás nélkül (kulcs a TípusAzonosító), Jogosítvány; milyen azonosítójú pilóta milyen azonosítójú gépet tud elvezetni (itt a PilótaAzonosító és a TípusAzonosító együtt alkot kulcsot), Pilóta; milyen azonosítójú polóta és mi a neve (kulcs a PilótaAzonosító). Fejezd ki sorkalkulussal azon repülőgépek TípusAzonosítóit, melyek leszállás nélkül el tudnak repülni Budapestről Bombayba.


Fizikai adatbázis

(1996-04-16 3.) Egy 15525 rekordból álló állományt szeretnénk ritka index szervezéssel tárolni. A rekordhossz 850 byte, egy blokk kapacitása (a fejrészt nem számítva) 4000 byte. A kulcs 50 byte-os, egy mutatóhoz 18 byte kell.

a) Legalább hány blokkra van szükség?

b) Mennyi ideig tart legfeljebb egy rekord tartalmának kiolvasása, ha az operatív tárban rendelkezésünkre álló szabad hely 5000 byte? Segít-e a legnagyobb rekordhozzáférési idő csökkentésében, ha 10-szer (100-szor) ennyi szabad memóriával gazdálkodhatunk?




(2000-04-25 2.) Létrehozunk egy állományt, amelyben "vödrös hash" szervezéssel tároljuk a rekordokat 2048 vödörben. A rekordhossz 260 byte, egy blokk kapacitása (a fejrészt nem számítva) 1500 byte. A kulcsok 40 byte-osak, egy mutatóhoz 9 byte kell. Egy blokkművelet feltételezett időigénye 10 ms. A vödörkatalógust kereséskor a memóriában tároljuk.

a) Mekkora az a maximális rekordmennyiség, amely mellett tetszőlegesen kiválasztott kedvező feltételeke esetén nem több, mint 30 ms alatt megtalálunk az állományban?

b) Legfeljebb hány blokkot foglal el ilyenkor a teljes struktúra (vödörkatagólussal együtt) a diszken?

c) Hogyan lehet a rekordelérési idő maximumát a lehető legkevesebb többlet-memóriával a 2/3-ára csökkenteni, és mennyi memória kell ehhez?




(2000-11-17/A-B 2. módosítva) Egy állományt

a) sűrű index, majd erre épített 1-szintes ritka index

b) 2-szintes ritka index

segítségével szeretnénk tárolni. Adjon értelmes alsó becslést az összes szükséges blokk számára az alábbi feltételek mellett: az állomány 3 millió rekordból áll, egy rekord hossza 300 byte, egy blokk mérete 1000 byte, a kulcshossz 45 byte, egy mutató hossza 5 byte.




(2001-11-16 3.) Egy nagy távközlési cég a hívásrekordjait adatbázisban tárolja. A max. 1 milliárd darab 200 byte-os rekordot tartalmazó állomány rekordjait szeretnénk minél hatékonyabban elérni annak figyelembe vételével, hogy benne a kereséseket két különböző kulcs szerint is 35 msec-on belül végre kell tudni hajtani. A blokkméret 8000 byte, a blokkelérési idő 4 msec, mindkét kulcs hossza 10 byte, a mutatók 32 bitesek. Az adatállomány blokkjai a háttértáron rendezetlenül helyezkednek el. Az egyszerűség kedvéért tételezzük fel, hogy a memóriában egyszerre csak egyetlen blokk tárolására van lehetőség. A megoldásnak támogatnia kell az intervallumkeresést is.

a) Javasoljon megoldást a problémára a tantárgyban tanult módszerek közül és bizonyítsa is be, hogy a javaslata valóban kielégíti a specifikációt! Készítsen magyarázó ábrát is a megoldásjavaslatához!

b) Egy alkalommal meg is kell valósítani az intervallumkeresést az egyik kulcs alapján. A találati halmaz várhatóan a rekordoknak mintegy 9%-át fogja tartalmazni. Adjon javaslatot a lekérdezés végrehajtására, hogy az a lehető legrövidebb időn belül lefusson!




(2002-11-15/A 1. módosítva) Egy 240000 rekordból álló állományt szeretnénk tárolni. Két lehetőség közül választhatunk: vagy sűrű indexre épített 1-szintes ritka indexet használunk, vagy 3-szintes ritka indexet. Melyik megoldást lehet kevesebb blokk felhasználásával megvalósítani, ha még azt is el szeretnénk érni, hogy sem az indexállományban, sem a főállományban ne legyenek 80%-nál telítettebb blokkok? Tudjuk, hogy egy blokk mérete 1500 byte, egy rekord hossza 350 byte, a kulcs hossza 45 byte, a mutató hossza pedig 15 byte.




(2004-06-02 3.) Vödrös hash-elést alkalmazunk, rekordok száma 12500000, egy rekord hossza 240 byte, egy blokkba 4000 byte fér el, egy kulcs hossza 25 byte, a mutatóé 8 byte. Mekkora legyen a vödrök minimális száma ha a keresés során maximum 5 blokkelérési idő alatt akarjuk megtálalni a keresett rekordot? (Feltételezhetjük hogy a hash függvény egyenletesen osztja el a kulcsokat, és a keresés során a vödör-katalógust a memóriában tároljuk.) Minimum hány byte-os a hash-tábla?


Optimalizálás

(2004-11-30 4.) Legyen r egy olyan R(A, B, C, D) sémára illeszkedő reláció, melynek 40000 sora van, 20 fér el egy blokkban, és van rá építve ritka index. Ennek keresési kulcsának mérete egy sor hosszának tizede. Az s reláció az S(A, E, F, G) sémára illeszkedik, 25000 sora van, egy blokkba 5 sor fér el. Tudjuk, hogy mindkét relációban az A attribútum értékei teljesen egyenletesen oszlanak el, minden érték pontosan 5-ször fordul elő. A memóriában 401 blokk fér el egyszerre. Legalább hány blokkolvasást kell végeznünk ha az r ⋈ s relációt

a) beágyazott ciklikus algoritmussal

b) az indexet használó algoritmussal

számítjuk ki?