Baze podataka Osnovni pojmovi 2 12 2020 Osnovni
Baze podataka Osnovni pojmovi 2. 12. 2020. Osnovni pojmovi 1
Šta su baze podataka? – Skup povezanih podataka, koji su organizovani na odredjeni način – BP postoje u različitim formama: • • 2. 12. 2020. Elektronski podaci: tekst, video i audio zapisi, brojevi Knjige: kolekcija tekstova i slika, biblioteke Datoteke organizovane u direktorijume Skup šematskih crteža Uzorci sa naftnih bušotina Uzorci krvi za medicinske laboratorije DNK uzorci u forenzičkim laboratorijama. . Osnovni pojmovi 2
Računarske baze podataka – Sastoje se od: • Bita, organizovanih u bajtove, koji mogu da čine stringove itd. • Polja (fields) – niz bajtova koji reprezentuje informaciju (broj, tekst, slika, audio/video zapis, . . . ) • Zapisa (records) - niz polja koji zajedno opisuju jedan “entitet” • Datoteka (files) – niz zapisa koji opisuju različite entitete – Baze podataka tipično sadrže više relevantnih datoteka 2. 12. 2020. Osnovni pojmovi 3
Definicije • Baza podataka – organizovani skup logički povezanih podataka – integrisani skup podataka o nekom sistemu i skup postupaka za njihovo održavanje i korišćenje, organizovan prema potrebama korisnika – dobro struktuirana kolekcija podataka, koja postoji jedno određeno vreme, koja se održava i koju koristi više korisnika ili programa 2. 12. 2020. Osnovni pojmovi 4
Podaci • Podatak – Činjenica o nekom predmetu i/ili događaju koja se može zabeležiti i sačuvati na računaru – Struktuirani podaci: brojevi, karakteri, . . . – Nestruktuirani podaci: slika, zvuk, video, . . . – Podatak sam po sebi nema značenje, tek kada se interpretira nekom vrstom sistema za obradu podataka poprima značenje i postaje informacija. 2. 12. 2020. Osnovni pojmovi 5
• Informacija – Podatak koji je obrađen na takav način da se znanje osobe koja koristi podatak povećalo Podaci koji nisu korisni Petar Petrović 1506983710325 Marković 0211979850123 Janković 1112985830456 ----------- Ime i prezime JMBG Smer Godina upisa Petar Petrović 1506983710325 PP 2007 Marković 0211979850123 RGD 2007 Janković 1112985830456 PP 2006 ----------- PP 2006 Informacija o upisu – dopunjeni relevantni podaci 2. 12. 2020. Osnovni pojmovi 6
• Informacije – podaci koji se sumiraju ili na neki drugi način obrađuju i prezentuju Grafički prikaz podataka iz BP - informacija o upisu 2. 12. 2020. Osnovni pojmovi 7
Informacija Važno je razumeti šta je smešteno (stored) u BP, a šta se može dobiti (retrieved) iz BP 2. 12. 2020. Osnovni pojmovi 8
Podaci/Informacije PODACI INFORMACIJE Prosečna ocena učenika Ocene učenika iz pojedinih predmeta 2. 12. 2020. Database Prosečna ocena na godini Prosečna ocena škole Osnovni pojmovi 9
Registar korisnika • Registar korisnika – Podaci o korisnicima i njihovim pravima pristupa – Ko može da pristupa • Username, password – Kojim podacima • Baza podataka, tabele, kolone, vrste – Šta može da radi sa njima • INSERT, DELETE, UPDATE, SELECT 2. 12. 2020. Osnovni pojmovi 10
DBMS - Data Base Management System • Sistem za upravljanje bazama podataka • Softverski sistem koji se koristi za: – kreiranje, – održavanje i manipulisanje podacima, – kontrolu prava pristupa bazi podataka 2. 12. 2020. Osnovni pojmovi 11
• DBMS - Interfejs između korisnika (korisničkih programa, aplikacija) i zapisa baze podataka na disku Aplikacija Y Aplikacija X Aplikacija Z Data Base Management System Baza podataka – podaci na disku 2. 12. 2020. Osnovni pojmovi 12
• Od posebnog interesa su: • – Relacione baze podataka - RBP – Programi za upravljanje sa RBP – Sistemi za upravljanje bazama podataka (DBMS) Relational Database Management System (RDBMS) Reč “relaciona” danas se često izostavlja, zato što većina poznatih SUBP (kao što su: MS Access, My. SQL, MS SQL Server, Oracle, IBM DB 2. . . ) jesu relacione BP. 2. 12. 2020. Osnovni pojmovi 13
• Karakteristike relacionih BP – Podaci su organizovani u redove i kolone, a skup takvih podataka je relacija – Sve vrednosti su skalarne – u jednom polju se može naći samo jedna vrednost – Ne mogu da postoje dupli zapisi – Sve operacije se obavljaju nad relacijama a rezultat operacija je opet relacija 2. 12. 2020. Osnovni pojmovi 14
• Koncept RBP: – Na slici su prikazane 3 tabele sa ukupno 12 atributa (različitih kolona) – Tab 1 i Tab 2 “dele” atribut 3 – Tab 2 i Tab 3 “dele” atribut 7 Tab 1 Tab 2 Tab 3 2. 12. 2020. Osnovni pojmovi 15
Modelovanje - Razvoj BPBusiness Information Requirements • Modelovanje Strategija, podataka je Analiza prvi korak u razvoju Projektovanje baza podataka (database Realizacija development process) Conceptual Data Modeling Database Design Tabele, ključevi, indeksi, pogledi, . . Database Build Database 2. 12. 2020. Osnovni pojmovi 16
Modelovanje - Razvoj BP • Razvoj baza podataka počinje sa analizom zahteva krajnjih korisnika • Primer - Problem upravljanja kadrovima (zaposleni): – Potrebno je voditi evidenciju za svakog zaposlenog (ime, prezime, radno mesto, datum zapošljavanja, zarada) – Svaki zaposleni ima jedinstven identifikacioni broj – Preduzeće ima više odeljenja (proizvodnja, računovodstvo, prodaja itd). Odeljenja imaju jedinstven ID – Svaki zaposleni je u jednom odeljenju – Neki od zaposlenih su direktori odeljenja – Potrebno je da se zna direktor za svakog zaposlenog i svi zaposleni kojima upravlja određeni direktor 2. 12. 2020. Osnovni pojmovi 17
Modelovanje - Razvoj BP • Database design - Relacioni model: – – – 2. 12. 2020. Nazivi tabela Nazivi kolona u tabelama Primarni (PK) i spoljašnji ključevi (FK) Nulls: indikacija da kolona mora da ima vrednost Datatype: format i definicija svake kolone Osnovni pojmovi 18
Modelovanje - Razvoj BP • Realizacija (database build) – Primena SQL (Structured Query Language) jezika za fizičku realizaciju SQL>CREATE TABLE ODELJENJE (Id. Odeljenje NUMBER(5) NOT NULL PRIMARY KEY, Naziv VARCHAR(25) NOT NULL); SQL>CREATE TABLE RADNICI (Id. Radnik NUMBER(9) NOT NULL PRIMARY KEY, Ime VARCHAR 2(15) NOT NULL, Prezime VARCHAR 2(20) NOT NULL, Radno. M VARCHAR 2(15), Zaposlen DATE NOT NULL, Nadredjeni NUMBER(9) REFERENCES RADNICI Odeljenje NUMBER(5) REFERENCES ODELJENJE); 2. 12. 2020. Osnovni pojmovi 19
Primer RBP 1. Ime A A B C Id# 121 132 101 106 2. Id# Knjiga 132 xx 121 yy Datum 13. 7. 03. 26. 8. 04. 3. Id# Bolest 101 hhhh 121 oooo Datum 20. 1. 05. 16. 12. 04. Id# 101 121 106 132 Datum. Rođenja 28. 2. 1977. 12. 2. 1955. 10. 5. 1981. 17. 6. 1963. 2. 12. 2020. Adresa aaa bbb ccc ddd Datum. Rođenja 12. 2. 1955. 2 17. 6. 1963. 28. 2. 1977. 10. 5. 1981. Položaj 3 3 4 2 Zarada 80 70 70 80 Adresa ddd bbb Osnovni pojmovi 20
Tipični zahtevi • • Zahtev upit (query) Primer: – Prikazati spisak zaposlenih rođenih pre 01. 1970. – Prikazati spisak zaposlenih koji su uzeli knjige pre 01. 08. 2008. godine – Poslati poruku zaposlenima koji imaju bolest ‘oooo’ da izvrše lekarski pregled Neki upiti se odnose na jednu tabelu, a neki na više Neophodno je da postoji jezik (što bliži čovekovom), da bi se izrazili prethodni upiti (jezik za rad sa BP) – SQL – Structured query language 2. 12. 2020. Osnovni pojmovi 21
Projektovanje BP • Neophodnost dobrog projektovanja BP: – Važno je pažljivo razmišljati o tabelama i njihovoj strukturi – Poželjno je da se podaci pojavljuju samo jedanput • U datom primeru se Datum. Rođenja pojavljuje dva puta • Opasnost kod višestrukog pojavljivanja Adrese zaposlenih – Ako se zaposleni preseli, promena se mora evidentirati na više mesta 2. 12. 2020. Osnovni pojmovi 22
2. 12. 2020. Osnovni pojmovi 23
- Slides: 23