The wiki page is under active construction, expect bugs.

This is an old revision of the document!


Konceptuální a logický datový model, dotazovací jazyk SQL, transakční zpracování, objektově-relační mapování, noSQL databáze.

B0B36DBS Webové stránky předmětu

  • Konceptuální modelování – ER (entitní typy, atributy, identifikátory, vztahové typy, n-ární, rekurzivní, slabé entitní typy, ISA hierarchie). Logické modely (tabulkový, objektový, stromový, grafový). Relační model (definice, klíč, nadklíč, cizí klíč), transformace ER schématu do relačního schématu.
  • Relační databáze – datový model, NULL hodnoty, tříhodnotová logika, integritní omezení (NOT NULL, UNIQUE, PRIMARY KEY, CHECK, FOREIGN KEY a referenční akce), umělé identifikátory.
  • Jazyk SQL – definice schématu. Manipulace s daty (SELECT, INSERT, UPDATE, DELETE). Spojování tabulek, predikáty, řazení, seskupování a agregace, množinové operace, vnořené dotazy. Pohledy (aktualizovatelnost, CHECK OPTION). Procedurální rozšíření (funkce, kurzory, triggery).
  • Fyzická vrstva – bloky, sloty, buffer management. Organizace záznamů (halda, seřazený soubor, hašovaný soubor, složitost operací), indexové struktury (B+-stromy, hašované indexy, bitmapové indexy).
  • Funkční závislosti – definice, Armstrongovy axiomy, úpravy závislostí (funkční uzávěr, pokrytí, kanonické pokrytí, redundantní závislost, neredundantní pokrytí, atributový uzávěr, redukovaná závislost, minimální pokrytí). Hledání klíčů (nalezení prvního klíče, Lucchesi-Osborn). Normální formy (první, druhá, třetí, Boyceho-Coddova).
  • Transakce – základní pojmy, ACID vlastnosti, BEGIN a COMMIT, rozvrh / historie, uspořádatelnost / serializovatelnost. Konfliktová uspořádatelnost (konflikty WR, RW, WW, precedenční graf), zamykací protokoly (dvoufázové a striktní dvoufázové zamykání), uváznutí (deadlock, graf čekání, Coffmanovy podmínky, strategie wait-die a wound-wait), fantom.

Konceptuální modelování

  • ER diagramy - diagramy zobrazující realnou strukturu systému, pomáhají uvědomit si co je potřeba zavést do databáze.
  • ER - Entity-relationship model
  • Nemá standardy - takže si každý z prdele tahá notaci a je to uplně k hovnu
  • Méně využíván než UML (for good fucking reason too)

Entitní typy

Entita je obecně osoba, projekt, nějaký objekt = třída v UML.

  • Silní entitní typ - má alespoň jeden plný identifikátor (např. název u projektu)
  • Slabý entitní typ - nemá plný identifikátor, má jeden nebo více částečných id → jeho identifikace závisí na jiné entitě

Atributy

  • Vlastnost entity

  • Mají název a kardinalitu (množství)
  • Složené atributy - basically více atributů složené do jednoho (např. adresa)
  • mají datový typ

Identifikátory

  • Atribut nebo skuipina atributů, která jednoznačně určuje entitu
  • Rozdělení
    • Plné - atribut nebo skupina atributů jedné entity

  • Částečné - pomocí vazby na jinou entitu, dovoluje pouze kardinalitu (1,1)

Vztahové typy

Relační databáze

Jazyk SQL

Fyzická vrstva

Funkční závislosti

Transakce

Navigation

Playground

QR Code
QR Code statnice:bakalar:b0b36dbs (generated for current page)