Documentation PostgreSQL 7.4.29 | ||||
---|---|---|---|---|
Pr�c�dent | Arri�re rapide | Pr�face | Avance rapide | Suivant |
Le syst�me de bases de donn�es relationnel objet PostgreSQL est issu de POSTGRES, programme �crit � l'universit� de Californie � Berkeley. Avec plus d'une dizaine d'ann�es de d�veloppement, PostgreSQL est la plus avanc�e des bases de donn�es libres.
Le projet POSTGRES, men� par le professeur Michael Stonebraker, �tait sponsoris� par l'agence des projets avanc�s de la D�fense (DARPA, acronyme de Advanced Research Projects Agency), le bureau des recherches de l'arm�e (ARO, acronyme de Army Research Office), le NSF (acronyme de National Science Foundation) ainsi que ESL, Inc. L'impl�mentation de POSTGRES a commenc� en 1986. Les concepts initiaux du syst�me ont �t� pr�sent� dans The design of POSTGRES et la d�finition du mod�le de donn�es initial est apparu dans The POSTGRES data model. Le concept du syst�me de r�gles � ce moment �tait d�crit dans The design of the POSTGRES rules system. L'architecture du gestionnaire de stockage �tait d�taill�e dans The design of the POSTGRES storage system.
Postgres a connu plusieurs versions majeures depuis. La premi�re <<�d�mo�>> devint op�rationnel en 1987 et fut pr�sent� en 1988 � la conf�rence ACM-SIGMOD. La version 1, d�crite dans The implementation of POSTGRES, fut livr�e � quelques utilisateurs externes en juin 1989. En r�ponse � une critique du premier m�canisme de r�gles (A commentary on the POSTGRES rules system), celui-ci fut r��crit (On Rules, Procedures, Caching and Views in Database Systems) dans la version 2, pr�sent�e en juin 1990. La version 3 apparut en 1991. Elle ajoutait le support de plusieurs gestionnaires de stockage, un ex�cuteur de requ�tes am�lior� et un gestionnaire de r�gles r��crit. La plupart des versions suivantes jusqu'� Postgres95 (voir plus loin) port�rent sur la portabilit� et la fiabilit�.
POSTGRES fut utilis� pour r�aliser diff�rentes applications de recherche et de production. Par exemple : un syst�me d'analyse de donn�es financi�res, un programme de suivi des performances d'un moteur � r�action, une base de donn�es de suivi d'ast�ro�des, une base de donn�es m�dicale et plusieurs syst�mes d'informations g�ographiques. POSTGRES a aussi �t� utilis� comme outil de formation dans plusieurs universit�s. Enfin, Illustra Information Technologies (devenu Informix, maintenant d�tenu par IBM) a repris le code et l'a commercialis�. Fin 1992, POSTGRES devint le gestionnaire de donn�es principal du projet de calcul scientifique Sequoia 2000 fin 1992.
La taille de la communaut� d'utilisateurs doubla pratiquement durant l'ann�e 1993. Il devint de plus en plus �vident que la maintenance du code et le support n�cessitaient de plus en plus de temps et d'�nergie, qui auraient d�s �tre employ�s � des recherches sur les bases de donn�es. Afin de r�duire le poids du support, le projet POSTGRES de Berkeley se termina officiellement avec la version 4.2.
En 1994, Andrew Yu et Jolly Chen ajout�rent un interpr�teur de langage SQL � POSTGRES. Sous un nouveau nom, Postgres95 fut par la suite publi� sur le Web, afin de devenir un descendant libre (open-source) du code source initial de POSTGRES, version Berkeley.
Le code de Postgres95 �tait compl�tement compatible avec le C ANSI et 25% moins gros. De nombreux changements internes am�lioraient les performances et la maintenabilit�. Les versions 1.0.x de Postgres95 �taient 30 � 50% plus rapides que POSTGRES, version 4.2, pour le test Wisconsin Benchmark. Mis � part les corrections de bogues, les principales am�liorations �taient :
Le langage PostQUEL �tait remplac� par SQL (ex�cut� c�t� serveur). Les requ�tes imbriqu�es ne furent pas support�es avant PostgreSQL (voir plus loin) mais elles pouvaient �tre imit�es dans Postgres95 avec des fonctions SQL d�finies par l'utilisateur. Les agr�gats furent reprogramm�s, l'utilisation de la clause GROUP BY ajout�.
En plus du moniteur de programme, un nouveau programme (psql) permettait d'ex�cuter des requ�tes SQL interactives, en utilisant GNU Readline.
Une nouvelle biblioth�que cliente, libpgtcl, supportait les programmes �crits en Tcl. Un shell exemple, pgtclsh, fournissait de nouvelles commandes Tcl pour cr�er une interface les applications Tcl avec le serveur Postgres95.
L'interface pour les gros objets �tait r�vis�e. Les objets de grande taille Inversion �taient le seul m�canisme pour stocker de tels objets, le syst�me de fichiers Inversion �tant supprim�.
Le syst�me de r�gles de niveau instance �tait supprim�. Les r�gles �taient toujours disponibles en tant que r�gles de r��criture.
Un bref tutoriel pr�sentant les possibilit�s SQL ainsi que celles sp�cifiques � Postgres95 �tait distribu� avec le code source.
La version GNU de make (au lieu de la version BSD) �tait utilis�e pour la construction. Par ailleurs, Postgres95 pouvait �tre compil� avec GCC sans correctif (l'alignement des nombres doubles �tait corrig�).
En 1996, il devint �vident que le nom <<�Postgres95�>> vieillissait mal. Nous avons choisi un nouveau nom, PostgreSQL, pour mettre en avant la relation entre le POSTGRES original et les capacit�s SQL des versions plus r�centes. En m�me temps, nous avons positionn� le num�ro de version � 6.0, pour reprendre la num�rotation originale du projet POSTGRES de Berkeley.
Durant le d�veloppement de Postgres95, un effort particulier avait �t� fourni pour identifier et comprendre les probl�mes existants dans le code. Avec PostgreSQL, la priorit� put �tre mise sur l'augmentation des caract�ristiques et des possibilit�s, m�me si le travail a continu� dans tous les domaines.
Les d�tails sur ce qui est arriv� � PostgreSQL � partir de ce moment est disponible dans l'Annexe E.
Pr�c�dent | Sommaire | Suivant |
Pr�face | Niveau sup�rieur | Conventions |