380 likes | 659 Views
IT P odatkovn e baz e. 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
E N D
ITPodatkovne 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 bazeOsnove • 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 bazeOsnovne funkcije • Enemu ali več uporabnikom hkrati omogoča: • dodajanje novih podatkovnih struktur (opisovpodatkov) 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.
Database Management System (DBMS) Database (DB) Uporabniki Aplikacije Definicija podatkovne bazeShema DBS
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,…)
organizacija formalizacija Arhitektura DBSPredstavitvene ravni Zunanja shema (uporabniški pogledi) Konceptualna shema (logična raven):konceptualni in logični model Notranja shema (pomnilna raven):fizična predstavitev podatkov (sistem datotek, porazdeljen sistem podatkovne baze, …)
indeks indeks ime ime priimek priimek naslov naslov indeks email email EMŠO Arhitektura DBSPredstavitvene ravni Type Student indeks as Long char ime (20); char priimek (20); char naslov (50); char email (50); char EMSO (13); } Index indeks;
Arhitektura DBSKonceptualno 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 DBSKonceptualno 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 DBSKonceptualno modeliranje Dober konceptualni model lahko preprosto opišemo kot: Vse, kar je potrebno je tu – vse kar je tu, je potrebno.
Arhitektura DBSKonceptualno 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 DBSKonceptualno modeliranje Koraki pri oblikovanju konceptualnega modela: • podatkovna analiza in zbiranje zahtev • oblikovanje Entitetno – relacijskega (E-R) modela • normalizacija
Arhitektura DBS: Koncept. modeliranjePodatkovna 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
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
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), ...
Osnova relacijske algebre izhaja iz teorije množic. Operatorji: unija presek razlika projekcija selekcija produkt združitev delitev Relacijska algebra
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