Databázové a informační systémy doc. Ing. Miroslav Beneš, Ph.D. katedra informatiky FEI VŠB-TUO A-1007 / 597 324 213 http://www.cs.vsb.cz/benes
[email protected]
Obsah z
z
z z
z
Jak ukládat a efektivně zpracovávat rozsáhlé soubory dat? Typy databázových systémů, dotazovací jazyky, hlavní představitelé na trhu. Struktura a návrh relační databáze. Informační systémy v prostředí Internetu, architektura, klientské aplikace. Podnikové informační systémy. ZPP - Databázové a informační systémy
2
1
Co je to databáze? z
z
Soubor informací existujících po dlouhou dobu, často mnoho let. Správu databáze zajišťuje SŘBD (systém řízení báze dat, databázový systém). z
z z
Perzistence - dlouhodobé bezpečné uložení velkého objemu informací. Programátorské rozhraní – dotazovací jazyky. Správa transakcí – současný přístup mnoha procesů k datům. ZPP - Databázové a informační systémy
3
Motivace z
Agendové zpracování z z z z
z
Samostatné programy pro každou agendu Vlastní formáty dat Načtení dat – zpracování – uložení dat Obtížná spolupráce aplikací Nutnost vyčlenit správu perzistentních dat => systémy pro řízení báze dat (SŘBD)
ZPP - Databázové a informační systémy
4
2
První databázové systémy z
Konec 60. let 20. století – první komerční systémy z z z
z
Rezervační systémy aerolinií Bankovní systémy Firemní systémy
Různé datové modely z z z
Hierarchický model Síťový model Relační model ZPP - Databázové a informační systémy
5
Relační datový model z
Data jsou organizována jako tabulky reprezentující relace z
Def.: relace = podmnožina kartézského součinu Osoba: login, jméno, příjmení, datum narození String × String × String × Date
login jméno wal001 Johnny dan001 Jack
příjmení Walker Daniels
datum_narození 10. 8. 1979 23. 1. 1957
ZPP - Databázové a informační systémy
6
3
Organizace dat z
Sekvenční přístup z z
z
Přímý přístup z
z
z
Postupný průchod všemi záznamy v tabulce Pevná / proměnná délka záznamu Přístup podle „klíče“ – např. login, příjmení z Primární klíč - jednoznačná identifikace záznamu Urychluje se vytvořením pomocné datové struktury pro vyhledávání – indexu
Indexsekvenční přístup z
Kombinace obou metod ZPP - Databázové a informační systémy
7
Dotazovací jazyky z
Definice struktury databáze z
z
Manipulace s databází z z z
z
Vytvoření databáze, tabulky, indexu Vkládání nových záznamů Aktualizace existujících záznamů Rušení záznamů
Výběr dat z databáze z
Výběr řádků a sloupců tabulky podle zadaných podmínek, výběr z více tabulek – spojení tabulek ZPP - Databázové a informační systémy
8
4
Dotazovací jazyky z
Structured Query Language (SQL) z z z
Standardizovaný dotazovací a manipulační jazyk pro relační databáze (ANSI SQL-92) Rozšíření SQL-99 s objektově-relačními prvky Využívá se i pro programovou komunikaci s databázovými servery z z
z
Rozhraní ODBC - Windows Rozhraní JDBC – Java
Query by Example (QBE) z
Dotaz příkladem – pro usnadnění tvorby dotazů ZPP - Databázové a informační systémy
9
Jazyk SQL z
SELECT FROM WHERE ORDER BY
<podmínka> <podle čeho seřadit>
z
SELECT login,jmeno,prijmeni FROM osoba WHERE prijmeni LIKE „Novák%” ORDER BY prijmeni,jmeno ZPP - Databázové a informační systémy
10
5
Jazyk SQL z
INSERT INTO osoba VALUES (‘bec022’, ‘Jan’, ‘Becher’, ’1980-01-20’)
z
UPDATE osoba SET jmeno=‘Jeník’ WHERE login=‘wal001’
z
DELETE FROM osoba WHERE login=‘dan001’ ZPP - Databázové a informační systémy
11
Příklady databázových systémů z
Volně dostupné z z
z
MySQL, PostgreSQL MSDE
Komerční z z z
MS DBase, Access, FoxPro Oracle, IBM DB2, MS SQL Server, Sybase … ZPP - Databázové a informační systémy
12
6
Informační systém z
Automatizovaný systém zahrnující osoby, stroje a metody organizované tak, aby umožnily uchovávat, pracovávat, přenášet a šířit data reprezentující informace.
z
Příklady z z z
Fakultní IS „KatIS“ IDOS – IS spravující informace o dopravě Podnikové informační systémy ZPP - Databázové a informační systémy
13
Informační systémy v prostředí Internetu WWW prohlížeč
PHP
HTTP CGI
WWW server
Aplikace HTML
Prezentace
XML SQL MySQL
Apache
DB Server ZPP - Databázové a informační systémy
14
7
Architektura webového informačního systému UI Framework
UI Application
Domain Framework
Domain Model
Database Framework
Data Model
Prezentační vrstva
Doménová (byznys) vrstva
Datová vrstva Database ZPP - Databázové a informační systémy
15
Technologie pro datovou vrstvu z
Přístup k datům nezávislý na konkrétním databázovém systému z
z
Rozhraní ODBC, JDBC + jazyk SQL
Využití objektově orientovaných metod objektově-relační mapování z z
Hibernate JDO – Java Data Objects ZPP - Databázové a informační systémy
16
8
Technologie pro byznys vrstvu z
Oddělení doménově závislých algoritmů od přístupu k datům a uživatelského rozhraní z
z z
Př.: přihlašování na zkoušky, převod peněz mezi účty, vystavení faktury
Spring Framework (Java) Enterprise Java Beans (EJB)
ZPP - Databázové a informační systémy
17
Technologie pro prezentační vrstvu z
Podpora různých formátů výstupu téhož dokumentu z
z
Snaha o jazykově nezávislý návrh uživatelského rozhraní z z
z
Např. zobrazení pro tisk, export do Excelu, …
JSP (Java Server Pages), ASP.NET (MS Web Forms)
Využití návrhového vzoru Model-View-Controller (MVC) z
Jakarta Struts Framework
ZPP - Databázové a informační systémy
18
9
Klientské aplikace z
Aplikace s tenkým klientem z z z
z
Využití webového prohlížeče Omezené uživatelské rozhraní Jednoduchá aktualizace
Aplikace s tlustým klientem z z z
Specializovaná klientská aplikace Vyžaduje instalaci u klienta (lze řešit přes web) Maximální možnosti komunikace s uživatelem ZPP - Databázové a informační systémy
19
Podnikové informační systémy z
Management Information Systems (MIS)
z
Podpora plánování a organizace podnikových procesů z z
z
Podpora rozhodování z
z
Enterprise Resource Planning (ERP) Workflow systémy Co se stane, když … ?
Podpora vztahů se zákazníky z
Customer Relationship Management (CRM) ZPP - Databázové a informační systémy
20
10
Datové sklady z
Kopie velkých objemů dat z
z
Vyhledávání vzorů nebo trendů důležitých pro organizaci (data mining) z
z
Př.: údaje o prodeji výrobků v hypermarketu, záznamy o platební historii klienta v bance
Př.: závislosti mezi nákupy různých typů výrobků
OLAP (On-line Analytic Processing) z
„datové krychle“ – speciální datové struktury ZPP - Databázové a informační systémy
21
Dokumentografické informační systémy z
Zaměřeny na zpracování rozsáhlých kolekcí dokumentů z
z
Př.: Záznamy z jednání Parlamentu, sbírka zákonů, informace na Internetu (Google, …)
Základní problémy: z
Efektivní ukládání dokumentů z
z
Komprese dat
Efektivní vyhledávání z z
Podle klíčových slov Podle podobnosti dokumentů ZPP - Databázové a informační systémy
22
11
Geografické informační systémy z
Zaměřeny na zpracování z
z
z
prostorových informací (např. parcely na katastrální mapě), popisných informací (např. majitel parcely, typ pozemku, cena, …)
Základní problémy: z z
Ukládání dat – datové modely (vektory, rastr) Vyhledávání – speciální operátory, SpatialSQL ZPP - Databázové a informační systémy
23
Studijní program „Informační technologie“ z z z
z z z
Teorie zpracování dat – 2. r. LS Databázové a informační systémy – 3. r. ZS Tvorba informačních systémů – 3. r. LS Dokumentografické informační systémy Metody analýzy dat Geografické informační systémy ZPP - Databázové a informační systémy
24
12