root/traduc/branches/bv747/manuel/history.sgml

Revision 13, 8.7 kB (checked in by gleu, 3 years ago)

Suite de l'import pour le passage CVS à SVN.

Line 
1 <!--
2 $Header: /var/lib/cvs/pgsql-fr/sgml/history.sgml,v 1.7.2.1 2005/07/15 06:33:39 guillaume Exp $
3 -->
4
5 <sect1 id="history">
6  <title>Bref historique de <productname>PostgreSQL</productname></title>
7
8  <indexterm zone="history">
9   <primary>historique</primary>
10   <secondary>de PostgreSQL</secondary>
11  </indexterm>
12
13  <para>
14   Le système de bases de données relationnel objet
15   <productname>PostgreSQL</productname> est issu de
16   <productname>POSTGRES</productname>, programme écrit à l'université de
17   Californie à Berkeley. Avec plus d'une dizaine d'années de développement,
18   <productname>PostgreSQL</productname> est la plus avancée des bases de données
19   libres.
20  </para>
21
22  <sect2 id="history-berkeley">
23   <title>Le projet <productname>POSTGRES</productname> de Berkeley</title>
24
25   <para>
26    Le projet <productname>POSTGRES</productname>, mené par le professeur
27    Michael Stonebraker, était sponsorisé par l'agence des projets avancés de la
28    Défense (<acronym>DARPA</acronym>, acronyme de <foreignphrase>Advanced
29    Research Projects Agency</foreignphrase>), le bureau des recherches de
30    l'armée (<acronym>ARO</acronym>, acronyme de <foreignphrase>Army Research
31    Office</foreignphrase>), le <acronym>NSF</acronym> (acronyme de National
32    Science Foundation) ainsi que ESL, Inc. L'implémentation de
33    <productname>POSTGRES</productname> a commencé en 1986.  Les concepts
34    initiaux du système ont été présenté dans <xref linkend="STON86">
35    et la définition du modèle de données initial est apparu dans <xref
36    linkend="ROWE87">. Le concept du système de règles à ce moment était décrit
37    dans <xref linkend="STON87a">. L'architecture du gestionnaire de stockage
38    était détaillée dans <xref linkend="STON87b">.
39   </para>
40
41   <para>
42    <productname>Postgres</productname> a connu plusieurs versions majeures depuis.
43    La première <quote>démo</quote> devint opérationnel en 1987 et fut présenté en
44    1988 à la conférence <acronym>ACM-SIGMOD</acronym>. La version 1, décrite dans
45    <xref linkend="STON90a">, fut livrée à quelques utilisateurs externes en juin
46    1989. En réponse à une critique du premier mécanisme de règles
47    (<xref linkend="STON89">), celui-ci fut réécrit (<xref linkend="STON90b">) dans
48    la version 2, présentée en juin 1990. La version 3 apparut en 1991. Elle ajoutait
49    le support de plusieurs gestionnaires de stockage, un exécuteur de requêtes
50    amélioré et un gestionnaire de règles réécrit. La plupart des versions suivantes
51    jusqu'à <productname>Postgres95</productname> (voir plus loin) portèrent sur la
52    portabilité et la fiabilité.
53   </para>
54
55   <para>
56    <productname>POSTGRES</productname> fut utilisé pour réaliser différentes
57    applications de recherche et de production. Par exemple&nbsp;: un système
58    d'analyse de données financières, un programme de suivi des performances d'un
59    moteur à réaction, une base de données de suivi d'astéroïdes, une base de
60    données médicale et plusieurs systèmes d'informations géographiques.
61    <productname>POSTGRES</productname> a aussi été utilisé comme outil de
62    formation dans plusieurs universités. Enfin, Illustra Information
63    Technologies (devenu <ulink
64 url="http://www.informix.com/"><productname>Informix</productname></ulink>,
65    maintenant détenu par <ulink url="http://www.ibm.com/">IBM</ulink>) a repris le
66    code et l'a commercialisé. Fin 1992, <productname>POSTGRES</productname> devint le
67    gestionnaire de données principal du projet de calcul scientifique
68    <ulink url="http://meteora.ucsd.edu/s2k/s2k_home.html">Sequoia 2000</ulink>
69    fin 1992.
70   </para>
71
72   <para>
73    La taille de la communauté d'utilisateurs doubla pratiquement durant
74    l'année 1993. Il devint de plus en plus évident que la maintenance du code et
75    le support nécessitaient de plus en plus de temps et d'énergie, qui auraient
76    dûs être employés à des recherches sur les bases de données. Afin de réduire
77    le poids du support, le projet <productname>POSTGRES</productname> de
78    Berkeley se termina officiellement avec la version 4.2.
79   </para>
80  </sect2>
81
82  <sect2 id="history-postgres95">
83   <title><productname>Postgres95</productname></title>
84
85   <para>
86    En 1994, Andrew Yu et Jolly Chen ajoutèrent un interpréteur de langage SQL à
87    <productname>POSTGRES</productname>. Sous un nouveau nom,
88    <productname>Postgres95</productname> fut par
89    la suite publié sur le Web, afin de devenir un descendant libre (open-source) du
90    code source initial de <productname>POSTGRES</productname>, version Berkeley.
91   </para>
92
93   <para>
94    Le code de <productname>Postgres95</productname> était complètement compatible
95    avec le C ANSI et 25% moins gros. De nombreux changements internes
96    amélioraient les performances et la maintenabilité. Les versions 1.0.x de
97    <productname>Postgres95</productname> étaient 30 à 50% plus rapides que
98    <productname>POSTGRES</productname>, version 4.2, pour le test Wisconsin
99    Benchmark. Mis à part les corrections de bogues, les principales améliorations
100    étaient&nbsp;:
101
102    <itemizedlist>
103     <listitem>
104      <para>
105       Le langage PostQUEL était remplacé par <acronym>SQL</acronym> (exécuté côté
106       serveur). Les requêtes imbriquées ne furent pas supportées avant
107       <productname>PostgreSQL</productname> (voir plus loin) mais elles pouvaient
108       être imitées dans <productname>Postgres95</productname> avec des fonctions
109       <acronym>SQL</acronym> définies par l'utilisateur. Les agrégats furent
110       reprogrammés, l'utilisation de la clause GROUP BY ajouté.
111      </para>
112     </listitem>
113
114     <listitem>
115      <para>
116       En plus du moniteur de programme, un nouveau programme
117       (<application>psql</application>) permettait d'exécuter des requêtes SQL
118       interactives, en utilisant <acronym>GNU</acronym>
119       <application>Readline</application>.
120      </para>
121     </listitem>
122
123     <listitem>
124      <para>
125       Une nouvelle bibliothèque cliente, <filename>libpgtcl</filename>, supportait
126       les programmes écrits en <acronym>Tcl</acronym>. Un shell exemple,
127       <command>pgtclsh</command>, fournissait de nouvelles commandes Tcl pour
128       créer une interface les applications <application>Tcl</application> avec le serveur
129       <productname>Postgres95</productname>.
130      </para>
131     </listitem>
132
133     <listitem>
134      <para>
135       L'interface pour les gros objets était révisée. Les objets de
136       grande taille Inversion étaient le seul mécanisme pour stocker de tels
137       objets, le système de fichiers Inversion étant supprimé.
138      </para>
139     </listitem>
140
141     <listitem>
142      <para>
143       Le système de règles de niveau instance était supprimé. Les règles
144       étaient toujours disponibles en tant que règles de réécriture.
145      </para>
146     </listitem>
147
148     <listitem>
149      <para>
150       Un bref tutoriel présentant les possibilités <acronym>SQL</acronym> ainsi que
151       celles spécifiques à <productname>Postgres95</productname> était distribué
152       avec le code source.
153      </para>
154     </listitem>
155
156     <listitem>
157      <para>
158       La version <acronym>GNU</acronym> de make (au lieu de la version
159       <acronym>BSD</acronym>) était utilisée pour la construction. Par ailleurs,
160       <productname>Postgres95</productname>  pouvait être compilé avec
161       <productname>GCC</productname> sans correctif (l'alignement des nombres
162       doubles était corrigé).
163      </para>
164     </listitem>
165    </itemizedlist>
166   </para>
167  </sect2>
168
169  <sect2>
170   <title><productname>PostgreSQL</productname></title>
171
172   <para>
173    En 1996, il devint évident que le nom <quote>Postgres95</quote> vieillissait mal.
174    Nous avons choisi un nouveau nom, <productname>PostgreSQL</productname>,
175    pour mettre en avant la relation entre le <productname>POSTGRES</productname>
176    original et les capacités <acronym>SQL</acronym> des versions plus récentes.
177    En même temps, nous avons positionné le numéro de version à 6.0, pour reprendre
178    la numérotation originale du projet <productname>POSTGRES</productname> de
179    Berkeley.
180   </para>
181
182   <para>
183    Durant le développement de <productname>Postgres95</productname>, un effort
184    particulier avait été fourni pour identifier et comprendre les problèmes
185    existants dans le code. Avec <productname>PostgreSQL</productname>, la priorité
186    put être mise sur l'augmentation des caractéristiques et des possibilités, même
187    si le travail a continué dans tous les domaines.
188   </para>
189
190   <para>
191    Les détails sur ce qui est arrivé à <productname>PostgreSQL</> à partir de ce
192    moment est disponible dans l'<xref linkend="release">.
193   </para>
194  </sect2>
195 </sect1>
196
197 <!-- Keep this comment at the end of the file
198 Local variables:
199 mode:sgml
200 sgml-omittag:nil
201 sgml-shorttag:t
202 sgml-minimize-attributes:nil
203 sgml-always-quote-attributes:t
204 sgml-indent-step:1
205 sgml-indent-data:t
206 sgml-parent-document:nil
207 sgml-default-dtd-file:"./reference.ced"
208 sgml-exposed-tags:nil
209 sgml-local-catalogs:("/usr/lib/sgml/catalog")
210 sgml-local-ecat-files:nil
211 End:
212 -->
Note: See TracBrowser for help on using the browser.