| Előszó a magyr kiadáshoz | 19 |
| Előszó | 21 |
| Bevezetés az adatbázis-kezelő rendszerek implementálásába | 24 |
| Bevezetés: a Megatron 2000 adatbázisrendszer | 25 |
| A Megatron 2000 implementálásának részletei | 26 |
| Hogyan hajtja végre a Megatron 2000 a lekérdezéseket? | 27 |
| Mi a baj a Megatron 2000-rel? | 29 |
| Egy adatbázis-kezelő rendszer áttekintése | 30 |
| Az adatdefiníciós nyelv parancsai | 30 |
| A lekérdezés feldolgozásának áttekintése | 30 |
| A központi memória pufferei és a pufferkezelő | 32 |
| A tranzakció feldolgozása | 33 |
| A lekérdezésfeldolgozó | 34 |
| A könyv vázlatos felépítése | 35 |
| Előismeretek | 35 |
| A tárkezelés áttekintése | 36 |
| A lekérdezésfeldolgozás áttekintése | 37 |
| A tranzakciófeldolgozó áttekintése | 37 |
| Az információintegráció áttekintése | 38 |
| Az adatmodellek és nyelvek áttekintése | 38 |
| A relációs modell áttekintése | 38 |
| Az SQL áttekintése | 39 |
| A relációs és objektumorientált adatok | 42 |
| Összefoglalás | 44 |
| Irodalomjegyzék | 44 |
| Adattárolás | 46 |
| A memóriahierarchia | 47 |
| Cache | 47 |
| A központi memória | 48 |
| Virtuális memória | 49 |
| Másodlagos tárolás | 51 |
| Felejtő és nem felejtő tárolás | 54 |
| Feladatok | 55 |
| Lemezek | 55 |
| A lemezek mechanikája | 56 |
| A lemezvezérlő | 57 |
| A lemeztárolók jellemzői | 58 |
| A lemezhozzáférés jellemzői | 60 |
| Blokkok írása | 64 |
| Blokkok módosítása | 64 |
| Feladatok | 65 |
| A másodlagos tárolók hatékony használata | 66 |
| A számítás I/O-modellje | 66 |
| Adatok rendezése a másodlagos tárolóban | 67 |
| Az összefésülő rendezés (Merge-Sort) | 68 |
| Kétfázisú, többutas, összefésülő rendezés | 70 |
| A többutas összefésülés kiterjesztése nagyobb relációkra | 72 |
| Feladatok | 74 |
| A másodlagos tároló hozzáférési idejének javítása | 75 |
| Az adatok cilinderes szervezése | 77 |
| Több lemez használata | 78 |
| Lemezek tükrözése | 80 |
| A lemez ütemezése és a lift algoritmus | 80 |
| Korai beolvasás és nagy léptékű pufferezés | 84 |
| A stratégiák előnyeinek és hátrányainak összegzése | 86 |
| Feladatok | 87 |
| Lemezhibák | 89 |
| Ideiglenes meghibásodás | 90 |
| Ellenőrző összegek | 90 |
| Stabil tárolás | 92 |
| A stabil tárolás hibakezelő képessége | 92 |
| Feladatok | 93 |
| Lemezhiba helyreállítása | 94 |
| A lemezek meghibásodási modelljei | 94 |
| A tükrözés mind redundanciatechnika | 95 |
| Paritásblokkok | 96 |
| Egy továbbfejlesztés: az 5. szintű RAID | 100 |
| Mi a teendő, ha több lemez is tönkremenet? | 101 |
| Feladatok | 104 |
| Összefoglalás | 107 |
| Irodalomjegyzék | 109 |
| Adatelemek ábrázolása | 111 |
| Adatelemek és mezők | 111 |
| Relációs adatbáziselemek ábrázolása | 112 |
| Objektumok ábrázolása | 113 |
| Adatelemek ábrázolás | 114 |
| Rekordok | 119 |
| Rögzített hoszú rekordok építése | 119 |
| Rekordfejlécek | 121 |
| Rögzített hosszú rekordok blokkokba pakolása | 123 |
| Feladatok | 124 |
| Blokkcímek és rekordcímek ábrázolása | 125 |
| Kliens-szerver rendszerek | 125 |
| Logikai és strukturált címek | 127 |
| Mutatók helyreigazítása | 129 |
| Blokkok visszaírása a lemezre | 133 |
| Feltűzött rekordok és blokkok | 134 |
| Feladatok | 135 |
| Változó hosszú adatok és rekordok | 137 |
| Véltozó hosszú mezőket tartalmazó rekordok | 138 |
| Ismétlődő formátumú rekordok | 141 |
| Olyan rekordok, amelyek nem férnek el egy blokkban | 142 |
| Bináris, nagy objektumok (BLOB-ok) | 143 |
| Feladatok | 144 |
| Rekordmódosítások | 146 |
| Beszúrás | 146 |
| Törlés | 148 |
| Módosítás | 149 |
| Feladatok | 150 |
| Összefoglalás | 151 |
| Irodalomjegyzék | 152 |
| Indexstruktúrák | 153 |
| Indexek szekvenciális fájlokon | 154 |
| Szekvenciális fájlok | 155 |
| Sűrű indexek | 155 |
| Ritka indexek | 158 |
| Többszintű indexelés | 159 |
| Indexelés ismétlődő keresésikulcs-érték esetén | 161 |
| Indexek kezelése adatmódosításkor | 164 |
| Feladatok | 170 |
| Másodlagos indexek | 171 |
| Másodlagos indexek tervezése | 172 |
| Másodlagos indexek alkalmazása | 173 |
| Közvetett másodlagos indexek | 175 |
| Dokumentumok visszakeresése és az invertált indexek | 178 |
| Feladatok | 181 |
| B-fák | 184 |
| B-fák szerkezete | 184 |
| B-fák alkalmazása | 187 |
| Keresés B-fában | 189 |
| Tartományra vonatkozó lekérdezések | 190 |
| Beszúrás B-fában | 191 |
| Törlés B-fában | 194 |
| B-fák hatékonysága | 197 |
| Feladatok | 197 |
| Tördelőtáblázatok | 200 |
| Másodlagos tárolón tárolt tördelőtáblázatok | 201 |
| Beszúrás tördelőtáblázatba | 202 |
| Törlés tördelőtáblázatban | 202 |
| Tördelőtáblázat-indexek hatékonysága | 203 |
| Kiterjeszthető tördelőtáblázatok | 204 |
| Beszúrás kiterjeszthető tördelőtáblázatokba | 205 |
| Lineáris tördelőtáblázatok | 207 |
| Beszúrás lineáris tördelőtáblázatokba | 209 |
| Feladatok | 211 |
| Összefoglalás | 213 |
| Irodalomjegyzék | 214 |
| Többdimenziós indexek | 216 |
| Többdimenziós alkalmazások | 217 |
| Térinformatikai rendszerek | 217 |
| Adatkockák | 218 |
| Többdimenziós lekrédezések SQL-ben | 219 |
| Tartománylekérdezések végrehajtása hagyományos indexekkel | 221 |
| Legközelebbi szomszéd-lekérdezések végrehajtása hagyományos indexekkel | 222 |
| A hagyományos indexek további korlátjai | 224 |
| A többdimenziós indexstruktúrűk áttekintése | 224 |
| Feladatok | 225 |
| Tördelésen alapuló stuktúrák többdimenziós adatokhoz | 226 |
| Rácsos állományok | 227 |
| Keresés rácsos állományban | 227 |
| Beszúrás rácsos állományba | 229 |
| A rácsos állományok hatékonysága | 230 |
| Particionált tördelőfüggvények | 233 |
| A rácsos állományok és a particionált tördelés összehasonlítása | 234 |
| Feladatok | 235 |
| Faszerű struktúrák többdimenziós adatokhoz | 238 |
| Többkulcsos indexek | 238 |
| A többkulcsos indexek hatékonysága | 240 |
| kd-fák | 241 |
| Műveletek a kd-fákon | 243 |
| A kd-fák alkalmazása másodlagos tárolók esetén | 245 |
| Quad-fák | 246 |
| R-fák | 248 |
| Műveletek az R-fákon | 249 |
| Feladatok | 251 |
| Bittérképindexek | 253 |
| Indítékok a bittérképindexekhez | 254 |
| Tömörítette bittérképek | 256 |
| Műveletek szakaszhosszkódolt bitvektorokon | 258 |
| Bittérképindexek kezelése | 259 |
| Feladatok | 260 |
| Összefoglalás | 261 |
| Irodalomjegyzék | 263 |
| Lekérdezések végrehajtása | 265 |
| Algebrai megközelítés | 267 |
| Egyesítés, metszet és különbség | 269 |
| Kiválasztás | 270 |
| Vetítés | 272 |
| Relációk szorzata | 273 |
| Összekapcsolások | 274 |
| Ismétlődések kiküszöbölése | 276 |
| Csoportosítás és összesítés | 277 |
| Kifejezésfák | 280 |
| Feladatok | 282 |
| Bevezetés a fizikai lekérdezésterv-operátorok világába | 285 |
| Táblák átvizsgálása | 285 |
| Rendezés a táblák átvizsgálásakor | 286 |
| A fizikai operátorok kiszámításának modellje | 287 |
| A költségbecslés paraméterei | 287 |
| Az átvizsgáló operátorok I/O-költsége | 289 |
| Fizikai operátorok megvalósításához használatos iterátorok | 290 |
| Beágyazott ciklusú összekapcsolások | 303 |
| Sor alapú beágyazott ciklusú összekapcsolások | 303 |
| Sor alapú beágyazott ciklusú összekapcsolás | 304 |
| Egy iterátor a sor alapú beágyazott ciklusú összekapcsoláshoz | 304 |
| Az eddigi algoritmus összefoglalása | 307 |
| Feladatok | 308 |
| Rendezésen alapuló kétmenetes algoritmusok | 308 |
| Ismétlődések kiküszöbölése rendezés segítségével | 309 |
| Az egyesítés egy rendezésen alapuló algoritmusa | 312 |
| A metszet és a különbség rendezésen alapuló algoritmusai | 313 |
| Egy egyszerű rendezésen alapuló összekapcsolási algoritmus | 315 |
| Az egyszerű rendezéses összekapcsolás elemzése | 317 |
| Egy hatékonyabb rendezésen alapuló összekapcsolás | 317 |
| A rendezésen alapuló algoritmusok összefoglalása | 319 |
| Feladatok | 319 |
| Tördelésen alapuló kétmentes algoritmusok | 321 |
| Relációk particionálása tördeléssel | 321 |
| Egy tördelésen alapuló algoritmus az ismétlődések kiküszöbölésére | 322 |
| Egy tördelésen alapuló algoritmus a csoportosításra és az összesítésre | 323 |
| Az egyesítés, a metszet és a különbség tördelésen alapuló algoritmusai | 323 |
| A tördelésen alapuló algoritmusok összefoglalása | 327 |
| Feladatok | 328 |
| Index alapú algoritmusok | 329 |
| Nyalábolt és nem nyalábolt indexek | 329 |
| Index alapú kiválasztás | 330 |
| Összekapcsolás index segítségével | 333 |
| Összekapcsolások rendezett index segítségével | 334 |
| Feladatok | 336 |
| Pufferkezelés | 337 |
| A pufferkezelő működése | 338 |
| Kapcsolat a fizikai operátor kiválasztása a pufferkezelés között | 340 |
| Feladatok | 342 |
| Több mint kétmentes algoritmusok | 343 |
| Többmenetes, rendezésen alapuló algoritmusok | 343 |
| Többmenetes, rendezésen alapuló algoritmusok műveletigénye | 344 |
| Többmenetes, tördelésen alapuló algoritmusok | 345 |
| Többmenetes, tördelésen alapuló algoritmusok műveletigénye | 345 |
| Feladatok | 346 |
| Párhuzamos algoritmusok relációs műveletekre | 347 |
| A párhuzamosság modelljei | 347 |
| Soronként műveletek párhuzamos megvalósítása | 350 |
| Teljes relációs műveletek párhuzamos algoritmusai | 351 |
| A párhuzamos algoritmusok hatékonysága | 352 |
| Feladatok | 355 |
| Összefoglalás | 356 |
| Irodalomjegyzék | 358 |
| A lekérdezésfordító | 359 |
| Elemzés | 360 |
| Szintaktikus elemzés és elemzőfák | 360 |
| Egy leegyszerűsített SQL-részletet leíró nyelvtan | 361 |
| Az előfeldolgozó | 366 |
| Feladatok | 367 |
| Algebrai szabályok lekérdezéstervek javítására | 367 |
| Kommutatív és asszociatív szabályok | 368 |
| Kiválasztással kapcsolatos szabályok | 371 |
| Kiválsztások tologatása | 374 |
| Vetítéssel kapcsolatos szabályok | 375 |
| Összekapcsolásra és szorzatra vonatkozó szabályok | 379 |
| Ismétlődések elhagyására vonatkozó szabályok | 379 |
| Csoportosításra és összesítésre vonatkozó szabályok | 380 |
| Feladatok | 382 |
| Elemzőfák átalakítása logikai lekérdezéstervekké | 384 |
| Átfordítás relációs algebrába | 384 |
| Alkérdéek eltávolítása feltételekből | 386 |
| Logikai lekérdezéstervek javítása | 391 |
| Asszociatív/kommutatív operátorok csoportosítása | 393 |
| Feladatok | 394 |
| Műveletek költségének becslése | 395 |
| Közbülső relációk méretének becslése | 395 |
| Vetítés méretének becslése | 397 |
| Kiválasztás méretének becslése | 398 |
| Összekapcsolás méretének becslése | 401 |
| Természetes összekapcsolás több összekapcsolási attribútummal | 403 |
| Sok reláció össszekapcsolása | 405 |
| Egyéb műveletek méretének becsléses | 406 |
| Feladatok | 409 |
| Bevezetés a költség alapú tervválasztásba | 410 |
| Méretre vonatkozó paraméterek becslése | 411 |
| Statisztikák növekményes kiszámítása | 414 |
| Logikai lekérdezésektervek költségének csökkentésére irányuló heurisztikák | 416 |
| Fizikai tervek felsorolásának lehetőségei | 418 |
| Feladatok | 421 |
| Összekapcsolások sorrendjének megválasztása | 423 |
| Összekapcsolások bal és job oldali argumentumainak jelentősége | 423 |
| Összekapcsolási fák | 424 |
| Bal-mély összekapcsolási fák | 425 |
| Dinamikus programozás az összekapcsolási sorrend és csoportosítás megválasztására | 428 |
| Dinamikus programozás részletesebb költségfüggvényekkel | 433 |
| Egy mohó algoritmus az összekapcsolási sorrend kiválasztására | 434 |
| Feladatok | 435 |
| A fizikai lekérdezésterv kiválasztásának befejezése | 437 |
| Kiválasztási eljárás megválasztása | 437 |
| Összekapcsolási eljárás megválasztása | 440 |
| Futószalagosítás és materializáció | 441 |
| Unáris műveletek futószalagosítása | 442 |
| Bináris műveletek futószalagosítása | 443 |
| Fizikai lekérdezéstervekkel kapcsolatos jelölések | 445 |
| Fizikai operátorok sorrendbe állítása | 449 |
| Feladatok | 449 |
| Összefoglalás | 451 |
| Irodalomjegyzék | 452 |
| A rendszerhibák kezelése | 454 |
| A helyreállítható beavatkozások példái és modelljei | 454 |
| A hibák fajtái | 455 |
| Részletesebben a tranzakciókról | 457 |
| A tranzakciók korrekt végrehajtása | 458 |
| A tranzakciók alaptevékenységei | 460 |
| Feladatok | 463 |
| Semmisségi (undo) naplózás | 463 |
| Naplóbejegyzések | 465 |
| A semmisségi naplózás szabályai | 466 |
| Helyreállítás a semmisségi naplózás használatával | 468 |
| Az ellenőrzőpont-képzés | 471 |
| Ellenőrzőpont-képzés a rendszer működése közben | 473 |
| Feladatok | 476 |
| Helyrehozó naplózás (redo logging) | 477 |
| A helyrehozó naplózás szabályai | 478 |
| Helyreállítás a helyrehozó naplózás használatával | 479 |
| Helyrehozó naplóás ellenrőzőpont-képzés használatával | 480 |
| Visszaállítás az ellenőrzőponttal kiegészített helyrehozó típusú naplózással | 482 |
| Feladatok | 483 |
| A semmisség/helyrehozó (undo/redo) naplózás | 484 |
| A semmiség/helyrehozó (undo/redo) naplózás szabályai | 484 |
| Helyreállítás a semmisségi/helyrehozó (undo/redo) naplózás használatakor | 485 |
| Semmisségi/helyrehozó naplózás ellenőrzőpont-képzéssel | 487 |
| Feladatok | 489 |
| Az eszközök meghibásodása elleni védekezés | 490 |
| Az archívmentés | 490 |
| Archívmentés | 490 |
| Archiválás működés közben | 491 |
| Helyreállítás az archívmentés és a napló használatával | 494 |
| Feladatok | 495 |
| Összefoglalás | 495 |
| Irodalomjegyzék | 497 |
| Konkurenciavezérlés | 498 |
| Soros és sorba rendezhető ütemezések | 499 |
| Ütemezések | 499 |
| Soros ütemezések | 500 |
| Sorba rendezhető ütemezések | 501 |
| A tranzakció szemantikájának hatása | 503 |
| A tranzakciók és ütemezések jelölése | 504 |
| Feladatok | 505 |
| Konfliktus-sorbrendezhetőség | 505 |
| Konfliktusok | 506 |
| Megelőzési gráfok és teszt a konfliktus-sorbarendezhetőségre | 507 |
| Miért működik a megelőzési gráfon alapuló tesztelés? | 510 |
| Feladatok | 511 |
| A sorbarendezhetőség biztosítása zárakkal | 513 |
| Zárak | 514 |
| A zárolási ütemező | 516 |
| A kétfázisú zárolás | 517 |
| Miért működik a kétfázisú zárolás? | 517 |
| Feladatok | 519 |
| Különböző zármódú zárolási rendszerek | 521 |
| Osztott és kizárólagos zárak | 521 |
| Kompatibilitási mátrixok | 523 |
| Zárak felminősítése | 524 |
| Módosítási zárak | 526 |
| Növelési zárak | 527 |
| Feladatok | 529 |
| A zárolási ütemező felépítése | 532 |
| Zárolási műveletekekt beszúró ütemező | 532 |
| A zártábla | 534 |
| Feladatok | 537 |
| Adatbáziselemekből álló hiearchiák kezelése | 538 |
| Többszörös szemcsézettségű zárak | 538 |
| A figyelmeztető zárak | 539 |
| Fantomok és a beszúrások helyes kezelése | 542 |
| Feladatok | 543 |
| Faprotokoll | 544 |
| Fa alapú zárolások idítékai | 544 |
| Faszerkezetű adatok hozzáférési szabályai | 545 |
| Miért működik a faprotokoll? | 546 |
| Feladatok | 549 |
| Konkurenciavezérlés időbélyegzőkkel | 550 |
| Időbélyegzők | 551 |
| Fizikailag nem megvalósítható viselkedések | 552 |
| Piszkos adatok problémái | 553 |
| Az időbélyegzőn alapuló ütemezések szabályai | 554 |
| Többváltozatú időbélyegzők | 556 |
| Az időbélyegzők ás zárolások | 558 |
| Feladatok | 559 |
| Konkurenciavezérlés érvényesítéssel | 560 |
| Érvényesítésen alapuló ütemező felépítése | 560 |
| Az érvényesítési szabályok | 561 |
| Három konkurenciavezérlés működésének összehasonlítása | 564 |
| Feladatok | 565 |
| Összefoglalás | 565 |
| Irodalomjegyzék | 568 |
| Bővebben a tranzakciókezelésről | 569 |
| Tranzakciók, melyek nem véglegesített adatokat olvasnak | 569 |
| A piszkos adat probléma | 570 |
| Továbbgyűrűző visszagörgetés | 572 |
| A visszagörgetés kezelése | 573 |
| Csoportos véglegesítés | 574 |
| Logikai naplózás | 576 |
| Feladatok | 579 |
| Nézet-sorbarendezhetőség | 580 |
| Nézetekvivalencia | 580 |
| Poligráfok és nézet-sorbarendezhetőségi teszt | 582 |
| A nézet-sorbarendezhetőség tesztelése | 585 |
| Feladatok | 585 |
| Holtpontkezelés | 586 |
| Holtpontérzékelés időkorláttal | 586 |
| A várakozási gráf | 587 |
| Holtpontmegelőzés az elemek sorbarendezésével | 589 |
| Holtpontérzékelés időbélyegzővel | 591 |
| A holtpontkezelő módszerek összehasonlítása | 593 |
| Feladatok | 594 |
| Osztott adatbázisok | 595 |
| Osztott adatok | 596 |
| Osztott tranzakciók | 597 |
| Adattöbbszörözés | 598 |
| Osztott lekérdezésoptimalizálás | 599 |
| Feladatok | 600 |
| Osztott véglegesítés | 600 |
| Az osztott atomosság támogatása | 601 |
| Kétfázisú véglegesítés | 601 |
| Az osztott tranzakciók helyreállítása | 604 |
| Feladatok | 606 |
| Osztott zárolás | 607 |
| Központosított zárolási rendszerek | 607 |
| Költségmodell az osztott zárolási algoritmusokhoz | 608 |
| Többszörözött elemek zárolása | 609 |
| Az elsődleges példány zárolása | 610 |
| A lokális zártól a globálisig | 611 |
| Feladatok | 612 |
| Hosszú tranzakciók | 613 |
| A hosszú tranzakciók problémái | 613 |
| Regék | 616 |
| Kiegyenlítő tranzakciók | 617 |
| Miért működnek jól a kiegyenlítő tranzakciók? | 619 |
| Feladatok | 619 |
| Összefoglalás | 620 |
| Irodalomjegyzék | 622 |
| Információk egyesítése | 624 |
| Az információgyesítés módjai | 624 |
| Az egyesítés problémái | 625 |
| Adatbázis-szövetség | 627 |
| Adattárházak | 628 |
| Adatközvetítő | 631 |
| Feladatok | 633 |
| Borítékolók a közvetítő alapú rendszerekben | 635 |
| Sablonok lekérdezési formákhoz | 635 |
| Borítékoló generátor | 636 |
| Szűrők | 637 |
| A borítékoló más műveletei | 639 |
| Feladatok | 641 |
| On-line analitikus feldolgozás | 641 |
| OLAP-alkalmazások | 643 |
| OLAP-adatok többdimenziós nézete | 644 |
| A csillag séma | 645 |
| Szeletelés és kockázás | 647 |
| Feladatok | 650 |
| Adatkocka | 651 |
| A kockaművelet | 652 |
| Kockaimplementáció megvalósított nézettáblákkal | 655 |
| Nézetháló | 658 |
| Feladatok | 660 |
| Adatbányászat | 662 |
| Adatbányászati alkalmazások | 663 |
| Társítási szabály bányászat | 666 |
| Az előzetes algoritmus | 667 |
| Összefoglalás | 670 |
| Irodalomjegyzék | 671 |
| Index | 675 |