Relacijska algebra u bazama podataka: operacije, primjeri

Sadržaj:

Relacijska algebra u bazama podataka: operacije, primjeri
Relacijska algebra u bazama podataka: operacije, primjeri
Anonim

Općenito, sustavi baze podataka opremljeni su jezikom upita koji svojim korisnicima može pomoći u ispitivanju instanca. Postoje dvije takve vrste - relacijska algebra i relacijski račun. Prvi je proceduralni jezik upita koji uzima instance odnosa kao ulaz i kao izlaz daje primjere odnosa. Za to se koristi unarni ili binarni račun. Relacijska algebra se izvodi rekurzivno, a srednji rezultati se tretiraju kao relacije.

Relacijska algebra
Relacijska algebra

kartezijanski proizvod (Χ)

Kombinira informacije iz dva različita odnosa u jedan.

Notacija – r Χ s, gdje su r i s omjeri i njihov izlaz bit će definiran kao

r Χ s={qt | q ∈ r i t ∈ s}.

Zaključak. Postavlja odnos koji prikazuje sve knjige i članke napisane uz vodič.

Operacija preimenovanja (ρ).

Relacija relacijske algebre su rezultati, ali bez ikakvog imena. Operacija preimenovanja omogućuje vam promjenu izlazne vrijednosti, označene malim grčkim slovom ρ.

Oznaka – ρ x (E), gdje je rezultat izraza E pohranjen s imenomx.

Dodatne operacije:

  • postavi raskrižje;
  • zadatak;
  • prirodna veza.

Relacijski račun

Ovo je neproceduralni jezik upita, što znači da vam govori što trebate učiniti, ali ne objašnjava kako ga implementirati. Relacijski račun postoji u dva oblika:

  • korelacijski račun torke;
  • filtriranje raspona varijabli.

Oznaka - T/State: Vraća sve T torke koji zadovoljavaju uvjet. Proizlaziti. Vraća torke s imenom. TRC se može kvantificirati. Možete koristiti egzistencijalne (∃) i univerzalne kvantifikatore (∀). Zaključak. Gornji upit će dati isti rezultat kao i prethodni.

Relacijski račun domene DRC

Varijabla filtera koristi domenu atributa umjesto vrijednosti tuple integer (kao što je učinjeno u gore spomenutom TRC-u).

Notacija – {a 1, a 2, a 3, …, a | P (a 1, a 2, a 3, …, a)}, gdje su a1, a2 atributi, a P označava formule izgrađene s internim vrijednostima.

Zaključak. Postavlja članak, stranicu i temu iz relacije TutorialsPoint, gdje je predmet baza podataka.

Poput TRC-a, DRC se također može napisati korištenjem egzistencijalnih i univerzalnih kvantifikatora. DRC također uključuje operatore relacijske algebre. Snaga izraza izračuna, računice i korelacije odnosa među točkama je ekvivalentna.

relacijskimodel podataka relacijske algebre
relacijskimodel podataka relacijske algebre

Varijacije i sheme relacijskog računa i algebre

Model hitne pomoći, kada se konceptualizira u dijagramima, pruža dobar pregled bitnih odnosa koje je lakše razumjeti. Shematski prikazi mogu se mapirati u relacijsku shemu, tj. mogu se kreirati zajedno. Nije moguće uvesti sva ER ograničenja u relacijski model, ali se može generirati približna struktura. Postoji nekoliko dostupnih procesa i algoritama za pretvaranje grafikona u ovaj sustav. Neki od njih su automatizirani, dok se drugi kreiraju ručno. Karte hitne pomoći uglavnom se sastoje od sljedećih kriterija:

  • entitet i njegovi atributi;
  • link, što je veza između gornjih vrijednosti.

Usporedba objekata i odnosa odvija se na različite načine i sheme. Na primjer, entitet je objekt stvarnog svijeta s nekim atributima. Proces uparivanja, algoritam je sljedeći:

  • kreirajte tablicu za svaki objekt;
  • atributi bi trebali postati polja tablice s odgovarajućim vrstama podataka;
  • deklarirajte primarni ključ.

Odnos je povezanost između entiteta. Proces sastavljanja je sljedeći:

  • kreirajte tablicu za odnose;
  • dodajte primarne ključeve svih sudjelujućih entiteta kao polja tablice s odgovarajućim vrstama podataka;
  • ako relacija ima bilo koji atribut, postavite svaki atribut kao polje tablice;
  • kombinirajte primarni ključ koji čini sveostalo za objekte koji sudjeluju;
  • specificirajte sva ograničenja stranog ključa.

Prikaz slabih skupova i hijerarhijskih objekata odvija se prema određenom sustavu. Prije svega, potrebno je razumjeti bitne temelje i definicije ovih vrijednosti. Slab skup značajki je onaj koji nema pridruženog primarnog ključa. Proces prikaza je sljedeći:

  • kreirajte tablicu za slab skup objekata;
  • dodaj sve atribute u shemu kao polje;
  • navedite primarni ključ za identifikaciju;
  • postavite sva ograničenja stranog ključa.

Prikaz hijerarhijskih objekata na temelju specijalizacije ili generalizacije jezika relacijske algebre javlja se u obliku sekvencijalnih entiteta. Algoritam je sljedeći:

  • kreirajte tablice za sve objekte više niže razine;
  • dodaj primarne ključeve;
  • na niskoj razini implementirajte sve ostale atribute objekata niže razine;
  • deklarirajte primarne ključeve tablice;
  • postavite ograničenja stranog ključa.
Operacije relacijske algebre
Operacije relacijske algebre

Postojeće opcije za opisivanje, pohranjivanje, promjenu informacija

SQL je programski jezik za relacijske baze podataka. Razvija se preko algebre i korelacijskog računa torki. SQL dolazi kao paket sa svim glavnim DBMS distribucijama. Sadrži podatke i jezike za manipuliranje njima. Korištenjem svojstava definicije podataka SQL relacijske algebre možete dizajnirati i modificirati shemu baze podataka,dok svojstva upravljanja i prilagodbe, kao i promjene podataka, omogućuju pohranjivanje i dohvaćanje informacija instaliranih u sustavu. Koristi sljedeći skup naredbi za definiranje strukture i sustava:

  • kreira nove baze podataka, tablice i poglede iz DBMS-a.
  • izbacuje naredbe.
  • mjenja shemu baze podataka.
  • ova naredba dodaje atribut objektu niza.

SQL je opremljen jezikom za upravljanje podacima (DML). Modificira instancu baze podataka umetanjem, ažuriranjem i brisanjem informacija. DML je odgovoran za promjenu svih podataka. SQL sadrži sljedeći skup naredbi u odjeljku DML:

  1. SELECT je jedna od osnovnih naredbi upita. Analogno je operaciji projekcije relacijske algebre. Odabire atribute na temelju uvjeta opisanog u klauzuli WHERE.
  2. FROM - Ovaj odjeljak uzima ime kao argument iz kojeg se atributi trebaju odabrati/projicirati. U slučaju da je navedeno više od jednog imena, ova stavka odgovara kartezijanskom proizvodu.
  3. WHERE - Ovaj odjeljak specificira predikat ili uvjete koji moraju biti ispunjeni da bi se kvalificirao projicirani atribut.

Postoje i naredbe:

  • insert;
  • promjena vrijednosti;
  • izbriši.
Relacijska algebra u bazama podataka
Relacijska algebra u bazama podataka

Stvaranje upita relacijske algebre

Prilikom konstruiranja pretraživanja, zadatak je pronaći strukturu operacija koja će dovesti do ispravnog rezultata. Osnovne operacije relacijske algebre su jednostavneoperacije s jednom ili dvije relacije kao operandima. Kombinirani učinci niza određuju konačni rezultat. Budući da je sustav relacijske algebre u bazama podataka prilično jednostavan, mnogi međurezultati se mogu dobiti prije postizanja konačnog izlaza, oni se također koriste kao operandi koji proizvode nove primljene podatke.

Za većinu operatora, redoslijed upita i njihovo izvršenje nije bitan, što znači da se isti izlaz može postići oblikovanjem i kombiniranjem međupodataka na različite načine. U praksi je pretraživanje baze podataka prilično jednostavno. Sustav za izvođenje operacija i međurezultata određuje optimizator upita. Prilikom formiranja pitanja, zahtjeva, trebate

najprije odabrati koji su odnosi potrebni za postizanje odgovora, a zatim specificirati operacije i međurezultate. Struktura upita relacijske algebre u bazi rezultata može se predstaviti kao dijagram. Optimizatori zahtjeva pokušavaju organizirati izvršenje što je učinkovitije. U praksi to obično znači da nastoje što je brže moguće minimizirati međurezultate. Uobičajeni primjeri relacijske algebre pomoći će u tome.

Primjer 1.

Potrebne informacije: Informacije o vozilima iz 1996. godine gdje su otkriveni nedostaci tijekom inspekcije za 1999.

Prvo se prikazuju informacije o automobilima kako bi se razumjele vrijednosti svih atributa odnosa. Podaci o inspekcijama pohranjuju se u tablici "Inspekcija" i ako se otkrijukvarova, one se bilježe u tablici "Problem". Stoga su ove tri tablice potrebne za dobivanje traženih informacija.

Zanimljivi su samo automobili iz 1996. godine. Raspon modela vozila predstavljen je kao vrijednost postavljenog atributa u retku tablice s podacima o vozilu. Prvi međurezultat sastoji se od tuple koji predstavljaju varijante iz 1996.

Dakle, potrebni su samo redovi koji pokrivaju ovo razdoblje. Morate koristiti odabir da biste ih izdvojili. Sada postoje automobili i pregledi koji su bili potrebni. Nizovi se zatim spajaju pomoću operacije spajanja. Moraju biti spojeni zajedničkim brojem registra, budući da je to jedini zajednički stupac, koristi se prirodni spoj.

Da biste saznali je li bilo problema tijekom provjera, morate povezati linije problema s čekom. Nakon povezivanja kontrolnih redova s automobilima, ovaj rezultat možete povezati s tablicom grešaka. Pripadnost se mora temeljiti na zajedničkom registracijskom broju i potvrđenom datumu. Ovo su jedini uobičajeni stupci u tablicama, pa se koristi prirodni spoj.

Relacijska algebra je jezik
Relacijska algebra je jezik

Opcije izračuna bez međurezultata

Primjer 2.

Zahtijevane informacije: Ime vozača za model iz 1995. ili starija vozila koja nisu testirana za 2000. Naziv se nalazi u tablici "Vozač". Agencije za provođenje zakona opisane su u tablici "Inspekcija i automobili u kantini". TakoDakle, ove tri tablice su potrebne. Prvo morate saznati automobile koji nisu pregledani za 2000. godinu. Ovaj problem nije moguće riješiti samo pregledima navedenim u tablici, budući da ona sadrži podatke o onim pregledima koji su napravljeni, a ne i onima koji nisu provedeni. Ovaj problem se rješava traženjem komplementarnih automobila koji su provjereni prije 2000. godine. Zapravo, potrebni su samo njihovi registracijski brojevi.

Postoje i drugi primjeri osim gornjih koji pokazuju kako promijeniti ili pronaći informacije. Varijante upita mogu se optimizirati pomoću posebnih operacija. Zapravo, kako bi pretraživanje i pronalaženje podataka bilo što jednostavnije i jednostavnije, postoji model relacijskog računa.

Gdje su informacije osigurane i zaštićene

Relacijski model podataka relacijske algebre pohranjen je u formatima datoteka koji sadrže zapise. Na fizičkoj razini, stvarne informacije su fiksirane u elektromagnetskom formatu na nekom uređaju. Ovi uređaji za pohranu mogu se podijeliti u tri kategorije:

  1. Primarno. Ova kategorija uključuje memoriju koja je izravno dostupna CPU-u. Registri, brza memorija (cache) i glavna memorija (RAM) su izravno dostupni centrali, budući da se svi nalaze na matičnoj ploči ili čipsetu. Ova pohrana je obično vrlo mala, ultra-brza i nestabilna. Za održavanje stanja potrebno je stalno napajanje. Ako ne uspije, svi njegovi podaci su izgubljeni.
  2. Sekundarno. Koristi se za pohranjivanje informacija za budućnostkoristiti ili sigurnosno kopirati. Uključuje memorijske uređaje koji nisu dio procesorskog čipseta ili matične ploče, kao što su magnetski diskovi, optički diskovi (DVD, CD-ovi, itd.), tvrdi diskovi, flash pogoni i magnetske vrpce.
  3. Tercijarni. Koristi se za pohranu velikih količina podataka. Budući da su takvi uređaji za pohranu vanjski u odnosu na računalni sustav, oni su najsporiji u smislu brzine. Ovi gadgeti za pohranu uglavnom se koriste za sigurnosno kopiranje cijelog sustava. Optički diskovi i magnetske vrpce naširoko se koriste kao tercijarna pohrana.

Posebne operacije relacijske algebre važne su za učinkovitost upita.

Struktura pohrane

Računalni sustav ima dobro definiranu memorijsku hijerarhiju. CPU ima izravan pristup glavnom sustavu kao i ugrađenim registrima. Vrijeme pristupa glavnoj memoriji očito je manje od brzine procesora. Kako bi se minimizirala ova razlika, uvodi se predmemorija. Predmemorija pruža najbrža vremena pristupa i sadrži podatke kojima CPU najčešće pristupa.

Memorija s najbržim pristupom je najskuplja. Veliki uređaji za pohranu pružaju malu brzinu i jeftiniji su, ali mogu pohraniti ogromne količine podataka u usporedbi s procesorskim registrom ili predmemorijem.

Magnetski i tvrdi diskovi najčešći su sekundarni uređaji za pohranu podataka u današnjim računalnim sustavima. Zovu se magnetskimetalna baza. Ovi diskovi su postavljeni okomito na vreteno. Glava za čitanje/pisanje pomiče se između njih i koristi se za magnetiziranje ili uklanjanje takve točke ispod. Može se prepoznati kao 0 (nula) ili 1 (jedan).

Tvrdi diskovi su formatirani u dobro definiranom redoslijedu za učinkovito pohranjivanje podataka. Ima mnogo koncentričnih krugova zvanih staze. Svaka staza je dalje podijeljena na sektore, obično pohranjujući 512 bajtova podataka.

SQL relacijska algebra
SQL relacijska algebra

Operacije s datotekama

Operacije na jezičnom sustavu relacijske algebre i njegovoj bazi podataka mogu se općenito klasificirati u dvije kategorije:

  • ažuriraj;
  • traži.

Prva kategorija mijenja vrijednosti podataka umetanjem, brisanjem ili ažuriranjem. S druge strane, operacije pretraživanja ne uređuju informacije, već ih izdvajaju nakon izbornog uvjetnog filtriranja. U obje vrste operacija selekcija igra značajnu ulogu. Osim stvaranja i brisanja datoteke, na njoj se može izvesti nekoliko operacija:

  1. Otvoreno - postoji u jednom od dva načina čitanja ili pisanja. U prvom slučaju, operativni sustav nikome ne dopušta promjenu podataka. Drugim riječima, podaci se samo čitaju. Datoteke otvorene u načinu čitanja mogu se dijeliti između više objekata. Način pisanja omogućuje promjenu podataka. Datoteke se mogu čitati, ali se ne mogu dijeliti.
  2. Zatvori je najvažnija operacija s gledišta operativnog sustava jer uklanja sva zaključavanja(ako je u dijeljenom načinu), sprema podatke (ako su izmijenjeni) na sekundarni medij i oslobađa sve međuspremnike i rukovaoce povezane s datotekom.
  3. Indeksiranje je metoda informacijske strukture za učinkovito izdvajanje zapisa iz datoteka sustava na temelju nekih atributa gdje je sustav implementiran. Definirano na temelju atributa.

Indeksiranje može biti sljedećeg tipa:

  1. Primarni je definiran u naručenoj podatkovnoj datoteci. Informacijska datoteka organizirana je u ključnom polju.
  2. Sekundarni indeks generiran iz polja koje je ključ kandidata i ima jedinstvenu vrijednost u svakom zapisu ili ne ključ s dupliciranim vrijednostima.
  3. Grupiranje je definirano u naređenoj podatkovnoj datoteci, u polju bez ključa.
relacijski algebra relacijski račun
relacijski algebra relacijski račun

Sustav za upravljanje bazom podataka ili DBMS odnosi se na tehnologiju za pohranu i dohvaćanje korisničkih informacija s maksimalnom učinkovitošću zajedno s odgovarajućim sigurnosnim mjerama. Pomnije ispitivanje ovog pitanja dovodi do zaključka da je relacijske algebre jezik operatora koji odnose uzimaju kao argumente i vraćaju ih kao rezultat.

Preporučeni: