lundi 1 décembre 2014

Il était une fois

Bases de données : les origines

Il y en a qui les aiment, qui les détestent, qui les considèrent comme de simples dépositaires d’informations et qu’en aucun cas, ils ne doivent pas influencer l’architecture du logiciel qui les utilise. Et enfin, certains les voient comme la véritable contribution à l’informatique mondiale. La vérité est que les bases de données, relationnelles ou pas, sont l’instrument le plus utilisé pour la sauvegarde et le partage des données de manière structurée.
Avec de la patience, nous chercherons à approfondir leurs origines et les acteurs qui ont le plus influencé le développement de cette famille de systèmes informatiques.

La genèse

Notre voyage commence dans les années ‘60, quand le nom « database » a été inventé. Comme bon nombre d’innovations technologiques, l'idée de ce nouvel instrument est né dans le milieu militaire des États-Unis pour pouvoir désigner une collection de données d’informations partagée par les utilisateurs des terminaux.
http://www.journaldunet.com/solutions/0705/070515-histoire-technologies-stockage/images/2.jpg
Exemple de cartes perforées
L'un des défis majeurs de l’époque était de créer une "relation" entre les données, initialement sur cartes perforées et, plus tard, à partir de fichiers plats, non structurés. De plus, les installations étaient sensiblement orientées côté matériel.

Plat et hiérarchique

Le premier modèle de données est représenté par un modèle de données plat, dans lequel les données sont représentées par une simple matrice, lignes et colonnes. C’est un modèle simple qui ne permet pas la liaison directe entre les différentes sources.
Les premières bases de données hiérarchiques sont apparues au début des années ‘60. Les informations étaient découpées en deux niveaux de hiérarchie : un niveau contenait les informations qui sont identiques sur plusieurs enregistrements de la base de données. Le découpage a ensuite été étendu pour prendre la forme d'un diagramme en arbre.

Premiers pas

Dans la seconde moitié des années ‘60, certaines entreprises de premier plan comme Honeywell Corp. et General Electric Corp. commencent à développer leurs propres solutions basées sur le modèle hiérarchique. Chez General Electric, CharlesBachmann est considéré comme l'un des pionniers de la base de données. Il a conçu et guidé le développement de l'IDS(Integrated Data Store), premier SGBD (Système de Gestion de Base de Données). En 1966, IBM lance le développement d'IMS (InformationManagement System), conçu spécifiquement pour soutenir le programme spatial Apollo et développé pour l’IBM System/360.
http://www.hoylen.com/photos/2009-west/06-computer-history/2009-09-25.3956.jpg
IBM System/360
Mais ce ne sont pas seulement les grands du monde électronique à prendre conscience de l'importance et du potentiel de ces nouveaux systèmes. Par exemple, Cincom fut la première société à avoir créé une base de données entièrement indépendante du matériel, appelée TOTALDMBS.

Modèle relationnel

http://en.wikipedia.org/wiki/Edgar_F._Codd#mediaviewer/File:Edgar_F_Codd.jpg
Edgar Frank Codd
(19.08.1923 - 18.04.2003)
En 1969 nait l’idée d’appliquer un modèle mathématique à la relation entre les données, grâce à un groupe de chercheurs d'IBM, mené par EdgarFrank "Ted" Codd, du nom de “relational model” (modèle relationnel). Il s’agit d’une modélisation mathématique fondée sur des règles précises pour l’ensemble entité-relation. Dans le modèle relationnel, la relation désigne l'ensemble des informations d'une table, tandis que l'association, désigne le lien logique existant entre deux tables contenant des informations connexes.

La Révolution

La théorie de Codd est révolutionnaire car elle permet de gérer les données d'une manière impensable jusque-là. Mais la technologie n’est pas encore prête à fournir des systèmes suffisamment puissants pour la mettre en pratique. Il faudra à IBM près de cinq ans pour développer un prototype de base de données relationnelle, définissant, dans l'intervalle, un nouveau langage d’interrogation des données, le SQL (Structured Query Language).
IBM favorisera le projet expérimental System R (ensuite SQL/DS et finalement DB2) conduisant à l'élaboration de nouveaux concepts tels que les vues (1975), les policy security (1975) et les transactions (1976). Toutefois, il n’exploitera pas immédiatement les résultats des recherches du groupe de Codd, les considérants antagonistes au vrai projet commercial d’IBM, soit l’IMS (InformationManagement System).

L’ascension

Celle qui en profitera est une petite start-up, SoftwareDevelopment Laboratories, dirigée par Larry Allison et Robert Miner. Allison avait eu l'occasion d'étudier de manière approfondie la recherche menée par l'équipe de Codd et il en avait immédiatement saisi le grand potentiel commercial. La société changera son nom en Relational Software Inc., avec comme défi, de produire la première base de données relationnelle commerciale. Elle trouvera en la CIA son investisseur le plus important.
Quelques années plus tard Relational Software Inc. deviendra Oracle Corporation, mais ça… c’est une autre histoire.






Sources: