ORGANIZACIJA PODATAKA - Pomorski fakultet, Sveučilište u

Download Report

Transcript ORGANIZACIJA PODATAKA - Pomorski fakultet, Sveučilište u

ORGANIZACIJA PODATAKA
NA RAČUNALU
Potrebe informacijskih sustava:
• Memoriranje (pohranjivanje) podataka relevantnih
za neko područje
• Jednostavan pristup do podataka
• Korištenje jedanput memoriranih podataka na
različite načine u različite svrhe
Da bi se zadovoljile potrebe informacijskih sustava
podaci se organiziraju u složene strukture podataka.
TIPOVI ORGANIZACIJE PODATAKA
• Ravni
• Baza podataka
RAVNI
indeks prezime
ime
smjer
status
predmet
ocje datum
na
nastavnik
071
Perić
Ivan
NTPP
redoviti
Matematika 1
4
21.02.2013.
Glavan
022
Mustać
Ana
LM
redoviti
Statistika
5
15.06.2013.
Draščić
059
Smojver
Milivoj
BS
izvanredni Brodski motori 4
20.09.2013.
Šegulja
071
Perić
Ivan
NTPP
redoviti
Engleski 1
3
15.02.2013.
Pritchard
025
Sušić
Petar
EITP
redoviti
Digitalna
elektronika
2
22.02.2013.
Sviličić
066
Gulin
Vanja
TP
redoviti
Mehanika
4
02.07.2013.
Vukelić
071
Perić
Ivan
NTPP
redoviti
Matematika 2
3
22.06.2013
Glavan
059
Smojver
Milivoj
BS
izvanredni Engleski 1
5
04.02 2014.
Pritchard
…
RAVNI
Svi podaci pohranjuju se u istu tablicu (datoteku).
Posljedica toga je da se podaci zajednički većem broju
ponavljaju u svakom od tih slogova .
BAZA PODATAKA
Podaci se pohranjuju u više tablica (studenti, ispiti…).
Tablice su međusobno povezane preko zajedničkih polja
( indeks)
Tablica (datoteka): studenti
indeks
prezime
ime
smjer
status
071
Perić
Ivan
NTPP
redoviti
022
Mustać
Ana
LM
redoviti
059
Smojver
Milivoj
BS
izvanredni
025
Sušić
Petar
EITP
redoviti
066
Gulin
Vanja
TP
redoviti
…
Tablica (datoteka): Ispiti
indeks
predmet
ocjena datum
nastavnik
071
Matematika 1
4
21.02.2013.
Glavan
022
Statistika
5
15.06.2013.
Draščić
059
Brodski motori
4
20.09.2013.
Šegulja
071
Engleski 1
3
15.02.2013.
Pritchard
025
Digitalna
elektronika
2
22.02.2013.
Sviličić
066
Mehanika
4
02.07.2013.
Vukelić
071
Matematika 2
3
22.06.2013
Glavan
059
Engleski 1
5
04.02.2014.
Pritchard
…
Ravni tip
Kako se svi podaci pohranjuju u istu tablicu posljedica
je da se isti podaci više puta unose.
Baza podataka
• Ušteda u vremenu unosa podataka (više nije
potrebno iste podatke upisivati više puta)
• Ušteda u memorijskom prostoru na disku (kod više
korisnika olakšava se i prijenos podataka koje
međusobno dijele)
• Smanjuje se broj grešaka prilikom unosa podataka
jer se podaci unose samo jednom
• Veća brzina i učinkovitost
Baza podataka se može definirati kao skup
međusobno povezanih podataka, pohranjenih bez
nepotrebne zalihosti u vanjskoj memoriji računala s
ciljem da na optimalni način posluže u različitim
primjenama.
Baza podataka je centralno mjesto informacijskog
sustava.
Pohranjeni podaci u bazi podataka opisuju trenutačno
stanje dijela realnog svijeta za koji je i razvijen
informacijski sustav, naravno na način pogodan za
računalnu obradu.
Podaci se pohranjuju u bazu podataka koristeći
odgovarajući MODEL PODATAKA.
Model podataka je skup osnovnih koncepata koji
definiraju postupak opisa podataka, manipulaciju
podacima, mogućnost postavljanja upita i integritet
podataka.
Model podataka definira logičku strukturu baze
podataka.
Model podataka osnovni je koncept za razvoj sustava
za upravljanje bazom podataka (Data Base
Management System, skraćeno DBMS) pomoću
kojega se implementira odgovarajuća baza podataka.
DBMS oblikuje fizički prikaz baze u skladu s traženom
logičkom strukturom.
DBMS je programski sustav koji osigurava osnovne
funkcije odabranog modela podataka u postupku
kreiranja i korištenja baze podataka. Sastoji se od
integrirane kolekcije programske podrške koja
omogućava:
• opis i manipulaciju podacima pomoću
posebnog jezika,
• visoki nivo sučelja prema podacima nezavisan
od strukture podataka u računalu,
• efikasno korištenje i razumijevanje informacija
pohranjenih u bazi podataka, zahvaljujući
skupu programskih alata (pomagala).
Podaci su logički organizirani po nekom modelu.
Model čini osnovu za osmišljavanje, definiranje i
implementiranje baze podataka. Današnji DBMS
podržavaju neki od sljedećih modela:
•
•
•
•
Hijerarhijski model
Mrežni model
Relacijski model
Objektni model
Hijerarhijski model
Baza podataka se može predočiti jednim stablom
ili skupom stabala. Čvorovi su datoteke, a
hijerarhijski
odnos
“nadređeni-podređeni”
izražava veze medu pojedinih tipovima zapisa.
Put pristupa do podataka uvijek je isti, od
podataka najviše hijerarhijske razine ka podacima
niže razine.
HIJERARHIJSKI MODEL
Datoteka 1
Datoteka 2
Mrežni model
U mrežnoj strukturi postoji više različitih logičkih
putova prema određenim podacima (određeni
skup podataka može biti istovremeno podređen
većem broju različitih skupova višeg nivoa.
MREŽNI MODEL
Datoteka 1
Datoteka 2
Datoteka 3
Datoteka 5
Datoteka 4
Datoteka 6
Relacijski model
Datoteke se predstavljaju tablicama. Relacijski
model je zasnovan na matematičkom pojmu
relacije. Ne postoji odnos ”nadređeni-podređeni”.
Relacije se po želji uspostavljaju između pojedinih
tablica. Svaka relacija ima ime po kojem se
razlikuje od ostalih relacija
U današnje vrijeme većina DBMS-a koristi
relacijski model.
Objektni model
Inspiriran je objektno-orijentiranim programskim
jezicima. Baza podataka je skup trajno
pohranjenih objekata koji se sastoje od svojih
internih podataka i “metoda” (operacija) za
rukovanje tim podacima. Svaki objekt pripada
nekoj klasi. Između klasa se uspostavljaju veze
nasljeđivanja, agregacije, odnosno međusobnog
korištenja operacija.
Komunikacija korisnika odnosno aplikacijskih
programa i DBMS-a odvija se pomoću posebnih
jezika. Ti jezici tradicionalno se dijele na tri kategorije:
• Jezik za opis podataka
(Data Description Language - DDL)
• Jezik za manipuliranje podacima
(Data Manipulation Language - DML)
• Jezik za postavljanje upita
(Query Language - QL)
Jezik za opis podataka (DDL)
Tim se jezikom definiraju podaci i veze među
njima.
Služi projektantu baze podataka ili administratoru
radi za zapisivanja sheme.
Naredbe DDL podsjećaju na naredbe za
definiranje složenih tipova podataka u jezicima
kao što su C, PL/1, Pascal...
Primjer kreiranja tablice:
CREATE TABLE student (
indeks INT,
prezime VARCHAR(50),
ime VARCHAR(50),
smjer VARCHAR(4),
status VARCHAR(10),
PRIMARY KEY (indeks)
);
Jezik za manipuliranje podacima (DML)
Služi za uspostavljanje veza između aplikacijskih
programa i baze podataka.
Naredbe DML omogućuju upis, promjenu,
brisanje,
čitanje i općenito manipuliranje
podacima.
U nekim DBMS, DML je biblioteka potprograma tj. naredbe u jeziku su pozivi na potprograme. A
drugdje se doista radi o posebnom jeziku.
Primjer upisa podatka u tablicu student:
INSERT INTO student VALUES (‘059’,’Smojver´,’Milivoj’,’BS’,
‘izvanredni’);
Jezik za postavljanje upita (QL)
Služi korisniku za direktno pretraživanje baze
podataka (tzv. interaktivni rad)
Neredbe su takve da definiraju rezultat koji se želi
dobiti, ali ne i kako do njega doći (algoritme). Ovo
svojstvo se zove neproceduralnost.
Primjer pretraživanja podataka:
SELECT indeks, ime, prezime FROM student WHERE
smjer= ‘BS’ ORDER BY prezime, ime;
Kod relacijskih baza postoji postoji tendencija
objedinjavanja svih ovih jezika u jedan (npr.
Structured Query Language - SQL) koji služi za sve:
definiranje podataka, njihovo manipuliranje i za
pretraživanje.
Neke od funkcije sustava za
organizacijom podataka (DBMS):
•
•
•
•
•
•
•
•
•
•
•
•
Kreiranje datoteke (tablice)
Unos podataka
Izmjena strukture podataka
Listanje podataka
Mijenjanje podataka
Brisanje podataka
Dodavanje podataka
Pretraživanje podataka
Sortiranje podataka
Ispisivanje podataka
Korištenje podataka iz programa
…
upravljanje
i