Baza e të dhënave relacionale

Një **bazë të dhënash relacionale** (**RDB**) është një bazë të dhënash e bazuar në modelin relacional të të dhënave, siç është propozuar nga E.F.Codd në vitin 1970. 

Një Sistem i Menaxhimit të Bazës së të Dhënave Relacionale (RDBMS) është një lloj sistemi i menaxhimit të bazës së të dhënave që ruan të dhënat në një format të strukturuar duke përdorur rreshta dhe kolona .

Shumë sisteme të bazave të të dhënave relacionale janë të pajisura me mundësinë e përdorimit të SQL (Structured Query Language) për pyetjet dhe përditësimin e bazës së të dhënave. 

## Historia 
Koncepti i bazës së të dhënave relacionale u përcaktua nga E.F.Codd në IBM në vitin 1970.Codd e prezantoi termin *relacional* në punimin e tij kërkimor "A Relational Model of Data for Large Shared Data Banks". kështu që termi gradualisht ka filluar të përshkruajë një klasë më të gjerë të sistemeve të bazave të të dhënave, të cilat të paktën:

# Paraqesin të dhënat te përdoruesi si relacione(një paraqitje në formë tabelare, d.m.th. si një *koleksion* tabelash ku secila tabelë përbëhet nga një grup rreshtash dhe kolonash);
# Sigurojnë operatorë relacionalë për të manipuluar të dhënat në formë tabelare.

Në vitin 1974, IBM filloi të zhvillonte System R, një projekt kërkimor për të zhvilluar një prototip të RDBMS-së. Sistemi i parë i shitur si RDBMS ishte Multics Relational Data Store (qershor 1976). &#x5B; ''* &#x5D; Oracle u publikua në vitin 1979 nga Relational Software, tani Oracle Corporation. Ingres dhe IBM BS12 pasuan. Shembuj të tjerë të një RDBMS përfshijnë IBM Db2, SAP Sybase ASE dhe Informix.Në vitin 1984, filloi zhvillimi i RDBMS-it të parë për Macintosh, me emrin e koduar Silver Surfer, dhe u publikua në vitin 1987 si 4th Dimension i njohur sot si 4D.

Sistemet e para që ishin zbatime relativisht besnike të modelit relacional ishin nga:

* Universiteti i Michigan – Mikro DBMS (1969)
* Instituti i Teknologjisë i Massachusetts (1971)
* Qendra Shkencore e IBM në UK në Peterlee – IS1 (1970–72), dhe pasuesi i tij, PRTV (1973–79).

Përkufizimi më i zakonshëm i një RDBMS është një produkt që paraqet një pamje të të dhënave si një koleksion rreshtash dhe kolonash, edhe nëse nuk bazohet në mënyrë strikte në teorinë relacionale.Sipas këtij përkufizimi, produktet RDBMS zakonisht zbatojnë disa, por jo të gjitha, nga 12 rregullat e Codd-it.

Një qasje tjetër argumenton se nëse një bazë të dhënash nuk i zbaton të gjitha rregullat e Codd-it (ose kuptimin aktual mbi modelin relacional, siç shprehet nga Christopher J. Date, Hugh Darwen dhe të tjerë), atëherë ajo nuk është relacionale. Ky këndvështrim, i ndarë nga shumë teoricienë dhe ndjekës të rreptë të parimeve të Codd-it, do të skualifikonte shumicën e DBMS-ve si jo relacionale. Për sqarim, ata shpesh i referohen disa RDBMS-ve si *sisteme të menaxhimit të bazave të të dhënave vërtet relacionale* (TRDBMS), ndërsa të tjerët i quajnë *sisteme pseudo-relacionale të menaxhimit të bazave të të dhënave* (PRDBMS). &#x5B; *'' &#x5D;

Që nga viti 2009, shumica e DBMS-ve relacionale komerciale përdorin SQL si gjuhën e tyre për pyetje (query language).

Janë propozuar dhe zbatuar edhe gjuhë alternative për pyetje, veçanërisht implementimi i Ingres QUEL para vitit 1996.

## Modeli relacional 
Një model relacional organizon të dhënat në një ose më shumë tabela (ose "relacione") kolonash dhe rreshtash, me një çelës unik që identifikon secilin rresht. Rreshtat quhen gjithashtu regjistra ose tuples. Kolonat quhen gjithashtu atribute. Në përgjithësi, çdo tabelë/relacion përfaqëson një "lloj entiteti" (siç është klienti ose produkti).Rreshtat përfaqësojnë instanca të atij lloji entiteti (siç është "Lee" ose "chair") dhe kolonat përfaqësojnë vlerat e atribuara asaj instance (siç është adresa ose çmimi).

Për shembull, çdo rresht i një tabele klase korrespondon me një klasë, dhe një klasë korrespondon me shumë studentë, kështu që marrëdhënia midis tabelës së klasës dhe tabelës së studentëve është "një me shumë"

## Çelësat 
Çdo rresht në një tabelë ka çelësin e vet unik. Rreshtat në një tabelë mund të lidhen me rreshtat në tabela të tjera duke shtuar një kolonë për çelësin unik të rreshtit të lidhur (kolona të tilla njihen si çelësa të huaj ). Codd tregoi se marrëdhëniet e të dhënave me kompleksitet arbitrar mund të përfaqësohen nga një grup i thjeshtë konceptesh.  

## Procedurat e ruajtura 
Një pjesë e programimit brenda një RDBMS kryhet duke përdorur procedura të ruajtura (SP).Shpesh procedurat mund të përdoren për të reduktuar ndjeshëm sasinë e informacionit të transferuar brenda dhe jashtë një sistemi.Për siguri më të madhe, dizajni i sistemit mund të japë akses vetëm në procedurat e ruajtura dhe jo direkt në tabela.Procedurat themelore të ruajtura përmbajnë logjikën e nevojshme për të futur të dhëna të reja dhe përditësuar të dhënat ekzistuese.Procedurat më komplekse mund të shkruhen për të zbatuar rregulla dhe logjikë shtesë që lidhen me përpunimin ose përzgjedhjen e të dhënave.

## Terminologjia 
djathtas|parapamje|350x350px|Terminologjia e bazës së të dhënave relacionale
Baza e të dhënave relacionale u përcaktua për herë të parë në qershor të vitit 1970 nga Edgar Codd, nga Laboratori Kërkimor San Jose i IBM-it. Një çelës primar specifikon në mënyrë unike një tuple brenda një tabele. Ndërsa atributet natyrore (atributet e përdorura për të përshkruar të dhënat që regjistrohen) ndonjëherë janë çelësa të mirë primarë, shpesh përdoren çelësa zëvendësues në vend të tyre. Një çelës zëvendësues është një atribut artificial i caktuar një objekti që e identifikon atë në mënyrë unike (për shembull, në një tabelë me informacion rreth nxënësve në një shkollë, të gjithëve mund t'u caktohet një ID studenti për t'i dalluar ata). Çelësi zëvendësues nuk ka kuptim të brendshëm (të natyrshëm), por është i dobishëm për shkak të aftësisë së tij për të identifikuar në mënyrë unike një tuple. Një tjetër dukuri e zakonshme, veçanërisht në lidhje me kardinalitetin N:M është çelësi i përbërë . Një çelës i përbërë është një çelës i përbërë nga dy ose më shumë atribute brenda një tabele që së bashku identifikojnë në mënyrë unike një rekord. RDBMS është një zgjerim i këtij akronimi, i cili përdoret ndonjëherë kur baza e të dhënave në themel ështe relacionale.

Një përkufizim alternativ për një **sistem për menaxhimin e bazës së të dhënave relacionale** është një sistem menaxhimi të bazës së të dhënave (DBMS) i bazuar në modelin relacional . Shumica e bazave të të dhënave që përdoren gjerësisht sot bazohen në këtë model.

RDBMS-të kanë qenë një opsion i zakonshëm për ruajtjen e informacionit në bazat e të dhënave që përdoren për të dhënat financiare, informacionet e prodhimit dhe logjistikës, të dhënat e personelit dhe aplikacione të tjera që nga vitet 1980. Bazat e të dhënave relacionale shpesh kanë zëvendësuar bazat e të dhënave hierarkike të trashëguara dhe bazat e të dhënave të rrjetit, sepse RDBMS-të ishin më të lehta për t'u implementuar dhe administruar. Megjithatë, të dhënat e ruajtura në mënyrë relacionale morën vazhimisht sfida te pasuksesshme, nga sistemet për menaxhimin e bazave të të dhënave me objekteve në vitet 1980 dhe 1990 (të cilat u prezantuan si një përpjekje për të adresuar të ashtuquajturën object–relational impedance mismatch midis bazave të të dhënave relacionale dhe programeve të aplikacioneve të orientuara nga objektet), si dhe nga sistemet për menaxhimin e bazave të të dhënave XML në vitet 1990. Megjithatë, për shkak të zgjerimit të teknologjive, siç është shkallëzimi horizontal i grupeve kompjuterike, bazat e të dhënave NoSQL janë bërë kohët e fundit të njohura si një alternativë ndaj bazave të të dhënave RDBMS.

## Bazat e të dhënave relacionale të shpërndara 
Arkitektura e Bazës së të Dhënave Relacionale të Shpërndarë (DRDA) u projektua nga një grup pune brenda IBM-së gjatë periudhës 1988 deri në 1994. DRDA u mundëson bazave të të dhënave relacionale të lidhura në rrjet të bashkëpunojnë për të përmbushur kërkesat SQL. Mesazhet, protokollet dhe komponentët strukturorë të DRDA-s përcaktohen nga Arkitektura e Menaxhimit të të Dhënave të Shpërndara .

## Lista e motorëve të bazës së të dhënave 
Sipas DB-Engines, në dhjetor 2024 sistemet më të njohura në faqen e internetit db-engines.com ishin:

# Oracle Database
# MySQL
# Microsoft SQL Server
# PostgreSQL
# Snowflake
# IBM Db2
# SQLite
# Microsoft Access
# Databricks
# MariaDB

Sipas kompanisë kërkimore Gartner, në vitin 2011, pesë shitësit kryesorë të bazave të të dhënave relacionale të softuerëve të patentuar sipas të ardhurave ishin Oracle (48.8%), IBM (20.2%), Microsoft (17.0%), SAP duke përfshirë Sybase (4.6%) dhe Teradata (3.7%).

## Shih edhe 
* Comparison of relational database management systems
* Database schema
* Datalog
* Data warehouse
* List of relational database management systems
* Object database (OODBMS)
* Online analytical processing (OLAP) dhe ROLAP (Relational Online Analytical Processing)
* Relational transducer
* Snowflake schema
* SQL
* Star schema

## Referime 
## Referime 
*