490 likes | 902 Vues
BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA PODATAKA BAZE. PROF. DR MILORAD K. BANJANIN. UVOD: DEFINISANJE BAZA PODATAKA.
E N D
BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA BAZE PODATAKA PODATAKA BAZE PROF. DR MILORAD K. BANJANIN
UVOD: DEFINISANJE BAZA PODATAKA Bazapodatakaje skup međusobno povezanihpodatakakoji se čuvaju zajedno i među kojima ima onoliko ponavljanja koliko je neophodno za njihovo optimalno korišćcenje pri višekorisničkom radu.
Baza podataka Datoteka Slog Slog Polje Polje Polje Polje Karakter Karakter Karakter Karakter KARAKTER je najelementarnija jedinica podatka koji se može razmatrati i kojim se može upravljati. Sastoji se od jednog alfabetskog znaka, numeričkog znaka ili simbola. Bit i bajt su još elementarnije jedinice podatka ali se oni odnose na fizičku a ne na logičku organizaciju podataka. Baza podataka je kolekcija datoteka o nekom segmentu realnog sveta organizovanih za brzi pristup i pretraživanje, koja zajedno sa sistemom za memorisanje, organizovanje i upravljanje tim podacima, čini sistem baza podataka. Polje je sledeći viši nivo organizovanja podatka i sastoji se od niza karaktera. Polje obično predstavlja atribut (osobinu ili svojstvo) entiteta (objekta, osobe, događaja...). Slog predstavlja skup atributa koji opisuju određeni entitet. Može biti fiksne dužine, ako sadrži fiksni broj polja fiksirane dužine ili varijabilne dužine u slučaju da sadrži varijabilan broj polja promenljive dužine. Fajl ili datoteka predstavlja grupu međusobno povezanih slogova.
Izučavanju baza podataka se može pristupiti sa dva aspekta: MODELI PODATAKA 2. SISTEMI ZA UPRAVLJANJE BAZOM PODATAKA 1. Modeli podataka su specifične teorije pomoću kojih se specifikuje i projektuje neka konkretna baza podataka ili informacioni sistem uopšte. • Sistemi za upravljanje bazom podataka su softverski sistemi koji obezbeđuju osnovne funkcije obrade velike količine podataka: • Jednostavno pretraživanje i održavanje podataka • Višestruko paralelno korišćenje istog skupa podataka • Pouzdanost i sigurnost
KLASIČNA OBRADA PODATAKA – NEZAVISNE, “PRIVATNE” DATOTEKE ZA SVAKU APLIKACIJU RADNI NALOG OBRAČUNSKI LIST PRATEĆA DOKUMENTA OTPREMNICA OBRADA LIČNIH ZARADA LANSIRANJE PROIZVODNJE PRODAJA RADNA MESTA TEHN. POSTUPAK FINALNI PROIZVODI RADNA LISTA PROIZVODI RADNICI KUPCI
1 2 3 4 5 Osnovni problemi klasične poslovne obrade podataka: Redudansa podataka, odnosno višestruko pamćenje istih podataka. Zavisnost programa od organizacije podataka. Niska produktivnost u razvoju informacionog sistema. Sistem datoteka je nezadovoljavajuće pouzdan, ne garantuje očuvanje tačnosti i konzistentnosti (uzajamni odnos) podataka pri mogućim harderskim i softverskim otkazima. Sistem datoteka ne obezbeđuje zadovoljavajuće očuvanje tačnosti i konzistentnosti podataka pri višestrukom paralelnom korišćenju podataka.
SISTEM ZA UPRAVLJANJE BAZOM PODATAKA PRATEĆA DOKUMENTA OBRAČUNSKI LIST RADNI NALOG OTPREMNICA OBRADA LIČNIH ZARADA LANSIRANJE PROIZVODNJE PRODAJA SISTEM ZA UPRAVLJANJE BAZOM PODATAKA BAZA PODATAKA
SUBP KOMPONENTA FUNKCIJA Definisanje baze podataka Jezici i grafički alati za definisanje entiteta, veza, integritetskih ograničenja i prava pristupa Neproceduralni pristup Jezici i grafički alati za pristup podacima bez kompletnog kodiranja Razvoj aplikacija Grafički alati za razvoj menija, formi za unos podataka i izveštaja Proceduralni jeziči interfejs Jezici koji kombinuju neproceduralni pristup podacima sa svim mogućnostima višeg programskog jezika Procesiranje transakcija Kontrolni mehanizmi koji sprečavaju konflikte i oporavljaju izgubljene podatke u slučaju pada sistema Podešavanje baza podataka Alati za praćenje i poboljšanje performansi baze podataka
OPIS ŠEME OPIS PODŠEME BAZA PODATAKA O P E R A T I V N I S I S T E M 4 3 2 9 1 8 APLIKATIVNI PROGRAM MEĐUMEMORIJA SISTEMA 6 RADNA ZONA PROGRAMA 5 7 PORUKE U VEZI UPUTSTVA POJEDNOSTAVLJENI MODEL FUNKCIONISANJA SISTEMA ZA UPRAVLJANJE BAZAMA PODATAKA SUBP Rezultat operacije SUBP signalizira aplikacionom programu (strelica 7) i u slučaju povoljnog signala program obrađuje podatke, odnosno nastavlja se izvršavanje (strelica 8). U interesu obezbeđenja dalje obrade SUBP vodi računa o sadržaju bafera (strelica 9). Ako aplikacioni program traži ili želi da smesti jedan podatak u bazu podataka, to se ostvaruje naredbom u jeziku koji vrši manipulaciju podataka (strelica 1). Rutine za upravljanje podacima kao deo SUBP prihvataju i analiziraju naredbu i dopunjuju je potrebnim aktuelim vrednostima na osnovu opisa cele baze podataka (šeme) i podšeme koja se odnosi na taj program (strelica 2). Zatim se operativnom sistemu daju uputstva (strelica 3), i on stupa u kontakt sa spoljnom memorijom (strelica 4) i prenosi podatke u međumemoriju sistema (strelica 5). Odavde SUBP prenosi podatke u različite zone programa (strelica 6) Ako su podaci u drugačijem obliku od oblika koji se koristi u aplikacionom programu, tada će se izršiti neophodna konverzija
DDL DML Jezik za opis podataka Jezik za manipulisanje podacima ZAHTEVI KORISNIK ADMINISTRATOR BAZE PODATAKA PRAVILA KORIŠĆENJA DML DDL DDL SISTEM ZA UPRAVLJANJE BAZOM PODATAKA BAZA PODATAKA DML KONCEPT ZAŠTITE PODATAKA Do sadržaja baze podataka korisnik može doći samo putem SUBP pri čemu se realizuje koncept zaštite podataka, kako je to ilustrovano na narednoj slici. Pravila za korišćenje baze podataka određuje administrator baze podataka i ugrađuje ih u SUBP.
Pouzdanost podataka i pri mogućim hardverskim i softverskim otkazima Skladištenje podataka sa minimumom redudanse Pouzdanoparalelno korišćenjezajedničkih podataka od strane više ovlašćenih korisnika Jednostavno komuniciranje sa bazom podataka preko jezika bliskih korisniku, tzv. upitnih jezika, kako bi se neprofesionalni korisnici neposredno uključili u razvoj informacionog sistema, a profesionalnim programerima značajno povećala produktivnost. Logičku i fizičku nezavisnost programa od podataka. Samo jednom, u jedinstvenoj fizičkoj organizaciji, svaki korisnik dobija sopstvenu logičku sliku podataka kakva njemu najviše odgovara. SISTEM ZA UPRAVLJANJE BAZOM PODATAKA TREBA DA OMOGUĆI
KOMPONENTE SISTEMA ZA UPRAVLJANJE BAZOM PODATAKA MODEL PODATAKA APLIKACIJA U PROGRAMSKOM JEZIKU (PL) SA UPITNIM JEZIKOM ODRŽAVANJE ŠEME BAZE PODATAKA DIREKTAN UPIT PROCESIRANJE OPISA BAZE, APLIKACIJA I UPITA UPRAVLJANJE TRANSAKCIJAMA I OPORAVKOM UPRAVLJANJE SKLADIŠTENJEM PODATAKA BAZA PODATAKA
ANSI/SPARC arhitektura programer A korisnik A programer B programer C programer D JEZIK DOM +DDL+DML UPITNI JEZIK JEZIK DOM +DDL+DML JEZIK DOM +DDL+DML JEZIK DOM +DDL+DML EKSTERNI NIVO PODŠEMA A PODŠEMA B Konceptualno/eksterno preslikavanje Podšema je deo logičke strukture obeležja baze podataka koji je dovoljan za realizaciju jedne aplikacije. REČNIK PODATAKA Konceptualno/eksterno preslikavanje KONCEPTUALNI NIVO Integracija podataka više aplikacija ostvaruje se formiranjem nove logičke strukture nazvane šemom baze podataka (globalna logička organizacija) nad skupom obeležja tipova zapisa datoteka. ŠEMA Konceptualno/interno preslikavanje Administrator baze podataka INTERNI NIVO BAZA PODATAKA
ANSI/SPARC arhitektura je tronivovska arhitektura čiji nivoi imaju za cilj da učine nezavisnom logičku od fizičke strukture baze podataka i aplikacione programe od fizičke i celokupne logičke strukture baze. Na eksternom (korisničkom) nivou se definiše logička struktura podataka pogodna za specifične zahteve, odnosno programe. EKSTERNI NIVO KONCEPTUALNI NIVO Konceptualni nivo (šema baze podataka) defiše opštu logičku strukturu baze podataka, sve podatke u sistemu, njihove logičke odnose (veze) i koji treba da omogući upravljanje podacima kao zajedničkim resursom u celom sistemu. INTERNI NIVO Interni (fizički) nivo definiše način na koji su podaci fizički organizovani na spoljnim memorijama.
MODELI PODATAKA
SISTEM SE NAJOPŠTIJE DEFINIŠE KAO SKUP OBJEKATA (ENTITETA) I NJIHOVIH MEĐUSOBNIH VEZA. OSNOVU INFORMACIONOG SISTEMA ČINI DOBRO PROJEKTOVANA BAZA PODATAKA, JER ONA PREDSTAVLJA FUNDAMENTALNE, STABILNE, KARAKTERISTIKE SISTEMA, OBJEKTE U SISTEMU, NJIHOVE ATRIBUTE I NJIHOVE MEĐUSOBNO VEZE. IZLAZI IZLAZNA TRANSFORMACIJA STANJE ULAZI Realni sistem PODACI O ULAZU BAZA PODATAKA IZLAZI PROGRAMI ZA IZVEŠTAVANJE PROGRAMI ZA ODRŽAVANJE Informacioni sistem
Intelektualni alati pomoću kojih se opisuje (modeluje) sistem kao skup objekata, njihovih atributa i njihovih međusobnih veza, se nazivaju MODELI PODATAKA. MODEL PODATAKA se može definisati i kao specifičan teorijski okvir pomoću koga se specifikuje, projektuje i implementira konkretna baza podataka. STRUKTURA MODELA Skup koncepata za opis objekata sistema, njihovih atributa i njihovih međusobnih veza. OPERACIJE KOMPONENTE MODELA PODATAKA Operacije nad konceptima strukture, preko kojih je moguće prikazati i menjati vrednosti podataka u bazi. OGRANIČENJA DINAMIČKA PRAVILA INTEGRITETA Ograničenja na vrednosti podataka u modelu, koja u svakom trenutka posmatranja moraju biti zadovoljena. Ova ograničenja se obično nazivaju statičkim pravilima integriteta baze podataka. Dinamička pravila integriteta kojima se definiše osnovno dinamičko ponašanje modela.
1 3 2 APSTRAKCIJA je kontrolisano i postepeno uključivanje detalja u opis sistema, “sakrivanje” detalja u opisivanju sistema, odnosno izvlačenje i prikazivanje opštih, a odlaganje opisivanja detaljnih osobina nekog sistema. TIPIZACIJA (KLASIFIKACIJA) objekata, odnosno podataka. AGREGACIJA je apstrakcija u kojojse skup objekata i njihovih međusobnih veza trtira kao novi, jedinstveni, agregirani tip. GENERALIZACIJA je apstrakcija u kojoj se skup sličnih tipova objekata predstavlja opštim generičkim tipom, odnosno nadtipom.
Evolutivni pregled modela baza podataka Objektnimodel Hijerarhijski model U razvoju sistema baza podataka može se uočiti nekoliko generacija, koje su ili koegzistirale na tržištu ili smenjivale jedna drugu. Mrežni model Relacioni model Model objekti-veze
HIJERARHIJSKI MODEL PODATAKA MREŽNI MODEL PODATAKA Mrežni modelpodataka kreira veze između podataka kroz strukturu povezanih lista u kojoj se podređeni zapisi (nazvani članovima) povezuju sa više nego jednim roditeljem (nazvanim vlasnik). Članovi zapisa mogu biti povezani sa vlasnikom i u isto vreme mogu biti vlasnici povezani sa drugim skupom članova Kao glavni nedostatak ovog modela navodi se činjenica da je komplikovan za dizajniranje i implementaciju. Svaki zapis može sadržati samo jedno ključno polje i samo jedna veza je dozvoljena između dva polja. Kada se roditelj eliminiše iz baze podataka, sva njegova deca automatski postaju deca roditeljevog roditelja. Problem hijerarhijskog modela podataka je u činjenici da se stvarni podaci ne mogu prilagoditi tako striktnoj hijerarhiji. Sva pretraživanja podataka moraju početi od vrha stabla a zatim se kretati silaznomputanjom od roditelja ka deci.
MODEL OBJEKTI - VEZE Ime Staž Konkretan objekat koji pripada nekoj klasi je instanca. Radnik Adresa ŠifraRadn Vrsta 1,1 S RadMesto RadMesto RadMesto RadMesto RadMesto RadMesto Zvanje Ocena RadMesto Datum AdminOsoblje Nastavnik 1,1 Sluša 1,M Tip (klasa) objekta. 0,M 0,M Student Sluša Predmet 0,M 0,M Prijava
Tabele su nazvane relacijama, a model je baziran na matematičkoj teoriji skupova i relacija. RELACIONI MODEL PODATAKA Relacioni model podataka je baziran na jednostavnom konceptu tabela, čije vrste i kolone sadrže realne poslovne situacije.
Kolone predstavljaju atribute objekata Vrste predstavljaju pojavljivanja objekata, odnosno veza. Relacioni model je vrednosno orjentisan, veze između objekata se uspostavljaju preko vrednosti njihovih atributa.
Jednostavan D O M E N Jezik za opis podataka Kompozitan Karakteristike relacionog modela baza podataka Jezik za manipulisanje podacima R E L A C I J A Bazna SQL Izvedena RELACIONI MODEL PODATAKA O relacionom modelu podataka Operativna komponenta relacionog modela podatka Jezici relacioih baza podataka Strukturna analiza relacionog modela Relaciona algebra Strukturna jednostavnost Relacioni račun Formalno i strogo zasnivanje Jednostavni upitni jezik Razgraničenje nivoa predstavljanja podataka Elementi sistema za upravljanje relacionim bazama podataka
OBJEKTNI MODEL BAZA PODATAKA Entitet koji je sposoban da čuva svoja stanja i koji okolini stavlja na raspolaganje skup operacija preko kojih se tim stanjima pristupa. A P S T R A K C I J E UČAURENJE Osnovna ideja objektno orijentisanog modela je da podigne nivo apstrakcije podataka, tako da se, umesto bitovima, slogovima, poljima manipuliše entitetima iz realnog sveta, objektima. AGREGACIJA GENERALIZACIJA Predstavlja se vrednostima osobina OBJEKAT Stanje objekta KLASIFIKACIJA Stanje se učauruje u objekte koji drugim objektima u sistemu i okolini stavljaju na raspolaganje interfejs, podskup svojih operacija koja ta stanja menjaju i transformišu u odziv objekta.
UČAURENJE Dodatna apstakcija koja sakrivajući implementaciju baze podataka omogućava korišćenje njenih servisa. Otvara niz mogućnosti u razvoju softvera: Jeftinije i produktivnije održavanje Ponovno korišćenje već razvijenih softverskih komponenti (učaurenog skupa međusobno povezanih objekata) Korišćenje udaljenih servisa u računarskoj mreži
Objektni model Specifikacija klasa objekta: 1. Deo za specifikaciju naziva klase, naziva skupa pojavljivanja objekata klase koji će se čuvati u bazi, i ključa preko koga se identifikuje jedno pojavljivanje u posmatranom skupu pojavljivanja. Deo za specifikaciju atributa: ključna reč attribute 2. tip atributa naziv atributa klase I deo za specifikaciju veza klase. Veze se specifikuju preko preslikavanja koja ih čine Vezu Sluša klasa objekata Student i Predmet čine dva preslikavanja: SlušaPred: Student--->Predmet i Slušaju:Predmet---> Student
Objektni model 3. Specifikacija klasa objekta: Deo za specifikaciju operacija. Operacije se specifikuju preko tipa rezultata koje daje i naziva operacije i argumenata koji mogu biti izlazni (in), izlazni (out) ili ulazno-izlazni (inout) i za koje se zadaje tip i naziv
UPOREDNA ANALIZA KARAKTERISTIKA MODELA MODEL OBJEKTI-VEZE Relacioni MODEL OBJEKTnI MODEL *Podržava modelovanje veoma složenih struktura *Semantički bogat model *Najpopularniji model zbog jednostavne strukture i jednostavnog jezika (SQL) *Prvenstveno namenjen specifikovanju statičke strukture baza podataka i osnovnih dinamičkih ograničenja *Pogodan za modelovanje realnih sistema *Bazu podataka tretira kao dinamički sistem *Pogodni su za sisteme sa jednostavnim objektima. *Pridruživanjem operacija objektima, objektni model tretira bazu podataka kao dinamički sistem. *Zastupljen u velikom broju tzv “poslovnih baza podataka” i u gotovo svim poznatim velikim informacionim sistemima i velikim softverskim paketima za upravljanje proizvodnjom i poslovanjem. *Ne postoje komercijalno raspoloživi SUBP *Apstrakcija učaurenja omogućava jednostavnije održavanje softvera, ponovno korišćenje izgrađenih softverskih komponenti, razvoj IS u distribuiranim heterogenim sistemima. *Prvenstveno se koristi za projektovanje baza podataka *Nije dovoljno semantički bogat
HVALA NA PAŽNJI PROF. DR MILORAD K. BANJANIN
primer Redudansa podataka U nekom komunalnom informacionom sistemu, isti podaci o građanima pamte se i stotinu puta. Višestruko skladištenje istih podataka dovodi do problema pri njihovom ažuriranju. Kada se neki podatak promeni, to se mora učiniti na svim mestima na kojima se on čuva.
Zavisnost programa od organizacije podataka Fizička struktura Logička struktura Način memorisanja podataka na spoljnim memorijama Struktura podataka predstavljena programeru Fizička zavisnost se ogleda u tome što program zavisi od distribucije datoteka po čvorovima računarske mreže, izabrane fizičke organizacije datoteka i izabranih metoda pristupa, načina sortiranja... Zavisnost programa od logičke strukture se ogleda u tome što program zavisiod npr. naziva i redosleda polja u zapisu, što ubacivanje novog polja u zapis ili bilo kakvo drugo restruktuiranje zapisa, koje ne menja sadržaj podataka koje program koristi, ipak zahteva i izmenu samog programa.
BAZE PODATAKA su najčešće smeštene na diskovima. Velike baze podataka, pored diskova (sekundarne memorije) zahtevaju i tzv. tercijalnu memoriju. Jedinice tercijalne memorije imaju kapacitet reda terabajta (1012 bajta) Pored podataka sadrži i metapodatke, odnosno tzv. Rečnik podataka. Rečnik podataka je baza podataka o bazi podataka. Metapodatak je podatak o podatku. Termin integritet baze podataka označava tačnost (dozvoljene vrednosti),odnosno konzistentnost (dozvoljene odnose) podataka
Sistem za upravljanje skladištenjem podataka 1. Upravljanje datotekama (file manager) 2. Upravljanje baferima (buffer manager) Vodi računa o lokaciji datoteka preko kojih se realizuje baza podataka i o pristupima blokovima podataka na zahtev upravljanja baferima. Vodi računa o lokaciji datoteka preko kojih se realizuje baza podataka i o pristupima blokovima podataka na zahtev upravljanja baferima.
UPITI Ad-hoc specifikovani zahtevi za podacima iz baze, sa navedenim uslovima kojepodaci treba da zadovolje Održavanje šeme baze podataka podrazumeva prvo kreiranje, a zatim i modifikovanje ovog opisa koji se čuva u Rečniku podataka. Šema baze podataka opisuje strukturu baze podataka, pravila integriteta i prava korišćenja. PROCESIRANJE OPISA BAZE, APLIKACIJA I UPITA Aplikacije Održavanje šeme baze podataka U nekom programskom jeziku koji se proširuje sa konstrukcijama upitnih jezika, preko kojih se, na unapred definisani način pretražuje i menja sadržaj baze podataka.
UPRAVLJANJE TRANSAKCIJAMA I OPORAVKOM Transakcija se može definisati i kao “jedinica konzistentnosti” baze podataka: pre i posle transakcije stanje baze podataka mora da zadovolji uslove konzistentnosti. Zahteva da se bilo sve operacije nad bazom podataka uspešno obave ili nijedna. konzistentnost atonomnost trajnost Kada se transakcija završi njeni efekti ne mogu biti izgubljeni, čak iako se neposredno po njeom okončanju desi neki ozbiljan otkaz sistema. IZOLACIJA Kada se dve ili više transakcija izvršava istovremeno, njihovi efekti moraju biti međusobno izolvani. 1 2
JEZIK ZA OPIS PODATAKA JEZIK ZA MANIPUISANJE PODACIMA Da bi SUBP praktično realizovao svoje funkcije mora sadržati jezike za definisanje i pristupanje bazi podataka. Jezik baze podataka sadrži jedan ili više jezika za opis podataka ili jedan ili više jezika za manipulaciju podacima. Jezik za opis podataka (DDL, engl. Data Definition Language) omogućava opis podataka na tri nivoa: Na nivou korisnika u vidu određene podšeme – jezik za opis podataka podšeme 1. Jezik za manipulisanje podacima (DML, engl. Data Manipulation Language) omogućava korisniku izvršavanje operacija nad bazom podataka koja je definisana jezikom za opis podataka. Ove operacije omogućavaju upisivanje zapisa, učitavnje zapisa u radnu zonu programa, upisivanje izmenjenog zapisa u bazu podataka, potpuno ili delimično brisanje zapisa, pronalaženje zapisa i sl. Na nivou logičke strukture podataka - jezik za opis podataka šeme 2. Na nivou fizičke strukture podataka – jezik za opis fizičke strukture podataka. Na ovom nivou se opisuje način fizičkog pristupa podacima, memorisanje podataka i fizička veza između podataka 3.
Administrator baze podataka Baza podataka je poseban, samostalni resurs u informacionom sistemu. Funkcije administratora baza podatak: RAZVOJ KONCEPTUALNOG NIVOA, ODNOSNO UPRAVLJANJE PODACIMA U SISTEMU. Administrator baze ima ključnu ulogu u informacionim sistemima zasnovanim na bazama podataka. IZBOR FIZIČKE ORGANIZACIJE BAZE PODATAKA I METODA PRISTUPA DEFINICIJA I REALIZACIJA PRESLIKAVANJA KONCEPTUALNI – INTERNI I KONCEPTUALNI EKSTERNI NIVO OBEZBEĐENJE SIGURNOSTI I INTEGRITETA BAZE PODATAKA PRAĆENJE PERFORMANSI SISTEMA I DEFINISANJE STRATEGIJE OPORAVKA BAZE PODATAKA
Domen je skup vrednosti istog tipa, na primer skup naslova knjiga, skup imena gradova ili skup datuma nekih događaja. Domen je jednostavan ako su sve vrednosti atomične, tj. ako SUBP ne može da ih razloži u komponente sa specifičnim značenjem; u suprotnom, domen je kompozitan. U relacionom modelu podatakarelacija odgovara dvodimenzionalnoj tabeli u kojoj svaka vrsta sadrži jednu n-torku, a svaka kolona elemente jednog domena (odnosno vredosti obeležja). D O M E N RELACIJA Bazne relacije su relacije koje su definisane nezavisno od drugih relacija u bazi podataka, i ne mogu se izvesti iz drugih baznih relacija. Izvedene relacije su relacije koje se mogu izvesti iz baznih relacija primenom skupa operacija.
Operativna komponenta relacionog modela baza podataka omogućava manipulisanje podacima u bazi podataka, što se pre svega odnosi na postavljanje upita i ažuriranje baze podataka. Relaciona algebra tretira skup operacija nad relacijama. Relacioni izraz u relacionoj algebri sastoji se od niza operacija nad odgovarajućim relacijama. Među važnijim operacijama relacione algebre, pored tradicionalnih operacija nad skupovima: unije, preseka, razlike i Dekartovog proizvoda, spadaju i operacije projekcije, selekcije, deljenja i prirodnog spajanja. Kombinovanjem operacija moguće je izvšiti pretraživanje, odnosno ažuriranje baze podataka. Drugi formalizam kojim se može opisati manipulativni deo relacionog modela je relacioni račun. Relaciona algebra daje skup eksplicitnih operacija za izgradnju relacije rezultata, a relacioni račun pruža notaciju za opisivanje svojstava relacije rezultata. Pomoću relacionog računa definiše se traženi rezultat, a SUBP se prepušta da dođe do tog rezultata. RELACIONI RAČUN RELACIONA ALGEBRA
SQL SQL (engl. Structured Query Language) je standardni relacioni upitni jezik. Omogućava definisanje podataka, ažuriranje, kontrolu, konzistentnost, konkurentni rad i jezik za održavanje rečnika podataka. Jednostavnost i jednoobraznost pri korišćenju Tabela se kreira jednom izvršnom naredbom i odmah po kreiranju spremna je za korišćenje (upisivanje, promena, pretraživanje podataka). Podaci se prikazuju u obliku tabele. Mogućnost interaktivnog i klasičnog programiranja Koristeći SQL dobijaju se odgovori na trenutno postavljene zahteve ili se SQL blokovi ugrađuju u neki viši programski jezik. Neproceduralnost (proceduralnost u minimalnom stepenu) SQL je u velikoj meri neproceduralan jer se njime definiše šta se želi dobiti a ne kako se do rezultata dolazi: koji podaci su poželjni, koje tabele se referenciraju i koji uslovi treba da budu ispunjeni, bez specifikacije procedure za dobijanje podataka.