See also ebooksgratis.com: no banners, no cookies, totally FREE.

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
Privacy Policy Cookie Policy Terms and Conditions
RDBMS - Wikipedia

RDBMS

Da Wikipedia, l'enciclopedia libera.

Il termine Relational database management system (RDBMS) (sistema relazionale per la gestione di basi di dati) indica un database management system basato sul modello relazionale, ed è stato introdotto da Edgar F. Codd. Alternativamente ai RDBMS, anche se meno diffusi a livello commerciale, esistono sistemi di gestione di basi di dati che implementano modelli dei dati alternativi a quello relazionale: gerarchico, reticolare e ad oggetti.

Indice

[modifica] Storia del termine

Codd ha introdotto il termine nel testo del seminario "A Relational Model of Data for Large Shared Data Banks" (un modello relazionale di dati per gestire grandi banche dati condivise). In questo scritto ed in altri successivi, Codd definì cosa intendeva per relazionale. Una nota definizione di ciò che costituisce un RDBMS è data dalle 12 regole di Codd. Tuttavia, molte delle prime implementazioni del modello relazionale non erano conformi a tali regole, per cui il termine venne gradualmente cambiato fino a descrivere una più ampia classe di sistemi di basi di dati. I requisiti minimi per cui quei sistemi venissero chiamati RDBMS erano:

  • deve presentare i dati all'utente sotto forma di relazioni (una presentazione a tabelle può soddisfare questa proprietà)
  • deve fornire operatori relazionali per manipolare i dati in forma tabellare

[modifica] Uso corrente del termine

Non c'è un accordo unanime su ciò che può chiamarsi un DBMS "relazionale", e le definizioni più popolari sono piuttosto imprecise. Alcuni sostengono che perfino presentare una visione dei dati sotto forma di righe e colonne sia sufficiente a qualificare un RDBMS.

Molti teorici dei modelli di dati sostengono invece che se un database non implementa tutte le regole di Codd, non può dirsi relazionale. Questa definizione lascia fuori molti dei database in commercio, non considerandoli "veramente-relazionali" (TRDBMS), ma piuttosto "pseudo-relazionali" (PRDBMS). I critici di questa posizione sostengono che è eccessivamente rigida, notando che il solo uso dell'SQL (Structured Query Language) sarebbe di per sé sufficiente a violare le regole di Codd.

Al giorno d'oggi, la scelta di un RDBMS o di un altro è diventata molto meno dipendente dalla aderenza o meno a tutte le 12 regole di Codd, e molto più dipendente dal costo totale di utilizzo che hanno per le organizzazioni di gestione dei dati. Questo oltre ad essere un peccato, è ironico, dato che soddisfare gli appropriati criteri relazioni renderebbe i prodotti più affidabili, consistenti, produttivi e aumenterebbe le prestazioni, e quindi porterebbe alla fine ad un minore costo di utilizzo.

[modifica] Cosa NON è un database relazionale

Oggi non esiste ancora uno standard che definisca esaurientemente il significato del termine "relazionale" riferito ai database, tuttavia si è concordi nell'affermare quanto segue: un database non può essere detto relazionale solo perché ci sono relazioni fra tabelle. Dal punto di vista matematico una relazione è un insieme formato da elementi distinti fra loro; ciascun elemento è una n-upla dove ciascuna delle n componenti dell'elemento è presa da un determinato dominio (numeri interi, numeri decimali, stringhe, caratteri...). A livello di database si riprende (con poche e sottili differenze) la definizione matematica di relazione. Un database è relazionale se basato su tabelle: la tabella in effetti rappresenta una relazione. A conferma di ciò il fatto che il modello relazionale nasce nel 1970 per opera di Codd, mentre le "relazioni" fra tabelle (implementate ad esempio mediante una foreign key) sono un'aggiunta al modello relazionale, tanto che la possibilità di CREARE a livello software delle "connessioni" fra due o più tabelle è stata messa a disposizione dai RDBMS solo un paio di decenni dopo.

Inoltre aderendo alla errata teoria che "un database è relazionale perché ci sono relazioni fra tabelle" si giunge ad una fondamentale contraddizione, ovvero che un database in cui non sono presenti vincoli interrelazionali (ovvero "connessioni" fra tabelle diverse) non può essere un database relazionale. Dato che però i database relazionali nascono ben prima della possibilità di esplicitare i vincoli interrelazionali (in particolare il vincolo di integrità referenziale), si giunge all'assurda conclusione che Codd avrebbe preso un buco nell'acqua perché il modello di database da lui progettato non faceva uso di tali vincoli e quindi non era relazionale. Contemporaneamente, però, tutti sono concordi nell'attribuire a lui la paternità del modello relazionale. È impossibile dunque che Codd contemporaneamente SIA e NON SIA il padre di tale modello. La spiegazione di questa contraddizione è che Codd è effettivamente il padre del modello relazionale inteso come modello basato su relazioni matematiche, ovvero su tabelle.

[modifica] Alcuni DBMS liberi o open source

[modifica] Alcuni DBMS commerciali

[modifica] Voci correlate


aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -