Dans les années 60s, Codd travaille chez IBM. Les entreprises qui achètent leurs International Business Machines veulent automatiser la compta, la gestion de clients, de stock, la planification, etc. Pensez Odoo, rien n'a changé (voir 1er commentaire).

Contexte
L'informatique business c'est beaucoup d'information. Des données, des liens entre elles, et beaucoup de rapports à produire. La manière dont on programme cela ennuie Cood:
-
C'est lent, c'est cher. Chaque rapport nécessite un développeur et plusieurs jours.
-
Ces programmes sont hyper dépendants du matériel. Passez les données d'une bande magnétique à un disque dur et il faut réécrire tout le programme. Or les supports de stockage évoluent énormément.
-
De même pour l'organisation des données: ajoutez un champ ou renversez un ordre alphabétique, et vous pouvez tout réécrire. Or les besoins business évoluent constamment.
Codd et sa vision
Codd est mathématicien.
Les maths, c'est l'abstraction.
L'abstraction c'est oublier le détail et garder l'essentiel.
Codd fait parler son génie, et écrit (en, 1970):
- Représentons toutes les informations de la même manière: des relations mathématiques, qu'on peut représenter par des tables.
- Plus de fichiers, de dossiers, de pointeurs, de curseurs, de B-tree, etc.
- Voici une théorie pour manipuler et interroger ces relations: l'agèbre relationnelle.
- Inventons un langage déclaratif qui implémente cette théorie, qu'il soit utilisable par les gens du business.
De la vision à la réalité
La suite de l'histoire est plus complexe: conservatisme et gros débats sur la faisabilité et les performances. Cela n'empêche pas les investissements dans les premiers systèmes de bases de données relationnelles:
- System R puis DB2 (👋 IBM)
- Ingres à Berkeley, qui donnera PostgreSQL (👋 Odoo)
- Enorme succès de Relational Software (👋 Oracle)
- De même que SQL Server (👋 Microsoft) et Sybase (👋 SAP)
- et beaucoup plus tard MySQL, MSAccess, SQLite, etc.
SQL, le "langage qui implémente la vision" devient standard ISO en 1987. Sa conception est plutôt râtée. Cela ne l'empêchera pas de s'installer durablement, surtout chez les développeurs et data analysts, moins chez les gens du business. Le mouvement NoSQL qui rejette les bases de données relationnelles au début des années 2010 n'y changera rien. On ne remplace pas une théorie solide facilement: les maths posent une fondation, même si le langage est moyen.
Quant au "utilisable par les gens du business", on repassera. A part les pivot tables, autre invention de Codd dont les fans d'Excel* raffolent, peu de gens du business interrogent leurs données sans développeur 🥲
Que voulez-vous, on y travaille encore...
#Databases #SQL #TechHistory
- promis on parlera d'Excel, aussi en bien, dans un prochain épisode