Nasce il Modello Relazionale

Nascita ed evoluzione dei Database Relazionali. Ripercorriamo la storia dagli anni '50 all'arrivo delle soluzioni commerciali.

Avatar di Tom's Hardware

a cura di Tom's Hardware

Nasce il Modello Relazionale

Nel 1969, Codd pubblica, internamente ad IBM, un documento riservato con il quale illustra in dettaglio la propria soluzione di archiviazione, ormai matura per sostituire, oltre il modello flat, anche la memorizzazione in forma gerarchica (hierarchical model), sostanzialmente una struttura dati ad albero, e navigazionale (network model), in cui la cui struttura è assimilabile a quella di un grafo.

Il matematico evidenzia come la necessità di superare i precedenti modelli sia dovuta, in particolar modo, al fatto che essi sono fortemente legati all'hardware su cui vengono realizzati, mentre è necessario realizzare una soluzione che consenta un'interrogazione basata su "ciò che si sta cercando" piuttosto che "su come sono memorizzati".

Hierarchical and Network model

A tal proposito, W. C. McGee dell'IBM Data Processing Division Laboratory afferma in un passaggio dell'articolo Data Base Technology: "In the mid-1960s, a number of investigators began to grow dissatisfied with the hardware orientation of then extant data structuring methods, and in particular with the manner in which pointers and similar devices for implementing entity associations were being exposed to the users".

La soluzione proposta da Codd, però, non trova un grande riscontro in IBM, ritenendola, nelle migliori ipotesi, una "curiosità intellettuale", nelle peggiori, un pericolo per le soluzioni esistenti, in particolare per le revenue derivanti dal sistema gerarchico IMS/DB. Il risultato della ricerca/sperimentazione viene comunque resa pubblica grazie all'articolo A Relational Model of Data for Large Shared Data Banks, chiaramente realizzato dallo stesso Codd, in cui si legge:

"It provides a means of describing data with its natural structure only--that is, without superimposing any additional structure for machine representation purposes.  Accordingly, it provides a basis for a high level data language which will yield maximal independence between programs on the one hand and machine representation on the other". (Codd 1970)

Bisogna aggiungere che un'ulteriore barriera all'adozione del modello relazione è rappresentata dall'hardware del periodo, non ancora sufficientemente potente da poterlo supportare vista anche la complessità di implementazione. IBM impiega quasi 5 anni per sviluppare un primo prototipo di database relazionale, venendo anticipata dall'Università di Berkeley che comincia a lavorare su INGRES, temporalmente il primo database relazionale.

Le relative attività cominciano nel 1973 all'interno del più ampio progetto System R, da cui, paradossalmente, Codd viene escluso. System R (poi SQL/DS ed infine DB2) porta allo sviluppo di concetti come le Viste (1975), le Policy di Security (1975) e le Transazioni (1976).

Don Chamberlin

Tra i membri del Team figurano, invece, Ray Boyce e Don Chamberlin che realizzano il linguaggio SQL (Structured Query Language, chiamato inizialmente SEQUEL). In particolare Chamberlin commenta così la sua esperienza:

"...since I'd been studying CODASYL (the language used to query navigational databases), I could imagine how those queries would have been represented in CODASYL by programs that were five pages long, that would navigate through this labyrinth of pointers and stuff. Codd would sort of write them down as one-liners. ... They weren't complicated at all. I said, 'Wow.' This was kind of a conversion experience for me. I understood what the relational thing was about after that."

👋 Partecipa alla discussione! Scopri le ultime novità che abbiamo riservato per te!

0 Commenti

⚠️ Stai commentando come Ospite. Vuoi accedere?


Questa funzionalità è attualmente in beta, se trovi qualche errore segnalacelo.