3.1 DBS osnove
Download
Report
Transcript 3.1 DBS osnove
IT
Podatkovne baze
Sistemi podatkovnih baz in njihova
uporaba pri modeliranju gradbenih
in prometnih objektov
D. Rebolj, FG 2007/2008
Literatura
Tomaž Mohorič: Uvod v podatkovne baze.
BI-TIM. Ljubljana, 1995
Shaku Atre: Database. John Willey, 1988
L. Peters: Advanced Structured Analysis and
Design, Prentice Hall, 1987
C.J.Date: An Introduction to Database
Systems. Addison-Wesley Publishing
Company, Inc. Reading, Mass., etc. 1990
Podatki in informacije
Podatek je predstavitev dejstva,
koncepta ali navodila na formalni način
(ANSI, ISO)
Informacija je pomen, ki ga ima
podatek ob upoštevanju dogovorov
glede njegove predstavitve (ANSI, ISO)
I = i(D, S, t) I – vsebina informacije, D – podatek,
S – struktura sprejemnika, t - čas
Organizacija podatkov
Hierarhija podatkov:
bit beseda (binarno število ali znak) polje
stavek (zapis) blok datoteka (organiziran vir
podatkov).
Operacije z datotekami:
vnos, iskanje, spreminjanje, izpis, sortiranje,…
Vrste datotek glede na metodo pristopa:
zaporedne, indeksne, direktne, kombinirane
(odvisno od fizične organizacije pomnilnika).
Pomanjkljivosti
pri uporabi datotek
vsaka aplikacija uporablja svoje datoteke - ni
centralnega nadzora nad podatki,
popolna odvisnost programov od podatkov,
datoteke fizično ločujejo podatke - logično jih
povezujejo uporabniki z ustreznimi programi
za vsak problem posebej,
visoka redundanca podatkov,
nizka produktivnost pri implementaciji
kompleksnih informacijskih sistemov.
Definicija podatkovne baze
Osnove
Podatkovna baza (DB) oz. sistem (DBS) je
računalniško vodena generalizirana zbirka
podatkov in njihovih opisov.
Za razliko od neposrednega shranjevanja
podatkov v datotekah se uporabnik sistema
podatkovne baze ne ukvarja s fizično
predstavitvijo podatkov na pomnilnem mediju
temveč le z njihovo logično predstavitvijo.
DBS predstavlja podatke na višji abstraktni
ravni.
Definicija podatkovne baze
Osnovne funkcije
Enemu ali več uporabnikom hkrati omogoča:
dodajanje novih podatkovnih struktur (opisov
podatkov) in njihovih povezav v podatkovno bazo,
vstavljanje, spreminjanje in brisanje podatkov,
odstranjevanje opisov podatkov in povezav iz
podatkovne baze.
Z integracijo omogoča DBS povezave različnih
podatkovnih struktur v unificirane logične
celote, kar zmanjšuje redundanco podatkov.
Definicija podatkovne baze
Shema DBS
Database Management System (DBMS)
Database (DB)
Uporabniki
Aplikacije
Cilji uporabe DBS
Nadzor nad redundanco podatkov
Zagotavljanje konsistentnosti podatkov
Ista količina podatkov – več informacij
Ločitev opisa podatkov od podatkov samih
Kontrola integritete podatkov
Standardni dostop do podatkov
Večja kompaktnost podatkov in hitrejši dostop
do njih
Sočasna uporaba podatkov
Nadzor nad zaščito podatkov
Podporne funkcije DBMS
Konkurentna uporaba DB:
posebni mehanizmi za obnavljanje,
sinhronizacijo, “rollback” ,
zaščita podatkov (fizična, operacijska,
autorizacijska),
modifikacija in optimizacija,
Data Dictionary (DD),
jeziki in usluge (DML, SQL, sistemski jeziki),
DB Control System,
Recovery (log file, Do/Undo/Redo,…)
Arhitektura DBS
Predstavitvene ravni
Zunanja shema (uporabniški pogledi)
organizacija
Konceptualna shema (logična raven):
konceptualni in logični model
formalizacija
Notranja shema (pomnilna raven):
fizična predstavitev podatkov (sistem datotek,
porazdeljen sistem podatkovne baze, …)
Arhitektura DBS
Predstavitvene ravni
indeks ime priimek naslov
indeks email
indeks ime priimek naslov email EMŠO
Type Student
indeks as Long
char ime (20);
char priimek (20);
char naslov (50);
char email (50);
char EMSO (13);
}
Index indeks;
Arhitektura DBS
Konceptualno modeliranje
Abstrakten in splošen opis realnosti
Uporaba:
povezuje interese in vidike uporabnikov
uporaben opis za komunikacijo
omogoča osnovo za izgradnjo DBS
omogoča učinkovito predstavitev DB
predstavlja model opazovanega okolja
Arhitektura DBS
Konceptualno modeliranje
Lastnosti konceptualnega modela
izraznost (izberemo najustreznejši koncept)
preprostost (v nasprotju z izraznostjo!)
minimalnost (vse ima svoj pomen)
formalnost (enoumna, natančna interpr.)
grafična polnost (vse je grafično predst.)
berljivost (dosledni in jasni simboli)
Arhitektura DBS
Konceptualno modeliranje
Dober konceptualni model lahko
preprosto opišemo kot:
Vse, kar je potrebno je tu –
vse kar je tu, je potrebno.
Arhitektura DBS
Konceptualno modeliranje
Modeliranje podatkov v fazi
konceptualnega oblikovanja DB omogoča
oblikovanje abstraktne strukture
podatkovne baze za predstavitev realnega
sveta na kar se da realen način.
Rezultirajoči konceptualni model
zagotavlja neodvisen razvoj DB glede na
strojno in programsko opremo.
Arhitektura DBS
Konceptualno modeliranje
Koraki pri oblikovanju konceptualnega
modela:
podatkovna analiza in zbiranje zahtev
oblikovanje Entitetno – relacijskega
(E-R) modela
normalizacija
Arhitektura DBS: Koncept. modeliranje
Podatkovna analiza
Opredelitev skupin uporabnikov in
področij uporabe
Analiza operativnega okolja in zahtev
procesiranja
Proučitev izvorov informacij in podatkov
Arhitektura DBS: Koncept. modeliranje
E-R model
zagotavlja sistematično predstavitev
entitet in relacij s ciljem zajeti vse
neločljive pomene posamezne aplikacije
najpomembnejši prispevek predstavlja
diagramska tehnika, ki na jedrnat in
opisen način predstavlja aplikacijo
E-R diagram predstavlja komunikacijsko
orodje za oblikovanje podatkovne baze
Arhitektura DBS: Koncept. modeliranje
E-R model: osnovni gradniki
Entiteta: neodvisni podatkovni objekt, ki
je po definiciji nosilec podatkov (npr.
študent, knjiga, cestni odsek)
Atribut: zagotavlja informacije o entiteti
ali relaciji z opisom lastnosti (npr. ime
študenta, naslov knjige, dolžina odseka)
Domena atributa: množica dovoljenih
vrednosti atributa
Arhitektura DBS: Koncept. modeliranje
E-R model: osnovni gradniki
Ključ (identifikator): vodilni atribut, ki
omogoča identifikacijo entitete
(kandidacijski, primarni, sekundarni,
sestavljeni, zunanji)
Entitetni tip: množica entitet s skupnimi
atributi (npr. prometne poti)
Šibka entiteta: entiteta brez lastnega
ključnega atributa (npr. izposoja knjige)
Arhitektura DBS: Koncept. modeliranje
E-R model: osnovni gradniki
Relacija: povezava med entitetami
Relacijski tip: je povezava med
entitetnimi tipi
Kardinalnost: je udeleženost entitete v
relaciji
stopnje kardinalnosti: 1:1, 1:n ali n:m (npr.
med študenti in učitelji)
Arhitektura DBS: Koncept. modeliranje
E-R model: osnovni gradniki
pretvorba kardinalnosti stopnje n:m: ker ni
zaželjena, jo pretvorimo v dve relaciji 1:n
in šibko entiteto
Arhitektura DBS: Koncept. modeliranje
E-R model: Notacije
Primer nepraktične
notacije
Arhitektura DBS: Koncept. modeliranje
E-R model: Notacije
Chenova notacija
Sračja (James
Martinova) notacija
Arhitektura DBS: Koncept. modeliranje
E-R model: Notacije
Primeri uporabe
Chenove notacije
Arhitektura DBS: Koncept. modeliranje
E-R model: Notacije
E-R diagram E-R
modela
Arhitektura DBS: Koncept. modeliranje
E-R model: orodja
Komercialna orodja za modeliranje
podatkovne baze (ER-Designer, Erwin,
MastER Plus, Etity-RElationship MOdel)
Orodja CASE- Computer-Aided Software
Engineering (Excelerator, ADW, POSE,...)
Sistemi za upravljanje s podatkovno bazo
(ORACLE)
prototipi in raziskovalni projekti (DDEW,
Gembit, SIT, VCS)
Arhitektura DBS: Koncept. modeliranje
E-R model: oblikovanje modela
Odkrivanje entitet; entitete so lahko:
ljudje (kot nosilci različnih funkcij)
objekti in predmeti (gradbeni objekti)
elementi prostora (kraji, ceste, reke)
organizacije (skupine, podjetja, oddelki)
koncepti (npr. projekti, aktivnosti)
dogodki
Arhitektura DBS: Koncept. modeliranje
E-R model: oblikovanje modela
Poimenovanje entitet
v obliki množinskega samostalnika, lahko
tudi s pridevnikom (npr. cestni_odseki)
imen ne kodiramo
Odkrivanje relacij
običajno relacijo zapišemo kot preprost
stavek z osebkom (E1), povedkom (G) in
predmetom (E2); npr. študent obiskuje
predavanja
Arhitektura DBS: Koncept. modeliranje
E-R model: oblikovanje modela
Poimenovanje relacij
v obliki glagola (npr. “obiskuje”, “ima”,...)
Odkrivanje kardinalnosti
odvisna je od pravil, ki vladajo v sistemu
izberemo izhodiščno entiteto (npr. E1) in se
vprašamo, kolikokrat se v relaciji pojavi
povezana entiteta (E2)
Arhitektura DBS: Koncept. modeliranje
Normalizacija
Relacijski model podatkovne baze
zahteva normalizacijo entitete vsaj v
1NF preden jo predstavimo kot tabelo.
Posamezne normalne forme (NF)
pomenijo:
1NF: atributi se ne ponavljajo (ni
agregatov),
2NF: ni delnih odvisnosti,
3NF: ni posrednih odvisnosti.
Modeli DBS
Predrelacijski modeli:
invertirane liste,
hierarhični modeli (drevesne strukture),
mrežni modeli,
...
Modeli DBS
Relacijski model - podatki so
strukturirani kot tabele, operatorji
temeljijo na relacijski algebri
Postrelacijski modeli:
predmetno usmerjeni, XML db
deduktivni in semantični modeli,
ekspertni (baze znanja), ...
Relacijska algebra
Osnova relacijske algebre izhaja iz
teorije množic.
Operatorji:
unija
presek
razlika
projekcija
selekcija
produkt
združitev
delitev
Značilnosti sodobnih RDBMS
Enostavna definicija tabel (deklarativno ali
prototipno), asociacij in poizvedb (query),
Generiranje vnosnih obrazcev in poročil
Hitra izdelava aplikacij (RAD + “čarovniki”)
Podpora distribuiranemu delovanju (SQL
odjemalec / strežnik)
Generiranje spletnih strani
“Posojanje” komponent drugim programom