Succincte histoire de Postgres

Le système de gestion de bases de données objet-relationnel connu sous le nom de Postgres (abréviation de « Postgres95 ») est dérivé du logiciel écrit à Berkeley. PostgreSQL, après plus de dix années de développement, est le plus mature des systèmes libres de ce genre disponibles car il offre le contrôle des versions, honore quasiment toutes les constructions SQL (y compris les sous-requêtes, les transactions, et les fonctions et types définis par l'utilisateur), et est utilisable via de nombreux langages (y compris C, C++, Java, Perl, Tcl, et Python).

Le projet Postgres de Berkeley

L'implémentation commença en 1986. Les concepts fondamentaux du système furent présentés dans The Design of Postgres, (M. Stonebraker et L. Rowe) et les définitions du modèle de données correspondant apparurent dans The Postgres Data Model (L. Rowe et M. Stonebraker). Le document intitulé The Design of the Postgres Rules System (M. Stonebraker, E. Hanson, et C. H. Hong) détaillait les règles du système. L'architecture du gestionnaire de stockage était exposée dans The Postgres Storage System (M. Stonebraker).

Postgres a connu, depuis, plusieurs révisions majeures. La première version de démonstration devint opérationnelle en 1987, et fut présentée à la conférence ACM-SIGMOD de 1988. La version 1, décrite dans The Implementation of Postgres (M. Stonebraker, L. A. Rowe, et M. Hirohama) et destinée à quelques utilisateurs extérieurs, fut réalisée en juin 1989. Le système de règles, après publication d'un commentaire intitulé A Commentary on the Postgres Rules System (M. Stonebraker, M. Hearst, et S. Potamianos), fut remodelé et décrit à son tour par On Rules, Procedures, Caching and Views in Database Systems (M. Stonebraker et al.). La version 2 intégrait un nouveau système de règles et apparut en juin 1990. La version 3 naquit en 1991 et offrait des gestionnaires de stockage multiple, l'amélioration de l'exécuteur de requêtes, et un nouveau système de réécriture de règles. Les révisions suivantes (jusqu'à Postgres95) améliorèrent surtout la portabilité et la fiabilité.

Postgres a été utilisé pour implémenter différentes applications de recherche et de production. Ceci comprend : un système d'analyse de données financières, un système de gestion de performances d'un réacteur d'avion, une base de suivi d'astéroïdes, une base d'information médicale, et plusieurs systèmes d'information géographiques. Postgres a également été utilisé comme outil d'apprentissage dans plusieurs universités. La société « Illustra Information Technologies » (dont le nom devint « Informix ») reprit le code et le commercialisa. Postgres devint, fin 1992, le premier gestionnaire de bases de données du projet d'informatique scientifique Sequoia 2000. De plus, la taille de la communauté des utilisateurs extérieurs a presque doublé en 1993. Le projet universitaire prit officiellement fin lors de la publication de la version 4.2.

Postgres95

En 1994, Andrew Yu et Jolly Chen ajoutèrent à Postgres un interpréteur de langage SQL. Le résultat, appelé « Postgres95 », fut de façon substantielle amélioré pour le web et ce descendant du code original de Berkeley trouva son propre chemin dans le monde du logiciel libre.

Postgres95 est un dérivé de la dernière version officielle de Postgres (4.2). Le code est maintenant complètement ANSI C et la taille allégée de 25%. Il intègre de nombreuses modifications augmentant ses performances. Postgres95 v1.0x fonctionne environ 30 à 50% plus vite que la version 4.2 (selon le Wisconsin Benchmark). voici ses principales différences d'avec Postgres 4.2 (hormis quelques corrections de bogues) :

PostgreSQL

En 1996, il devient clair que le nom "Postgres95" n'est plus adapté. Un nouveau nom, PostgreSQL, fut choisi pour refléter la relation entre le Postgres original et les versions plus récentes avec les possibilités SQL. Au même moment, le numérotage des versions commença à 6.0.

L'accent, pendant la phase de développement de Postgres95, fut porté sur l'identification et la compréhension des problèmes du code interne. Avec PostgreSQL il porta sur l'augmentation des fonctionnalités et des possibilités, bien que le travail continuait dans les autres domaines.

Les points principaux :