Baza podataka

S Vikipedije, slobodne enciklopedije

Baza (banka) podataka je kolekcija podataka organizovanih za brzo pretraživanje i pristup, koja zajedno sa sistemom za administraciju, organizovanje i memorisanje tih podataka, čini sistem baze podataka. Iz ugla korisnika, podaci su na neki logički način povezani. Oni predstavljaju neke aspekte realnog sveta (npr. korisnici i članci u Vikipediji).

Korisnici pristupaju bazi podataka prvenstveno preko upitnika. Korišćenjem ključnih reči i svrstavanjem komandi korisnici mogu brzo da pronađu, preurede, grupišu i odaberu oblast u mnogim zapisima koje treba vratiti ili pomoću kojih treba sastaviti izveštaje o naročitoj skupini podataka u skladu s pravilima dotičnog sistema vođenja baze podataka.

Postoje različite vrste baza podataka, zavisno od toga na koji način su podaci interno organizovani. Tako se razlikuju hijerarhijske, mrežne (CODASYL), relacionalne, objektno-orijentisane, objektno-relacione, prilagođene za WEB, XML i multimedijske baze podataka.

Podaci su predstavljeni na uniformni način (npr. u relacionim bazama podataka podaci su organizovani u tabelama), što olakšava pristup i korišćenje od strane eksternih programa. Tako jednu bazu podataka može koristiti niz različitih programa, pisanih u različitim programskim jezicima.

Terminologija i pregled[uredi | uredi izvor]

Formalno, „baza podataka“ se odnosi na skup povezanih podataka i način na koji su organizovani. Pristup ovim podacima obično obezbeđuje „sistem za upravljanje bazom podataka“ (DBMS) koji se sastoji od integrisanog skupa računarskog softvera koji omogućava korisnicima interakciju sa jednom ili više baza podataka i omogućava pristup svim podacima sadržanim u bazi podataka (iako ograničenja mogu postojati koja ograničavaju pristup određenim podacima). DBMS pruža različite funkcije koje omogućavaju unos, skladištenje i pronalaženje velikih količina informacija i pruža mogućnosti za upravljanje načinom na koji su te informacije organizovane.

Zbog bliske veze između njih, termin „baza podataka“ se često koristi za označavanje baze podataka i DBMS koji se koristi za manipulaciju njome.

Izvan sveta profesionalne informacione tehnologije, termin baza podataka se često koristi da se odnosi na bilo koju kolekciju povezanih podataka (kao što je proračunska tabela ili indeks kartica) jer zahtevi za veličinu i korišćenje obično zahtevaju korišćenje sistema za upravljanje bazom podataka.[1]

Postojeći DBMS-ovi pružaju različite funkcije koje omogućavaju upravljanje bazom podataka i njenim podacima koji se mogu klasifikovati u četiri glavne funkcionalne grupe:

  • Definicija podataka – Kreiranje, modifikacija i uklanjanje definicija koje definišu organizaciju podataka.
  • Ažuriranje – Umetanje, modifikacija i brisanje stvarnih podataka.[2]
  • Preuzimanje – Pružanje informacija u obliku koji se može direktno koristiti ili za dalju obradu od strane drugih aplikacija. Preuzeti podaci mogu biti dostupni u formi koja je u osnovi ista kao što je uskladištena u bazi podataka ili u novom obliku dobijenom izmenom ili kombinovanjem postojećih podataka iz baze podataka.[3]
  • Administracija – Registrovanje i nadgledanje korisnika, sprovođenje bezbednosti podataka, praćenje performansi, održavanje integriteta podataka, bavljenje kontrolom istovremenosti i oporavak informacija koje su oštećene nekim događajem kao što je neočekivani sistemski kvar.[4]

I baza podataka i njen DBMS su u skladu sa principima određenog modela baze podataka.[5] „Sistem baze podataka“ se odnosi zajedno na model baze podataka, sistem za upravljanje bazom podataka i bazu podataka.[6]

Pošto DBMS predstavljaju značajno tržište, prodavci računara i skladišta često uzimaju u obzir zahteve DBMS-a u svojim planovima razvoja.[7]

Skladištenje[uredi | uredi izvor]

Računari se koriste za skladištenje i obradu podataka još od 1950-ih godina. Bitna stvar koju treba pomenuti je da primarna (glavna) memorija računara omogućava samo privremeno skladištenje podataka (kada se računar isključi svi podaci iz primarne memorije se gube). Iz tog razloga potrebno je koristiti neki tip sekundarne memorije za trajno skladištenje podataka, (među koje spadaju magnetni i optički mediji, odnosno magnetne trake, čvrsti diskovi, CD ili DVD).

Glavni zadatak prvih dizajnera informacionih sistema, bio je razvijanje tipa softvera koji bi omogućio lociranje specifičnih podataka uskladištenih u sekundarnoj memoriji i njihovo efikasno učitavanje u glavnu memoriju kako bi se mogli obrađivati. Osnovnu strukturu jednog informacionog sistema čine skupovi datoteka koji su permanentno uskladišteni u nekom sekundarnom uređaju za skladištenje podataka. Softver koji čini sistem za upravljanje datotekama podržava logičko razdvajanje datoteka u zapise. Svaki zapis opisuje neku stvar (ili jedinicu) i sastoji se od određenog broja polja, gde svako polje daje vrednost određenoj osobini (ili atributu) date jedinice.

Rani sistemi datoteka su uvek bili sekvencijalnog tipa, što znači da su sukcesivni zapisi morali biti obrađivani u redosledu u kojem su snimljeni, odnosno počinjući od prvog po redu i krećući se ka posljednjem. Ovakva struktura datoteka se pokazala kao odgovarajuća i u stvari jedino izvodljiva u vreme kada su se datoteke čuvale na magnetnim trakama i kada preskakanje radi pristupa slučajno biranim zapisima nije bilo moguće. Datoteke sortirane sekvencijalno su obično uskladištene sledeći određeni redosled (npr. alfabetski) za štampanje izveštaja (npr. telefonskog adresara) i radi efikasne obrade grupa transakcija. Na primer, bankovne transakcije mogu biti sortirane u istom redosledu kao i datoteke koje sadrže podatke o bankovnim računima, tako da kada se svaka transakcija učitava, sistem treba samo da čita napred (nikada nazad) kako bi pronašao zapis o bankovnom računu na koji se data transakcija primenjuje.

Kada su razvijeni tzv. uređaji za skladištenje sa direktnim pristupom, (primarno magnetni diskovi), omogućeno je pristupanje arbitrarnom bloku podataka na disku. (Blok podataka je jedinica za prenos između primarne i sekundarne memorije, koja se obično sastoji od više zapisa). Datoteke je postalo moguće indeksirati čime se omogućilo lociranje slučajno biranih zapisa i njihovo učitavanje u primarnu memoriju kako bi se mogli obrađivati. Indeks datoteke je sličan klasičnom indeksu koji se sreće u knjigama. Sastoji se od spiska identifikatora koji omogućavaju razlikovanje zapisa, zajedno sa njegovom lokacijom u memoriji. Pošto indeksi mogu biti dugački, obično se strukturiraju u neku vrstu hijerarhije i pristupa im se preko pokazivača koji su u stvari identifikatori koji sadrže adresu (lokaciju u memoriji) određene stavke.

Sistemi za upravljanje bazom podataka[uredi | uredi izvor]

Sistem za upravljanje bazom podataka (SUBP) obezbeđuje skup usluga koje zajedno pružaju široku podršku aplikacijama koje zahtevaju skladištenje velikih količina podataka koje će deliti više korisnika. Među najvažnijim uslugama se nalaze:

Upravljanje sekundarnim skladištenjem[uredi | uredi izvor]

Mogućnost za skladištenje podataka na magnetnim diskovima ili drugim medijima za dugoročno skladištenje, tako da podaci mogu da opstanu nakon izvršenja programa na kojima su kreirani. Kako bi se podržalo efikasno skladištenje i pristup velikim količinama podataka potrebni su sofisticirani sistemi upravljanja sekundarnim skladištem. Sistemi za upravljanje obično uključuju usluge za brzi pristup određenim podacima pomoću indeksa, čime se umanjuje potreban broj različitih pristupa sekundarnom skladištu, grupisanje srodnih podataka i obezbeđivanje, gde je to moguće, efikasnog korišćenje bafera koji u memoriji računara na kojem se izvršava sistem baze podataka, zadržava podatke kojima je skoro pristupano.

Kontrola uporednog pristupa[uredi | uredi izvor]

Velike baze podataka su dragocene za organizacije koje ih poseduju, a često je potrebno da im pristupi više korisnika istovremeno. Nekontrolisane promene u deljenom prostoru za skladištenje, mogu dovesti do oštećenja integriteta baze, ili gubljenja podataka kao rezultat interferencije programa na nepredvidiv način. Da bi se to sprečilo, sistemi za upravljanje bazom podataka poseduju određene zaštitne mehanizme kako bi se osiguralo da svaki korisnik pristupa bazi podataka izolovano od drugih, i takođe sa dovoljnim garancijama o ponašanju sistema kada više korisnika pokuša učitati ili upisati, isti podatak u isto vreme.

Rekuperacija[uredi | uredi izvor]

Mnoge aplikacije za baze podataka su aktivne 24 sata dnevno, neretko im pristupa mnogo različitih programa koji se često izvršavaju na različitim računarima, uporedno koristeći bazu podataka. Kao rezultat toga, neizbežno je da se desi da programi koji pristupaju bazi podataka prave greške, kao i da se desi da se računar na kome se izvršava sistem za upravljanje bazom podataka blokira. Prema tome, sistem za upravljanje bazom podataka mora da bude fleksibilan, odnosno tolerantan na greške u softveru i otkazivanje hardvera, umanjujući šanse da baza podataka bude oštećena, ili da se desi da se informacije trajno izgube. Kako bi se izbegli ovi problem i postojala mogućnost za rekuperaciju baze podataka, često se radi privremena replikacija podataka na više mesta, tako da ima dovoljno informacija da se omogući automatsko pronalaženje i ispravljanje različitih vrsta grešaka kada se one dese.

Bezbednost[uredi | uredi izvor]

Većina velikih sistema baza podataka sadrže podatke koji ne treba da budu vidljivi nekim korisnicima, kao i da im ne bude omogućeno da ih menjaju. Iz tog razloga, neophodno je da postoji jedan opšti mehanizam koji treba da obezbedi da nijedan korisnik ne pristupi informacijama kojima po pravilu ne treba da pristupi, i još važnije, da postoje mehanizmi kontrole nad korisnicima koji imaju jednu, ili više dozvola za izmene sadržaja baze podataka (npr. radnici jednog preduzeća ne bi trebalo da budu u stanju da pristupe i vrše izmene stavki koji se tiču njihovog ličnog dohotka, i tome slično). Prema tome, sistemi za upravljanje bazom podataka po pravilu obezbeđuju mehanizme koji omogućavaju administratoru baze podataka da kontroliše ko i gde može da pristupi kao i šta može da uradi u bazi podataka.

Funkcije baza podataka[uredi | uredi izvor]

Osnovni koncept[uredi | uredi izvor]

Različiti pogled na iste podatke[uredi | uredi izvor]

  • Podaci prikazani korisniku u obliku u kome su mu potrebni.
  • Podaci su zaštićeni od korisnika (obezbeđuju integritet).
  • Razdvajanje logičkog i fizičkog nivoa (modeli baze).

Modeli baze[uredi | uredi izvor]

  • Eksterni model baze – pogledi korisnika na bazu podataka;
  • konceptualni model baze – opisuju strukturu baze;
  • interni model baze – opisuje kako se fizičko čuvaju podaci na nekoj spoljašnjoj memoriji.

Vidi još[uredi | uredi izvor]

Reference[uredi | uredi izvor]

Literatura[uredi | uredi izvor]

Spoljašnje veze[uredi | uredi izvor]

Vikizvornik
Vikizvornik
Vikizvornik ima originalan tekst iz knjige Rečnik socijalnog rada o ovom članku: