Storia dei database

NB: Questo è la storia super rapida dei database relazionali, e non è ancora completata. L’idea è di confrontare la storia del modello E-R con quello dello sviluppo OOP, evidenziando simmetrie e differenze

Negli anni ’60 i database erano di tipo gerarchico (IMS) poi agli inizi degli anni 70 E.F. Codd iniziò a teorizzare il modello relazionale (E-R) che fu definito nel 1976 da  P. Chen
I primi database software sono sviluppati in questo periodo:

Ingres: Developed at UCB. This ultimately led to Ingres Corp., Sybase, MS SQL Server, Britton-Lee, Wang’s PACE. This system used QUEL as query language.

System R: Developed at IBM San Jose and led to IBM’s SQL/DS & DB2, Oracle, HP’s Allbase, Tandem’s Non-Stop SQL. This system used SEQUEL as query language.

I database che implementano il modello E-R rispettano l’ Information Principle:

The entire information content of the database is represented in one and only one way. Namely as explicit values in column positions (attributes) and rows in relations (tuples) Therefore, there are no explicit pointers between related tables.

Il database “Oracle” nasce nel 1979, e vengono rilasciate circa 10 versioni di Oracle da allora fino ad oggi[1]

E’ importante osservare che già nel 1983 Oracle supportava le transazioni, e ne esisteva una versione per Unix. In quegli stessi anni Commodore commercializza il microcomputer Commodore64, creando i presupposti per la diffusione capillare di macchine a costo basso nella popolazione non tecnica, travestendole da console giochi.

Intorno alla metà degli anni ’80 SQL si diffonde, e nascono i primi prodotti per MS-DOS come DBase III, IV.

Agli inizi del 1990 appare MS Access, il primo sistema visuale consumer per creare DB in poco tempo, e con poco sforzo.

Nel frattempo i principi alla base dei database si diffondono, e nascono i primi database open source: MySQL  nasce ed evolve tra il 1995 ed il 1998, per iniziare a diffondersi due anni più tardi. PostgreSQL inizia il suo cammino open source nel 1994.

Alcune delle aziende sviluppate intorno alla metà degli anni 80 commisero errori madornali, e furono completamente spiazzate da Microsoft.

Per dare un’idea, questo ottimo articolo presenta due tabelle comparative, compilate da tal Jeffrey Tarter. Nel 1984, le più grandi software house erano le seguenti:

Rank Company Annual Revenues
#1 Micropro International $60,000,000
#2 Microsoft Corp. $55,000,000
#3 Lotus $53,000,000
#4 Digital Research $45,000,000
#5 VisiCorp $43,000,000
#6 Ashton-Tate $35,000,000
#7 Peachtree $21,700,000
#8 MicroFocus $15,000,000
#9 Software Publishing $14,000,000
#10 Broderbund $13,000,000

Nel 2001, la classifica cambia completamente faccia, con l’esclusione di Microsoft:

Rank Company Annual Revenues
#1 Microsoft Corp. $23,845,000,000
#2 Adobe $1,266,378,000
#3 Novell $1,103,592,000
#4 Intuit $1,076,000,000
#5 Autodesk $926,324,000
#6 Symantec $790,153,000
#7 Network Associates $745,692,000
#8 Citrix $479,446,000
#9 Macromedia $295,997,000
#10 Great Plains $250,231,000

OOP (abbozzo)

La programmazione OOP ha una storia differente: il primo tentativo di fondere stato e oggetto appare in un contesto dinamico, con Simula, un linguaggio di programmazione multi-tasking che muove i suoi primi passi nel 1967.

SmallTalk 80 prende le idee di Simula ed è il primo linguaggio orientato agli oggetti che supporta erreditarietà singola e tipizzazione dinamica.

Note & Riferimenti