2009. őszi félév: Adatbázisok tervezése, megvalósítása, menedzselése (IP-abATME/1)

 

Tematika:

Fizikai fájlszervezés, indexelés, lekérdezések optimalizálása, méretek, költségek becslése, algebrai optimalizáció, műveleti költségek, végrehajtási tervek, Oracle megoldások,

XML dokumentumok lekérdezése, Oracle megoldások,

naplózás, tranzakció-kezelés, Oracle megoldások.

 

A vizsga:

VIZSGANAPOK: 2008. december 17, 2010. január 14, 21, 28 (UV)

 

Vizsgakérdések:

Az alábbi kérdésekből kapott 2 kérdést kell érthetően, példákkal, ábrákkal, algoritmus leírásokkal, becslések magyarázatával, kérdésenként 3-4 oldalban esszészerűen, OLVASHATÓAN kidolgozni.

 

  1. Az Oracle adatbázis-kezelő felépítése, működése, komponensei, példányok, rendszerállományok, memóriakezelése, rendszergazdai feladatok
  2. Lemezegységek, blokkok, fájlok felépítése, RAID megoldások
  3. Fizikai fájlszervezés, feladata, költségek, paraméterek, kupac, rendezett, hasító indexelt megoldások, módosítás, keresés, példákkal, előnyök, hátrányok
  4. Fizikai fájlszervezés, feladata, költségek, paraméterek, elsődleges index, másodlagos index, , bitmap index, módosítás, keresés, példákkal, előnyök, hátrányok
  5. Fizikai fájlszervezés, feladata, költségek, paraméterek, többszintű indexek, B-fa, B+-fa, B*-fa, módosítás, keresés, példákkal, előnyök, hátrányok
  6. Sql lekérdezés átalakítása relációs algebrai kifejezéssé, lekérdezésfordító, algebrai optimalizálás, szabályok, heurisztikákon alapuló algoritmus, példákkal
  7. A relációs algebrai műveletek megvalósítása, egy és többmenetes algoritmusok, műveleti költségek, outputméretek becslése
  8. Több tábla összekapcsolása, összekapcsolások sorrendje, futószalagosítás, materializáció, dinamikus programozási feladat, a félig-összekapcsolás (semi-join) és alkalmazása osztott lekérdezésekre
  9. A Q(A,B) JOIN R(B,C) JOIN S(C,D) háromféle kiszámítási módja és költsége, (feltéve, hogy Q,R,S paraméterei megegyeznek, Q.B-re és S.C-re klaszterindexünk van).

a)      balról  jobbra, b) balról jobbra és a memóriában összekapcsolva a harmadik táblával, c) a középső ténytábla soraihoz kapcsolva a szélső dimenziótáblákat.

  1. Az Oracle költségalapú és szabályalapú optimalizálása, lekérdezésterveinek megjelenítése, értelmezése, Explain plan, tkprof, hintek, példák
  2. XML, jólformált XML, attribútumok, névterek, DTD, Xpath, útkifejezések, tengelyek, XQuery, FLWR-kifejezések, Oracle XML-kezelése, XML-kezelő függvények, példák
  3. Rendszerhibák kezelése, konzisztens adatbázis, tranzakciók, hibafajták, semmisségi (undo) naplózás és helyreállítás, ellenőrzőpont, ellenőrzőpont működés közben, példák
  4. Helyrehozó (Redo) maplózás, semmiségi/helyrehozó (Undo/Redo) naplózás, archiválás, példák
  5. Az Oracle naplózási/helyreállítási megoldásai
  6. Konkurenciavezérlés, ütemezés, sorbarendezhetőség, konfliktus-sorbarendezhetőség, megelőzési gráf, fogalmak, állítások (bizonyítás nélkül), példák.
  7. Zárolási ütemező, kétfázisú zárolás, holtpont, várakozási gráf, fogalmak, állítások (bizonyítás nélkül), példák.
  8. Különböző zármódú zárolási rendszerek, kompatibilitási mátrix, felminősítés, módosítási zárak, növelési zárak, fogalmak, állítások (bizonyítás nélkül), példák
  9. Zárolási ütemező felépítése, zártáblák
  10. Figyelmeztető zárak, fantomok, nem megismételhető olvasás
  11. Időbélyegzés, érvényesítés
  12. Az Oracle tranzakció-kezelési megoldásai, elkülönítési szintek, zárolások.

 

 

Vizsgára felkészüléshez segítséget jelent:

 

A tankönyv (továbbiakban „Könyv”):  Hector Garcia-Molina, Jeffrey D. Ullman, Jennifer Widom, Adatbázisrendszerek megvalósítása, Panem-John Wiley & Sons, Budapest, 2001. (2007-ben újra kiadták puhafedelű változatban. )

Kapható: http://www.libri.hu/konyv/adatbazisrendszerek-megvalositasa.html

 

 

Az előadások anyaga:

  1. Oracle adatbázisok felépítése: Abterv_ea1.ppt Abterv_ea1.doc (Nikovits Tibor anyagjai)
  2. Lekérdezések optimalizálásának feladata: algebrai opt.ppt (91-101 oldal)

Adattárolás: storage.ppt (1-40 oldal)

                        A fóliák magyarul Györök Péter hallgató fordításában: storage-hu.ppt (1-40 oldal)

Könyv: 2.1 fejezet: Memóriahierarchia  (47-55 oldal)

             2.2 fejezet: Lemezek (55-66 oldal)

 2.3 fejezet: Cilinderes szervezés, lemezhibák, a RAID fogalma (75-80, 95-104 oldal)

Az adatelemek ábrázolása, a költségszámítás paraméterei: fizika.ppt (1-3 oldal),

Könyv:  3.1-3.2, 3.3.1, 3.3.2 fejezetek: Adatelemek, rekordok, blokkok (111-129 oldal)

Az Oracle rendszer komponensei, példány, SGA, PGA, folyamatok, kapcsolódás a példányhoz: Oracle.ppt (1-38 oldal)

Az Oracle Enterprise Manager néhány lehetősége: memory.htm performance.htm sitemap.htm maintenance.htm

  1. Az adatbázis-rendszergazda feladatai: Less_01.ppt (1-10 oldal)

A fóliák magyarul Györök Péter hallgató fordításában: Less_01-hu.ppt

Az Oracle 10g telepítése: Less_02.ppt (1-26 oldal)

            A fóliák magyarul Györök Péter hallgató fordításában:: Less_02-hu.ppt

Az Oracle Enterprise Manager további lehetőségei: 

TableSpace.htm users.htm datafile.htm data.htm tables.htm cikk.htm indexing.htm key.htm

A fizikai fájlszervezés alapjai (folytatás), kupac, hash (lineáris, kiterjeszthető), rendezett állomány, elsődleges index: fizika.ppt (4-32 oldal),

Könyv: 4.1 fejezet: Ritka index (153-170 oldal), 4.4 Tördelőtáblázatok: (200-211 oldal)

       4.  Indexelések (másodlagos index, klaszterindex, B-fa, B+-fa, B*-fa): fizika.ppt (33-58 oldal), bináris fa: bináris.ppt (1-9 oldal)

                        Könyv: 4.2 fejezet Másodlagos indexek (171-178 oldal)

                                   4.3 fejezet B-fák (184-197 oldal)

            Sql lekérdezés átalakítása relációs algebrai kifejezéssé: algebrai opt.ppt (100-106 oldal)

                        Könyv: 7.1 fejezet: A lekérdezésfordító, elemzés (359-367 oldal)

            Oracle lekérdezéstervek megjelenítése (Explain plan): use_explain.ppt (8, 10-11, 23 oldal)

       5.  A relációs algebrai műveletek megvalósítása, egy és többmenetes algoritmusok. A műveleti költségek, outputméretek becslése: optimization.ppt  (1-46 oldal)

                                   A fóliák magyarul Györök Péter hallgató fordításában: optimization-hu.ppt (1-46 oldal)

Könyv: 7.4 fejezet: Műveletek költségének becslése (395-409 oldal)

Több tábla összekapcsolása, futószalagosítás, materializáció: L11QueryExecution.ppt (33-35 oldal)

            A fóliák magyarul Györök Péter hallgató fordításában: L11QueryExecution-hu.ppt

           Könyv: 7.6 fejezet: Összekapcsolások sorrendjének megválasztása (423-426 oldal)

                                   7.7.3 Futószalagosítás és materializáció (441-445 oldal)

            Relációs algebrai optimalizáció: algebrai opt.ppt (106-116 oldal)

                       Könyv: 7.2 fejezet: Algebrai szabályok lekérdezéstervek javítására (367-382 oldal)

        6. Példa relációs algebrai optimalizálásra: algebrai opt.ppt (117-126 oldal)

            Az Oracle szabályalapú optimalizálása: L11QueryExecution.ppt (39-41 oldal)

            Az Oracle költségalapú optimalizálása:  L11QueryExecution.ppt  (42-45 oldal)

            Az Oracle lekérdezésterveinek megjelenítése, értelmezése, Explain plan, tkprof, hintek, hierarchikus lekérdezések (connect by prior): use_explain.ppt (1-56 oldal)

                        A fóliák magyarul Molnár Dávid hallgató fordításában: use_explain_HUN.ppt (1-56 oldal)

            Az optimalizálásban fontos relációs algebrai művelet: a félig-összekapcsolás (semi-join) és alkalmazása osztott lekérdezésekre:

algebrai opt.ppt (36-41 oldal), QueryProcessingWithSemijoin.ppt (5-8 oldal)

            A fóliák magyarul Györök Péter hallgató fordításában: QueryProcessingWithSemijoin-hu.ppt

        7. Bitmap index: 9ituning.ppt (83-87 oldal)

                        A fóliák magyarul Györök Péter hallgató fordításában: 9ituning-hu.ppt

                        Könyv: 5.4 fejezet: Bittérképindexek (253-260 oldal)

            A Q(A,B) JOIN R(B,C) JOIN S(C,D) háromféle kiszámítási módja és költsége, (feltéve, hogy Q,R,S paraméterei megegyeznek, Q.B-re és S.C-re klaszterindexünk van).

a)      balról  jobbra, b) balról jobbra és a memóriában összekapcsolva a harmadik táblával, c) a középső ténytábla soraihoz kapcsolva a szélső dimenziótáblákat.

 QjoinRjoinS.pdf

            Összekapcsolások sorrendje, dinamikus programozás: 20.joinorder.ppt (8-16 oldal), 09_qp_opt.ppt (16-20 oldal), ch14.ppt (40-41 oldal)

                        Könyv: 7.6 fejezet (423-433 oldal)

Oracle összekapcsolások átírása hatékonyabb félig-összekapcsolással: semijoins.ppt (1-27 oldal)

Adatintegráció, XML, HTML: xml.ppt (1-5 oldal)

        8. XML, jólformált XML, attribútumok, névterek, DTD, Xpath, útkifejezések, tengelyek, XQuery, FLWR-kifejezések: xml.ppt (6-35 oldal)

                         Adatbázisrendszerek alapvetés könyv: 11.2 fejezet: XML (520-528 oldal), 11.3 fejezet: DTD (528-535 oldal),

           12.1 fejezet: XPath (553-560 oldal), 12.2 XQuery (565-579 oldal)

Oracle XML DB, XML típusú tábla, XML típusú attribútum, XMLType(), XMLElement(), getCLOBVal(), XMLQuery(), XMLTable() függvények használata: 

xml.ppt (37,39, 43-45, 50-51, 54-58 oldal)

(Az érdeklődőknek további, a részleteket jobban megvilágító, de nem kötelező segédanyagok: xml.pdf, xml07-oracle.ppt )

         9. Rendszerhibák kezelése, konzisztens adatbázis, tranzakciók, hibafajták, semmisségi (undo) naplózás és helyreállítás, ellenőrzőpont, ellenőrzőpont működés közben:  naplo.ppt (1-72 oldal)

                        Könyv: 8.1, 8.2 fejezetek (454-476 oldal)

        10. Helyrehozó (Redo) maplózás, semmiségi/helyrehozó (Undo/Redo) naplózás, archiválás: naplo.ppt    (73-118 oldal)

                        Könyv: 8.3, 8.4, 8.5 fejezetek (477-496 oldal)

  11. Az Oracle naplózási/helyreállítási megoldásai: naplo.ppt (119-127 oldal), oracle_9-1.ppt (17-18 oldal)

              Konkurenciavezérlés, ütemezés, sorbarendezhetőség, konfliktus-sorbarendezhetőség, megelőzési gráf, fogalmak, állítások (bizonyítás nélkül), példák:

konkurencia.ppt (1-29 oldal, bizonyítások nélkül)

Könyv: 9.1, 9.2 fejezetek: Konkurenciavezérlés (498-511 oldal)

  Zárolási ütemező, kétfázisú zárolás, holtpont, várakozási gráf, fogalmak, állítások (bizonyítás nélkül), példák:

                        konkurencia.ppt (30-51 oldal, bizonyítások nélkül)

                        Könyv: 9.3 fejezet (513-519 oldal)

         12. Különböző zármódú zárolási rendszerek, osztott és kizárólagos zárak, kompatilibiltási mátrix, zárak felminősítése, módosítási zárak, növelési zárak:

konkurencia.ppt (52-74 oldal, bizonyítások nélkül)

                        Könyv:  9.4 fejezet (521-529 oldal)

               Zárolási ütemező felépítése

konkurencia.ppt (75-88 oldal, bizonyítások nélkül)

                        Könyv: 9.5 fejezet (532-537 oldal)

               Adatbáziselemekből álló hierarchiák kezelése

konkurencia.ppt (89-92 oldal, bizonyítások nélkül)

                        Könyv 9.6 fejezet (538-539 oldal)

          13. Hierarchikus adatok zárolása, figyelmeztető zárak: konkurencia.ppt (89-98 oldal)

                        Könyv: 9.6.2. (539-541 oldal)

                Nem ismételhető olvasás és fantom kezelése: konkurencia.ppt (107-111 oldal)

                        Könyv: 9.6.3. (542-543 oldal)

                Indexelt elérés, mászóka elv, faprotokoll: konkurencia.ppt (116-121 oldal)

                        Könyv: 9.7.1-2. (544-546 oldal)

                Időbélyegzés, túl késő írás/olvasás, piszkos adatok olvasása, Thomas-féle írás: konkurencia.ppt (131-142 oldal)

                        Könyv: 9.8. (550-554 oldal)

                Többváltozatú időbélyegzés: konkurencia.ppt (152. oldal)

Könyv: 9.8.5. (556-558 oldal)

    Érvényesítés: konkurencia.ppt (157-166 oldal)

                        Könyv: 9.9.1. (560-561 oldal)

    A 3 konkurenciavezérlés összehasonlítása: konkurencia.ppt (171-173 oldal)

    Az Oracle tranzakció-kezelési megoldásai: konkurencia.ppt (174-194 oldal)