DATABÁZOVÉ SYSTÉMY Flashcards

(28 cards)

1
Q

NÁVRH DATABÁZE

A
  • Návrh databáze vychází z požadavků uživatele. Ty je nutné analyzovat a zjistit, která data má smysl udržovat - a která ne. Dáe v jakých datových strukturách a v jakých vztazích mezi sebou.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

NÁVRH DATABÁZE - Konceptuální model

A
  • „jak to bude fungovat“
    - Formální popis uživatelské aplikace
    - Je založen na chápání světa jako množiny základních objektů – entit a vztahů mezi nimi.
    - Nejvyšší úroveň abstrakce, grafický
    - Konceptuální modely řeší přesnější vyjádření vztahů ve světě objektů
    - konceptuální schéma popisuje objekty aplikace
    - Měli by mu rozumět i běžní uživatelé
    - Nezávislý na implementaci (DB)
    - Obsahuje pouze názvy a vazby
    - Podporuje diskusi a komunikaci
    Předchází chybám a nedorozumění
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

NÁVRH DATABÁZE - entity

A
  • Představují objekty/osoby/věci, o kterých je třeba uchovávat informace zaznamenávané podle skutečnosti
    - Pojmenování souboru několika podobných objektů
    - Lze přirovnat ke třídám objektů stejného typu:
    FILM, ZÁKAZNÍK, ZAMĚSTNANEC, ZVÍŘE
    Instance je poté jeden případ výskytu entity
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

NÁVRH DATABÁZE - Atributy

A
  • Blíže popisují vlastnosti entit.
    □ Kvantifikují příslušnou entitu
    □ Kvalifikují příslušnou entitu
    □ Zařazují a přesňují příslušnou entitu
    - Je jím jedna hodnota určitého datového typu - např. věk od hodnot 0 do 120
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

NÁVRH DATABÁZE - Povinnost atributů

A
  • Povinné atributy se značí *
  • Volitelné atributy se značí o
  • Primární identifikátory se značí #
    Unikátní identifikátory se značí U
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

NÁVRH DATABÁZE - Maticové diagramy

A
  • Jde o metodu identifikaci vztahů mezi entitami
    Není u nich zaměřeno na násobnost či povinnost vazeb
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

NÁVRH DATABÁZE - Kardinalita

A
  • Určuje kolikrát se každá instance dané entity může učastnit specifikovaných vazeb
    Např. 1:1, 1:n, n:n
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

NÁVRH DATABÁZE - Integritní omezení (IO)

A
  • Vymezují korektnost databáze
    - Umožňují do výsledné databáze vkládat pouze data, která vyhovují předem definovaným kritériím
    - Základní omezení označuje možnost existence nedefinovaného stavu atributu - tedy NULL či NOT NULL
    - Další omezení lze zavést jako doplňující podmínku - CHECK
    - Kazdému atributu lze definovat klíč:
    □ PRIMARY KEY - Primární klíč
    □ UNIQUE - Unikátní
    □ REFERENCES - Cizí klíč
    Pojmenované omezení se uvádí jako CONSTRAINT jméno
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

NÁVRH DATABÁZE - Systém řízení báze dat (SŘBD)

A
  • Softwarový systém, umožňující definovat, vytvořit a řídit přístup do databáze.
    - Kolekce programů, které tvoří rozhraní mezi aplikačními programy a uloženými daty.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

ENTITNĚ-RELAČNÍ MODEL

A
  • Metoda datového modelování
    • Definuje způsob uložení dat v databázi
    • Data modelována tabulkami/relacemi
    • Přesně popisuje potřeby uchování dat
    • Orientovaný na objekty (entity a vztahy mezi nimi)
    • Neřeší implementaci
    • Pokrývá současné potřeby s možností dalšího rozvoje
    • Výsledkem je konceptuální schéma
    • Obsahuje názvy, vazby a atributy entit
    • Specifikuje atributy (povinné, volitelné, unikátní)
    • Specifikuje vazby
    • Obsahuje ERDish věty (jazyk, který popisuje vztahy mezi entitami ve slovním vyjádřením).

Vytváříme logické ERD, tak i fyzické ERD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

ENTITNĚ-RELAČNÍ MODEL - logický

A
  • Propracovanější konceptuální model
  • Obsahuje pouze entity, jejich atributy a klíče, a vazby mezi entitami
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

ENTITNĚ-RELAČNÍ MODEL - fyzický

A
  • Jde o implementaci logického ERD modelu v konkrétním databázovém systému
    Určuje, jakým způsobem jsou data uložena
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

NORMÁLNÍ FORMY

A
  • Normální formy jsou určitá pravidla, kterou slouží k uvedení databáze do “optimální” podoby.
  • Snahou normálních forem je co nejvíce redukovat redundanci.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

NORMÁLNÍ FORMY - 1. Normální forma

A
  • Všechny atributy jsou atomické (co nejvíce oddělené).
    • Např. Jméno a příjmení odděleně
    • Musíme se zde řídit, zda nějakou databázi chceme např. řadit dle nějakého atributu - např.:
      • Pokud chceme někomu jen poslat pohled, adresa může být jen v rámci jednoho atributu
      • Pokud budeme v nějaké databázi na základě adresy chtít zjistit, kdo všechno se nachází v Brně, bude již nutné adresu rozdělit.
        Většinou dodržení této normální formy vede k vytvoření nové entity:
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

NORMÁLNÍ FORMY - 2. Normální forma

A
  • Každý neklíčový atribut musí plně závislý na každém kandidním klíči.
    - Např. na obrázku níže je pouze číslo účtu závislé na kódu banky.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

NORMÁLNÍ FORMY - 3. Normální forma

A
  • Všechny neklíčové atributy musí být vzájemně nezávislé.
17
Q

DOTAZOVACÍ JAZYKY

A
  • Realizují výběr dat z databází
    • Umožňují ovládat databázi prostřednictvím dotazů
    • Vlastnosti dotazovacích jazyků:
      • Konstruován tak, aby ke každému výrazu jazyka bylo možné přiřadit dotaz
      • Konstruován tak, aby pomocí něho šlo vyjádřit jakýkoliv databázový dotaz
      • V dnešní době SQL, MongoDB, DMX, Dataloq …
18
Q

SQL A PROCEDURÁLNÍ ROZŠÍŘENÍ SQL

A
  • SQL - neboli Structured Query Language
    • Používán od 70. let
    • Používá se pro práci s relačními databázemi
    • Umožňují pracovat s data v databázích bez znalosti programovacího jazyka
    • Jde o deklarativní jazyk
    • Umožňují efektivně implementovat:
      • Správu databáze - příkazy pro definici dat
      • Správu dat
        Dotazování
19
Q

PL/SQL

A
  • Procedurální rozšíření SQL
    - Obsahuje triggery, funkce, procedury a kurzory
    - Základní stavební jednotkou je PL/SQL blok
    - Základní struktura:
    - DECLARE - deklarace konstant a proměnných
    - BEGIN - výkonné příkazy bloku
    - EXCEPTION - výkonné příkazy obsluh přerušení
    - END
    Podporuje komentáře
20
Q

PL/SQL - Procedury PL/SQL

A
  • Program, jehož příkazy jsou uloženy přímo v databázi
21
Q

PL/SQL - Triggery

A
  • Dá se popsat jako procedura spojená přímo st abulkou.
    - Volá se ve chvíli kdy je nad tabulkou zavolán příkaz INSERT, UPDATE nebo DELETE
    - BEFORE/AFTER - upřesňující klauzule, jež definují zda trigger procedura má být spuštěna před či po provedení aktivačního příkazu (insert, delete..)
22
Q

PL/SQL - Funkce

A
  • Vrací nějakou hodnotu
    Používá se přímo v příkazu
23
Q

PL/SQL - Kurzor

A

Ukazatel víceřádkový výběr

24
Q

TRANSAKCE, TRANSAKČNÍ PŘÍSTUP KE ZPRACOVÁNÍ DAT

A
  • Databázová transakce je skupina příkazů, které převedou databázi z jednoho konzistentního stavu do druhého
25
TRANSAKCE, TRANSAKČNÍ PŘÍSTUP KE ZPRACOVÁNÍ DAT - Vlastnosti transakce
- Atomicita – transakce je jako operace dále nedělitelná; buď se provede jako celek nebo se neprovede vůbec. Při neprovedení transakce vyskakuje chybová hláška. - Konzistence – není porušeno žádné integritní omezení; databáze zůstává i po vykonání transakce v konzistentní stavu - Izolovanost – operace uvnitř transakce jsou skryty před ostatními operacemi; transakce o sobě navzájem neví. Vrácením transakce není zasažena jiná transakce, jinak i tato musí být vrácena. V důsledku tohoto chování může dojít k tzv. řetězovému vrácení. - Trvalost – po úspěšném vykonání transakce jsou změny skutečně uloženy v databázi a nemohou být ztraceny
26
TRANSAKCE, TRANSAKČNÍ PŘÍSTUP KE ZPRACOVÁNÍ DAT - Transakční operace:
- START – označuje začátek transakce - COMMIT – označuje normální ukončení transakce - uložení změn - ABORT – označuje nenormální ukončení transakce, transakci je potřeba anulovat ROLLBACK - situaci se vrací do okamžiku před zahájením transakce Aktivní – od počátku provádění transakce Částečně potvrzený – po provedení poslední operace transakce, před COMMIT Chybný – nelze pokračovat v normálním průběhu transakce - provede se ROLLBACK Zrušený – po skončení operace ROLLBACK Potvrzený – po úspěšném vykonání operace COMMIT
27
TRANSAKCE, TRANSAKČNÍ PŘÍSTUP KE ZPRACOVÁNÍ DAT - Žurnály
- Jde o záznamy provedených transakcí, jež slouží k navrácení databáze do původního stavu kvůli vzniklé chybě
28
VÝVOJ DATABÁZOVÝCH APLIKACÍ
1. Na začátku využítí pouze papírových kartoték, jež lidmi byly uspořádány dle kritérií 2. Zpracování dat převedeno na stroje - paměťové médium děrný štítek 3. 50. Léta 20. století - s rozmachem počítačů ývoj prvních databází 4. 1959 - COBOL pro hromadné zpracování dat 5. 1974 - první verze SQL 6. V dnešní době noSQL databáze jako např. MongoDB. Ta nevyžaduje jakékoliv schéma a ukládá jakýkoliv typ dat. Umožňoje to uživateli obrovskou flexibilitu.