Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
info na zk ikt VŠE.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.43 Mб
Скачать
  1. Databázové systémy

Data

  • Data jsou hlavním předmětem operací v informatice

  • Mohou být různě strukturovaná I různě organizovaná

  • Formáty dat v podnikové informatice

  • Tabulky, text, případně grafika, grafy atd.

  • z pohledu uložení dat

  • Volná struktura (text), pevná struktura

Pevná struktura dat

  • Jednotlivé znaky (numerické, alfanumerické atd.)

  • Položky – reprezentují určitou vlastnost sledované reality, např. 101 reprezentuje identifikátor zákazníka

  • Záznamy (record) – kolekce vzájemně souvisejících položek, např. záznam o objednávce

  • Soubory dat - kolekce vzájemně souvisejících záznamů, např. soubor dat objednávek

  • Báze dat (database) – je na nejvyšší úrovni hierarchie dat, kolekce integrovaných a vzájemně souvisejících duborů dat. Např. soubor dat objednávek spolu se souborem dat zboží a souborem zákazníků (objednatelů)

Databáze

  • v intuitivním pojetí: ,,místo” kam ukládáme v tištěné nebo elektronické podobě naše data

  • Databáze – soubor ouvisejících dat postačujících pro daný účel nebo pro daný systém zpracování dat

  • Databáze =/ databázový systém

Systém řízení báze dat

  • Systém řízení báze dat (SŘBD) – skupina programů fungující jako rozhraní mezi daty v databázi a uživatelem, případně aplikačním programem

  • Účel SŘBD – definice a konstrukce databáze a manipulace s ní

  • Základní složky

  • Program pro definování dat, umožňující vytváření a změny datových struktur

  • Program pro manipulaci s daty, umožňující vkládání a aktualizaci dat, vyhledávání, výběr a prezantaci dat a tvorbu fomulářů a sestav

  • Program pro řízení přístupu uživatelů k datům

Databázový systém

  • Princip databázového systému lze charakterizovat rovnici: DBS = DB + SŘBD

  • Data jsou organizována v databázi (DB) a jsou řízena systémem řízení báze dat (SŘBD)

  • Výhody:

  • Koordinuje jak fyzický, tak logický přístup k datům

  • Snižuje duplicitu dat

  • Umožňuje flexibilní přístup k datům (tj. Tvorbu dotazů)

  • Umožňuje více uživatelům přístup ke stejným datům ve stejnou dobu

  • Agendové zpracování:

  • Aplikace 1 => Data 1

  • Aplikace 2 => Data 2

  • Aplikace 3 => Data 3

  • Databázové zpracování

  • A plikace 1

  • Aplikace Databázový systém

  • Aplikace 3

Model dat

  • Model je zjednodušení reality sloužící pro pochopení komplexních systémů jako celku

  • Vytváření abstraktních objektů

  • Model dat je abstraktní model, který dokumentuje a organizuje podniková data pro komunikaci mezi členy týmu, slouží jako plán pro vývoj aplikací, specifikuje jak data ukládat a přistupovat k nim

Představitelé modelů dat

  • Děrné štítky a papírové pásky

  • Byly historicky prvním způsobem počítačového ukládání dat

  • Hierarchický model dat

  • Data jsou organizována do stromové struktury

  • Každý záznam představuje uzel ve stromové struktuře

  • Vzájemný vztah mezi záznamy je typu rodič/potomek

  • Síťový model

  • Odstraňuje omezení ve vztazích, které nemohou být zastoupeny v hierarchickém modelu

  • V síťovém modelu může uzel souviset s více než jedním dalším uzlem

  • Relační model dat

  • Codd (1970) – model založený na n-árních relacích

  • Matematický aparát relačních množin a predikátové logiky

  • Data sdružena do tzv. Relací (tabulek), které obsahují n-tice (řádky

  • Tabulka je struktura záznamů s pevně stanovenými položkami (sloupci – atributy)

  • Každý sloupec má definován jednoznačný název, typ a rozsah, neboli doménu

  • Záznam se stává n-ticí (řádkem tabulky

  • Důvod vzniku

  • Zvýšení nezávislosti dat v systémech pro správu datbází

  • Matematický přístup k ukládání a načítání dat

  • Podpora ad hoc zpracování dotazu

  • Sémantický model dat

  • Reprezentuje data v pojmenovaných množinách objektů, hodnot, vztahů a omezeními mezi těmito množinami objektů, hodnot a vztahů

  • Entity Relationship (ER) model

  • Sémantický databázový model

  • Entity Relationship (ER) model

  • Používá se jako základ pro sjednocení odlišných pohledů na data: síťový model, relační model a model množin entit

  • Technika tvorby ER diagramů představuje grafický způsob zobrazování typů entit, vztahů a tributů

  • Tvůrce Dr. Peter Chen

  • Entita – objekt reálného světa

  • Množina entit – skupina entit

  • Vztah – zachycjící souvislosti mezi entitami

  • Vztah 1:1 nastává mezi typy entit ČTENÁŘ-EXEMPLÁŘ, protože jeden konkrétní exemplář může být zapůjčen pouze jedním čtenářem

  • Vztah 1:N existuje např. mezi typy entit KNIHA-EXEMPLÁŘ – v knihovně mají několik exemplářů téže knihy

  • Vztah M:N nastává mezi typy entit ČTENÁŘ-REZERVACE, kdy rezervace na jednu knihu může být provedena více čtenáři a také jeden čtenář může rezervovat více knih

  • Metody tvorby modelu dat:

  1. Specifikace množin entit modelované reality

  2. Identifikace vztahů mezi entitami

  3. Přiřazení primárních klíčů

  4. Transformace modelu do logické struktury

  5. Doplnění ubývajících atributů do předběžných relací

  6. Prověření struktury modelu pomocí normalizačních procedur

  7. Přiřazení domén jednotlivým atributům

  8. Stanovení pravidel pro vkládání, rušení a změny dat v databázi

  9. Prognóza budoucího vývoje modelu

  • Objektový model dat

  • Poskytuje podporu objektům modelovaných v databázových aplikacích

  • Dědičnost je jedním z klíčových pojmů objektového paradigma

  • Další pojmy: objekty, vlastnosti, metody, události

  • Rozdíl mezi klasickým a objektovým přístupem:

  • ,,Při tvorbě datového modelu klasickým způsobem se snažíme prvky reálného světa zobrazit do předem připravených struktur pevně daného druhu. U objektů je tomu obráceně; pro prvky reálného světa si vytváříme nové objekty, které se jim podbají.”

  • Objektově-relační model dat

  • Podpora pro

  • Rozšíření základních datových typů v rámci SQL;

  • ORMD umožňují návrháři datbáze definovat nové datové typy

  • Složité objekty v kontextu SQL;

  • V relačním modelu jsou atributy tradičně atomové. ORMD podporují komplexní objekty, které tvoří shluky hodnot jiných datových typů

  • Dědění v kontextu SQL;

  • Možnost opětovného použití definovaných komplexních objektů a uživatelem definovaných funkcí

  • Tvorbu systémových pravidel

  • Pravidla jsou spojena s událostí

  • Když dojde k události, operace spojené s pravidlem se provedou

  • Zajištění konzistentního stavu datbáze

  • Deduktivní databáze

  • Poskytují mechanismy, kterými lze pomocí pravidel odvodit z dat uložených v databázi nové skutečnosti

  • Jazyk Datalog

  • Aktivní databáze

  • Podporuje reaktivní chování na základě pravidel ECA (Eva Condition Action)

  • Může automaticky reagovat včas a efektivně na události, jako jsou databázové přechody, čas události a externí signály

  • Temporální databáze

  • Zabývá se situacemi, kde fakta jsou spojeny s časem

  • Rozlišuje se složka vyjadřující období, ve kterém byl fakt (v modelovaném světě) pravdivý (tzv. Valid time) a složka vyjadřující období, po kterém je fakt uložen v databázi (tzv Transaction time)

  • Distribuované databáze

  • Mají SŘBD rozděleny na několik uzlů (počítačů) v počítačové síti.

  • V centrálním SŘBD jsou data řízena v jednom uzlu, zatímco v distribuovaném SŘBD jsou data řízena několika uzly

  • Globální data zaznamenávána v mnoha zeměpisně oddělených lokalitách

  • Multimediální databáze

  • Obsahují a umožňují klíčové operace s multimediálními daty

  • Založen na relačním modelu dat

  • Datový typ BLOB

  • Prostorové databáze

  • Založena na doatovém modelu definující vlastnosti a operace statistických objektů v prostoru

  • Multidimenzionální databáze

  • Vychází z vícerozměrné maticové algebry, která byla použita pro (ruční) analýzy dat od konce devatenáctého století

Normalizace dat

  • Úprava logického modelu databáze s cílem omezit redundanci a dekomponovat složité relace na dvojrozměrné tabulky s atomickými hdnotami polí

  • Technika datové normalizace patří mei základní techniky návrhu relačního databázového schématu a přináší následující výhody:

  • Zabránění vzniku duplicitních dat

  • Úspora kapacity paměťového média

  • Usnadnění aktualizace a výběru potřebných dat

Proces normalizace dat

  • 1NF – jedna relace nesmí obsahovat násobná data (data ve vztahu 1:N)

  • 2NF – Všechna neklíčová data v jedné relaci musejí záviset na celém primárním klíči relace

  • 3NF – všechna neklíčová data v jedné reaci musejí být závislá jen na primárním klíči a ne mezi sebou

  • B-CNF – Všechna data v jedné relaci musejí záviiset na celém primárním klíči relace

  • 4NF – Složený primární kíčnesmí být tvořen z nezávislých dat

  • 5NF – Složený (3 a více) primární klíč nesmí obsahovat párově cyklické závislosti

Dotazovací jazyk SQL

  • Strukturovaný dotazovací jazyk (neprocedurální)

  • Je světově nejpoužívanější databázový dotazovací jazyk

  • Podporuje vyhledávání, zpracování a správu dat uloených ve formě tabulek

  • Je přístupný uživatelům bez formálního vzdělání v matematice a programování

  • Podporuje rozhodování a on-line zpracování transakcí

  • Pokouší se o sjednocení dtových dotazů a úkolů pro správu dazabází, jako je vytváření a úpravy tabulek a pohledů, řízení přístupu k datům a definování omezení k ochraně integrity databáze

  • Základní příkazy SQL

  • DDL

  • CREATE TABLE, ALTER TABLE, DROP TABLE

  • CREATE INDEX, DROP INDEX

  • SET TRANSACTION

  • GRANT, REVOKE

  • DML

  • SELECT

  • INSERT

  • UPDATE

  • DELETE

  • Příkaz select

  • SELECT [DISTINCT | ALL] { * | sloupcový_výraz [AS nový_název] ] [, …] }

  • FROM název_tabulky [alias] [ , …]

  • [WHERE podmínka]

  • [GROUP BY seznam_sloupců] [HAVING podmínka]

  • [ORDER BY seznam_sloupců ]

  • Příklad

  • SELECT Jméno, Příjmení FROM Čtenář Where Město = “Praha”;

  • SELECT * FROM Kniha;

  • Procesor dotazů přijímá dotaz, ověřuje jej, optimalizuje procedurální datový tok prostřednictvím exekučního plánu a realizuje jej pro získání výsledků dotazu

Příklad dotazu v relační algebře a SQL

  • Je stanoveno následující normalizované relační schéma (tabuky):

  • STUDENT (Jméno, Příjmení, RC, Datum narození, Předmět);

  • ZNAMKY(Hodnocení, Předmět);

  • Chceme vyhledat všechny studenty, kteří mají známku z přemětu informatika a zobrazit jejich jména a příjmení

  • Zápis v relační algebře

  • N(Jméno, Příjemní)(STUDENTI (Predmet=’Informatika’)(ZNAMKY)

  • Zápis v SQL

  • SELECT jmeno,Prijmeni FROM STUDENTI NATURAL JOIN (SELECT * FROM ZNAMKY WHERE Predmet = ‘Informatika’

Příklady databázových systémů

  • FoxPro, visual FoxPro, Clipper, Paradox, MS Access, PC FAND, 602SQL (WinBase 602)

  • Oracle, MS SQL Server, Informix, interbase/FireBird, Progress, MySQL, PostgreSQL

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]