Što je baza podataka? Definicija i vrste
⚡ Pametni sažetak
Što je baza podataka? Baza podataka je sustavna, strukturirana zbirka podataka koja podržava elektroničku pohranu, dohvaćanje i upravljanje. Pokreće svakodnevne sustave od telefonskih imenika do društvenih mreža, a njome se upravlja putem softvera koji se naziva Sustav za upravljanje bazama podataka (DBMS).

Što su podaci?
Jednostavnim riječima, datum su činjenice o objektu interesa. Vaše ime, dob, visina i težina su sve podaci o vama. Slike, slike, datoteke i PDF-ovi također se mogu računati kao podaci jer svaki od njih sadrži informacije koje se mogu pohraniti i obraditi.
Što je baza podataka?
A baza podataka je sustavno prikupljanje podataka. Baze podataka podržavaju elektroničko pohranjivanje, dohvaćanje i manipuliranje podacima, što olakšava upravljanje podacima u velikim razmjerima.
Razmotrimo nekoliko poznatih primjera. Internetski telefonski imenik koristi bazu podataka za pohranu ljudi, telefonskih brojeva i kontaktnih podataka. Pružatelj električne energije koristi bazu podataka za obradu naplate, problema s korisnicima i povijesti kvarova. Facebook pohranjuje članove, prijateljstva, objave, poruke, oglase i još mnogo toga - sve se to nalazi unutar baza podataka. Uzorak je isti u svim industrijama: organizirajte informacije tako da ih aplikacije i ljudi mogu pouzdano pretraživati.
Vrste baza podataka
Najčešće vrste baza podataka sažete su u nastavku. Svaka je prikladna za određeni oblik podataka i radno opterećenje.
Distribuirane baze podataka
Distribuirana baza podataka širi podatke na više lokacija. Svaka lokacija zadržava svoj vlastiti dio, dok klijenti vide jednu logičku bazu podataka. Model je uobičajen u globalnim aplikacijama kojima je potrebna niska latencija i lokalna dostupnost.
Relacijske baze podataka
Relacijska baza podataka pohranjuje podatke u tablice s retcima i stupcima te koristi ključeve za povezivanje jedne tablice s drugom. Često nazivana RDBMS, ostaje najpopularnija DBMS obitelj na tržištu. Primjeri uključuju MySQL, Oracle Database, PostgreSQLi Microsoft SQL Server.
Objektno orijentirane baze podataka
Objektno orijentirane baze podataka pohranjuju podatke kao objekte, od kojih svaki nosi atribute i metode koje definiraju koje su operacije dopuštene nad podacima. Jasno se preslikavaju na objektno orijentirane programske jezike i uklanjaju potrebu za ORM slojem.
Centralizirana baza podataka
Centralizirana baza podataka čuva svaki zapis na jednom centralnom poslužitelju. Korisnici se s mnogo lokacija povezuju na istu pohranu, što pojednostavljuje administraciju, ali poslužitelj čini jednom točkom sukoba.
Baze podataka otvorenog koda
Baze podataka otvorenog koda objavljuju svoj izvorni kod pod permisivnom licencom tako da ih svatko može koristiti, mijenjati i distribuirati. MySQL, PostgreSQL, SQLite, MariaDBi MongoDB su široko rasprostranjeni primjeri.
Baze podataka u oblaku
Baza podataka u oblaku optimizirana je za virtualiziranu infrastrukturu na zahtjev. Isporučuje se kao upravljana usluga, elastično skalira pohranu i izračun te nudi visoku dostupnost putem ugrađene replikacije. Primjeri uključuju Amazon RDS, Azure SQL baza podataka i Google Cloud Ključ.
Skladišta podataka
A skladište podataka centralizira povijesne i kumulativne podatke iz mnogih izvornih sustava kako bi podržao donošenje odluka, izvještavanje i predviđanje. Pojednostavljuje analitiku dajući organizaciji jednu, pouzdanu verziju istine.
NoSQL baze podataka
NoSQL baze podataka obrađuju vrlo velike, često nestrukturirane skupove podataka koji se ne uklapaju uredno u retke i stupce. Spremišta dokumenata, ključ-vrijednost, obitelj stupaca i grafova adresiraju drugačiji obrazac pristupa i pružaju horizontalnu skalabilnost koju tradicionalne relacijske baze podataka teško mogu postići.
Grafske baze podataka
Grafovska baza podataka koristi teoriju grafova - čvorove i rubove - za izravno pohranjivanje i ispitivanje odnosa. Idealna je za otkrivanje prijevara, mehanizme za preporuke i analizu društvenih mreža gdje su veze između entiteta jednako važne kao i sami entiteti.
OLTP baze podataka
OLTP (Online Transaction Processing) baze podataka usmjerene su na transakcije visokog protoka i niske latencije u okruženjima s više korisnika. Jamče ACID svojstva i podešene su za mnoga mala čitanja i pisanja koja pokreću operativne sustave poput POS i bankarskih aplikacija.
Osobna baza podataka
Osobna baza podataka pohranjuje podatke na jednom računalu za jednog korisnika ili mali tim. Microsoft Pristup i SQLite su tipični primjeri.
Multimodalna baza podataka
Multimodalna baza podataka podržava nekoliko modela podataka - na primjer, dokument, graf i ključ-vrijednost - unutar jednog mehanizma. ArangoDB i Microsoft Azure Cosmos DB su popularne multimodalne opcije.
Dokument/JSON baza podataka
U bazi podataka orijentiranoj na dokumente, svaki zapis je samostalni dokument, obično u JSON-u, BSON-u ili XML-u. Jedan dokument može sadržavati bogato ugniježđene podatke i različita polja, što model čini fleksibilnim za brzo mijenjajuće aplikacije. MongoDB i Couchbase su dobro poznati primjeri.
Hijerarhijska baza podataka
Hijerarhijska baza podataka koristi strukturu stabla s odnosima roditelj-dijete. Čvorovi predstavljaju zapise, a grane polja. Windows Registar uključen Windows XP i IBM IMS su klasični primjeri hijerarhijskih baza podataka.
Mrežna baza podataka
Mrežni DBMS podržava odnose "mnogo-prema-mnogo" između zapisa, stvarajući složenije strukture od hijerarhijskog modela. RDM Server je primjer sustava za upravljanje bazama podataka koji implementira mrežni model.
Komponente baze podataka
Komponente baze podataka.
Svaka baza podataka izgrađena je od pet komponenti koje rade zajedno:
Hardver
Hardver je fizički sloj - računala, I/O uređaji, mediji za pohranu i mreže. On pruža sučelje između baze podataka i ostatka svijeta.
Softver
Softver pokriva sve što upravlja i kontrolira bazu podataka: sam DBMS, operativni sustav, mrežni softver koji omogućuje više korisnika dijeljenje podataka i aplikacije koje čitaju i pišu putem DBMS-a.
Datum
Podaci su sirove činjenice, opažanja, brojevi, simboli i slike koje baza podataka pohranjuje. Sami sirovi podaci su besmisleni; baza podataka ih organizira i obrađuje u korisne informacije.
Procedure
Procedure su dokumentirane upute i pravila koja uređuju kako je baza podataka dizajnirana, kako se koristi i održava. One govore administratorima i korisnicima kako pouzdano pokretati sustav.
Jezik za pristup bazi podataka
Jezik za pristup bazi podataka - najčešće SQL - omogućuje korisnicima i aplikacijama umetanje, ažuriranje, brisanje i ispitivanje podataka. Korisnici izdaju specifične naredbe koje DBMS analizira, planira i izvršava na temeljnoj pohrani.
Što je sustav upravljanja bazom podataka (DBMS)?
A Sustav upravljanja bazom podataka (DBMS) je softverski sloj koji korisnicima omogućuje definiranje, pohranjivanje, dohvaćanje, ažuriranje i zaštitu podataka. DBMS koordinira pristup između mnogih korisnika i aplikacija, provodi integritet i kontrolira tko što može vidjeti ili promijeniti.
DBMS tehnologija nije nova — Charles Bachman Integrirano spremište podataka (IDS), izgrađen u General Electricu početkom 1960-ih, široko se smatra prvim DBMS-om. Od tada se područje razvijalo kroz hijerarhijske, mrežne, relacijske, objektno orijentirane i NoSQL modele, a svaki od njih obraća se sljedećoj generaciji podatkovnih opterećenja.
Povijest sustava za upravljanje bazama podataka
Prekretnice u nastavku tracevolucija tehnologije baza podataka.
- 1960s — Charles Bachman dizajnira prvi DBMS (Integrirano pohranjivanje podataka) u tvrtki General Electric.
- 1968 - IBM brodski informacijski sustav za upravljanje (IMS), jedan od najranijih hijerarhijskih DBMS-ova.
- 1970 — Edgar F. Codd objavljuje „Relacijski model podataka za velike dijeljene banke podataka“ u kojem predstavlja relacijski model.
- 1976 — Peter Chen formalizira model entitet-odnos (ER).
- 1980s - relacijski model postaje dominantna paradigma baze podataka, a SQL je standardiziran.
- 1985 — Čini se da objektno orijentirani DBMS-ovi odgovaraju porastu OOP jezika.
- 1990s — Objektno-relacijske značajke stižu u glavne RDBMS-ove.
- 1992 - Microsoft objavljuje prvu verziju Microsoft Pristup osobnim bazama podataka.
- 1995 — Web aplikacije počinju poticati korištenje baza podataka na internetskoj razini.
- 1997 — XML ulazi u baze podataka i kao format i kao cilj upita.
- 2009 — Pojam NoSQL dobiva trackako pohrane dokumenata, parova ključ-vrijednost i grafova brzo rastu.
- 2010-ih i kasnije — SQL baze podataka izvorne u oblaku i distribuirane (Aurora, Spanner, CockroachDB) pojavljuju se.
Prednosti DBMS-a
Dobro implementiran DBMS pruža organizacijama nekoliko praktičnih prednosti:
- Nudi mnoge tehnike za učinkovito pohranjivanje i dohvaćanje podataka.
- Uravnotežuje potrebe više aplikacija koje dijele iste podatke.
- Pruža jedinstvene administrativne postupke.
- Štiti programere aplikacija od detalja pohrane.
- Pruža integritet i sigurnost podataka putem ograničenja i kontrole pristupa.
- Planira istovremeni pristup tako da samo valjane operacije uspijevaju.
- Smanjuje vrijeme razvoja aplikacija putem usluga koje se mogu ponovno koristiti.
Nedostaci DBMS-a
DBMS model ima i svoje nedostatke:
- Troškovi hardvera i softvera mogu biti znatni.
- Većina sustava je složena, pa je korisnicima i administratorima potrebna obuka.
- Centralizacija podataka u jednu bazu podataka stvara visokovrijednu metu za prekide, oštećenje ili napad.
- Istodobni pristup zahtijeva pažljiv dizajn kako bi se izbjegli gubitak ažuriranja i zastoji.
- DBMS nije dizajniran za teška numerička izračunavanja; specijalizirani alati bolje se nose s tim opterećenjem.

