Datové struktury a databáze

31
Datové struktury a Datové struktury a databáze databáze Ing. Jaroslav Buchta & Ing. Július Štuller, CSc., Ústav informatiky Akademie věd ČR

description

Datové struktury a databáze. Ing. Jaroslav Buchta & Ing. Július Štuller, CSc., Ústav informatiky Akademie věd ČR. Literatúra. Anglická : C. J. Date : An Introduction to Database Systems (8 th edition) D. Mayer, J. Ullman, …: (Relational) Database systems … - PowerPoint PPT Presentation

Transcript of Datové struktury a databáze

Page 1: Datové struktury a databáze

Datové struktury a databázeDatové struktury a databáze

Ing. Jaroslav Buchta

&

Ing. Július Štuller, CSc.,

Ústav informatiky Akademie věd ČR

Page 2: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 2

LiteratúraLiteratúra

Anglická:– C. J. Date: An Introduction to Database Systems

(8th edition)– D. Mayer, J. Ullman, …:

(Relational) Database systems … “textbook”, “reading”, …

Česká:– preklady … (Tsichritsis – Lochovsky)– Pokorný (Halaška): knihy, skriptá

(MFF UK, FEL ČVUT)

Page 3: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 3

TestTest (1 (100 minút) minút)1. Čo je to operačný systém?

– Ovládate nejaký? Ak áno, ktorý?

2. Čo je to multiprocessing (multitasking)?3. Čo je to paging?4. Čo je to timesharing?5. K čomu sa používa synchronizácia?6. Čo je to deadlock?

Page 4: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 4

TestTest

7. Aké typy pamätí (musí a) môže mať počítač?

8. Aké typy organizácie súborov poznáte?

9. Aké dátové štruktúry poznáte?

10. Čo je to cylinder (magnetického disku)?

11. Aký je rozdiel medzi vetou a blokom (súboru)?

Page 5: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 5

Osnova prednáškyOsnova prednášky

I. HistóriaII. Viacúrovňová architektúra DBS

– A. DBTG CODASYL– B. ANSI SPARC

Page 6: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 6

OsnovaOsnovaIII. Modely dát

– A. Hierarchický model– B. Sieťový model– C. Relačný model

1. Operácie s reláciami 2. Relačná algebra / Relačný kalkul 3. Normálne formy

Page 7: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 7

OsnovaOsnova

IV. Konceptuálne modelovanie– A. Dátová analýza / modelovanie dát

E-R model E-A-R model Zobecnenia

– B. Funkčná analýza / modelovanie– C. Objektovo orientovaný model dát /

objektové modelovanie

Page 8: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 8

OsnovaOsnovaV. Implementácia

– A. Logický návrh– B. Technické a programové vybavenie– C. Realizácia– D. Životný cyklus databázy

1. Databázový správca 2. Ochrana 3. Redundancia, kódovanie, kompresia, šifrovanie 4. Údržba, obsluha

Page 9: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 9

OsnovaOsnova

VI. Jazyk SQLVII. …

Page 10: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 10

I. HistóriaI. História

Prelom 50. a 60. rokov:– vyššie programovacie jazyky:

1962: COBOL 1965: PL/1

– bohatšie dátové štruktúry:

• umožňovali jednoduchšie a priamočiarejšie zachytenie najrozmanitejších informácií určených k počítačovému spracovaniu

Page 11: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 11

HistóriaHistória

Od polovice 60. rokov:– prvé systémy riadenia báz dát– skupina DBTG CODASYL:

1965: Conference on Data Systems Languages 1967: Data Base Task Group Reporty: 1969 a 1971 (1974, 1978, 1981)

– Schéma a subschéma

Page 12: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 12

Schéma a subschémaSchéma a subschéma

Databáza:

Súhrn dát uložených v pamäti počítača a týkajúcich sa určitého výseku skutočnosti.

(synonymum: báza dát)

DB

Page 13: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 13

Databázový administrátorDatabázový administrátor

Človek, prípadne skupina ľudí, ktorí majú na starosti (čo najoptimálnejší) chod danej

DB.

DBA

Page 14: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 14

SchémaSchéma

Predstavuje celkový pohľad (prípadne pohľad DBA) na danú DB

1 pre danú DB

Úplne popisuje všetky logické jednotky (vety), ich jednotlivé časti (položky) a prípadne i príslušné vazby (tzv. Codasyl sety, C-sety, sety) medzi jednotlivými vetami, ktoré sa vyskytujú v celej DB.

Page 15: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 15

SubschémaSubschéma

Predstavuje uživateľský pohľad (t.j. pohľad jednotlivého uživateľa) na danú DB.

V rámci 1 DB je počet SS neobmedzený. Subschéma popisuje tie vety, tie ich položky a tie

sety, ktoré potrebuje uživateľ k svojej práci. Každá subschéma musí byť časťou (presnejšie

povedané logicky konzistentnou podmnožinou) príslušnej schémy, v rámci ktorej sa definuje.

Page 16: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 16

VýhodyVýhody

Ochrana a utajenie (informácií)+ …

Page 17: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 17

DBTG presadzovalDBTG presadzoval

1. Jazykovú nezávislosť (COBOL, PL/I, Fortran)

2. Strojovú nezávislosť (IBM, ICL, EC)

Page 18: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 18

DBTG presadzovalDBTG presadzoval

3. Nezávislosť dát a programov

(oddelené jazyky pre – popis schémy a

– popis subschém)

4. Oddelenie defínicie dát (schéma a subs …

Data Definition Language - DDL)

od manipulácie s dátmi

(Data Manipulation Language - DML)

Page 19: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 19

HistóriaHistória

dátové štruktúry cobolovského typu– dostatočne bohaté pre (vtedy) bežné aplikácie– prebrané a zahrnuté ako základný (stavebný)

(modelovací) prvok (veta – záznam – record) schémy (a subschémy)

databázová štruktúra „set“ (modelovaná pomocou smerníkov): – k zachyteniu vzťahov medzi objektmi reality

Page 20: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 20

HistóriaHistória

špeciálny jazyk na popis schémy– popis schémy sa vytvára, a existuje,

mimo vlastných dát a programov, ktoré s týmito dátami budú pracovať

– toto (spolu s aparátom subschém) vediek zvýšeniu nezávislosti dát (najmä

logickej)

Snaha po ešte väčšej nezávislosti dát, logickej, ale i fyzickej, viedla ...

Page 21: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 21

HistóriaHistória

Začiatok 70. rokov:– priekopnícke práce– E. F. Codd– Relačný model dát

Page 22: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 22

HistóriaHistória

1975– ANSI SPARC – Návrh 3-úrovňovej architektúry databázových

systémov Konceptuálna schéma

– Konceptuálne modelovanie

Page 23: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 23

HistóriaHistória

80. roky– Konsolidácia postavenia RMD

Prvé komerčné SRRBD Postupný nástup PC

– SRRBD pre PC (Oracle)

– Sémantické modely– Deduktívne databázové systémy

Page 24: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 24

HistóriaHistória

90. roky:– Objektovo orientované databázové systémy

post-relačné databázové systémy

– multimediálne databázy GIS

– databázy na webu …– …

Page 25: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 25

HistóriaHistória

Koniec 90. rokov – dodnes:– semi-štrukturované dáta

XML dokumenty XML databázy

Sémantický web a DB…

Page 26: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 26

II.II. Náväznosť´ na Náväznosť´ na HW/SWHW/SW

A. Viacúrovňové pamäti– 1. Sekundárne pamäti

Magnetické pásky Magnetické disky

Page 27: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 27

III. Náväznosť na softwareIII. Náväznosť na softwareA. Operačné systémy

– 1. Process management a. multiprocessing / multitasking / multiprogramming b. deadlock c. synchronizácia

– 2. File Management Súbor

– sekvenčný– index-sekvenčný (invertovaný)– s priamym prístupom

– 3. Dátové štruktúry (stromy, siete, viacúrovňové indexovanie)

Page 28: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 28

SúborySúbory

Def. 1 Atóm je najmenšia jednotka spracovania (v programe).

Môže byť následujúceho typu:– numerická (celé číslo, desatinné číslo, exponent)

[binárna, dekadická, okta / hexadecimálna …]

– logická (T, F)– znaková – smerník (ukazateľ)

Page 29: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 29

SúborySúbory

Def. 2 Premenná môže byť:

atóm (skalárna) [jednoduchá] zložená

– homogénna: vektor (numerická) matica (numerická) reťazec (znakový „vektor“ )

heterogénna: zložená z rôznych atómov homogénnych a iných heterogénnych premenných

Page 30: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 30

SúborySúbory

Def. 3 Položka je jednoduchá alebo zložená premenná.

Def. 4 Veta sa skladá z jednej alebo viacerých položiek. (Záznam)

Def. 5 Súbor je kolekcia viet.

Pozn. Kolekcia pripúšťa, na rozdiel od množiny, i opakovanie prvkov:

{A, A, B, C, C, C}

Page 31: Datové struktury a databáze

22. februára 2007 Datové struktury a databáze 31

SúborySúbory

Def. 6 Nad súborom je možné prevádzať nasledujúce základné operácie:

- definovanie (vytvorenie) logickej štruktúry súboru [Build]

+ uloženie vety do súboru [Ins]

+ načítanie vety zo súboru [Fetch]

+ odstránenie vety zo súboru [Delete]

+ zmena obsahu vety [Update]

- prečítanie všetkých viet súboru [Exhaustive Read]

- reorganizácia súboru [Y]

- načítanie následnej vety [Get Next]