Changeset 787
- Timestamp:
- 11/07/07 19:05:17 (1 year ago)
- Files:
-
- traduc/trunk/manuel/arch-dev.xml (modified) (14 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
traduc/trunk/manuel/arch-dev.xml
r736 r787 1 1 <?xml version="1.0" encoding="ISO-8859-1"?> 2 2 <!-- $Header: /var/lib/cvs/pgsql-fr/sgml/arch-dev.sgml,v 1.13 2005/07/15 06:14:19 guillaume Exp $ --> 3 <!-- SAS : 2007 0411-->3 <!-- SAS : 20071107, PG83b2 --> 4 4 5 5 <chapter id="overview"> … … 20 20 Ce chapitre présente la structure interne du serveur 21 21 <productname>PostgreSQL</productname>. 22 La lecture des sections qui suivent permet de se faire une idée surla22 La lecture des sections qui suivent permet de se faire une idée de la 23 23 façon dont une requête est exécutée ; les opérations 24 24 internes ne sont pas décrites dans le détail. … … 127 127 processus serveur. Les tâches du serveur communiquent entre elles en 128 128 utilisant des <firstterm>sémaphores</firstterm> et de la <firstterm>mémoire 129 partagée</firstterm> pour s'assurer de l'intégrité des données lors d' un130 accès simultanéaux données.131 </para> 132 133 <para> 134 Le processus client peut consister entout programme comprenant le protocole129 partagée</firstterm> pour s'assurer de l'intégrité des données lors d'accès 130 simultanés aux données. 131 </para> 132 133 <para> 134 Le processus client est constitué de tout programme comprenant le protocole 135 135 <productname>PostgreSQL</productname> décrit dans le 136 136 <xref linkend="protocol"/>. De nombreux clients s'appuient sur la 137 bibliothèque C <application>libpq</application> mais il existe137 bibliothèque C <application>libpq</application>, mais il existe 138 138 différentes implantations indépendantes du protocole, tel que le pilote Java 139 139 <application>JDBC</application>. … … 159 159 <listitem> 160 160 <para> 161 L'<firstterm>analyseur</firstterm>défini dans162 <filename>gram.y</filename> et <filename>scan.l</filename> est construit161 l'<firstterm>analyseur</firstterm>, défini dans 162 <filename>gram.y</filename> et <filename>scan.l</filename>, est construit 163 163 en utilisant les outils Unix <application>yacc</application> et 164 <application>lex</application> .164 <application>lex</application> ; 165 165 </para> 166 166 </listitem> 167 167 <listitem> 168 168 <para> 169 Le <firstterm>processus de transformation</firstterm> fait des169 le <firstterm>processus de transformation</firstterm> fait des 170 170 modifications et des ajouts aux structures de données renvoyées par 171 171 l'analyseur. … … 210 210 <application>yacc</application>. Après avoir réalisé ces transformations, 211 211 un compilateur C normal peut être utilisé pour créer l'analyseur. Il 212 est inutile de modifier les fichiers C engendrés car ils s eront écrasés213 au prochaine appelde <application>lex</application> ou212 est inutile de modifier les fichiers C engendrés car ils sont écrasés 213 à l'appel suivant de <application>lex</application> ou 214 214 <application>yacc</application>. 215 215 … … 244 244 fixes de la structure syntaxique de SQL. Il ne fait aucune recherche dans 245 245 les catalogues système. Il n'y a donc aucune possibilité de comprendre 246 la sémantique détaillée des opérations demandées. Aprèsque l'analyseur247 a itfini, le <firstterm>processus de transformation</firstterm> prend246 la sémantique détaillée des opérations demandées. Lorsque l'analyseur 247 a fini, le <firstterm>processus de transformation</firstterm> prend 248 248 en entrée l'arbre résultant de l'analyseur et réalise l'interprétation 249 249 sémantique nécessaire pour connaître les tables, fonctions et opérateurs … … 298 298 <listitem> 299 299 <para> 300 La première, qui fonctionnait au <firstterm>niveau des300 la première, qui fonctionnait au <firstterm>niveau des 301 301 lignes</firstterm>, était implantée profondément dans 302 302 l'<firstterm>exécuteur</firstterm>. Le système de règles était appelé … … 304 304 implantation a été supprimée en 1995 quand la dernière version 305 305 officielle du projet <productname>Berkeley Postgres</productname> a été 306 transformée en <productname>Postgres95</productname> .306 transformée en <productname>Postgres95</productname> ; 307 307 </para> 308 308 </listitem> … … 310 310 <listitem> 311 311 <para> 312 La deuxième implantation du système de règles est une technique appelée313 la<firstterm>réécriture de requêtes</firstterm>. Le <firstterm>système312 la deuxième implantation du système de règles est une technique appelée 313 <firstterm>réécriture de requêtes</firstterm>. Le <firstterm>système 314 314 de réécriture</firstterm> est un module qui existe entre 315 315 l'<firstterm>étape d'analyse</firstterm> et le … … 357 357 358 358 <para> 359 La procédure de recherche du planificateur fonctionne en faitavec des359 La procédure de recherche du planificateur fonctionne avec des 360 360 structures de données appelés <firstterm>chemins</firstterm>, simples 361 361 représentations minimales de plans ne contenant que l'information 362 362 nécessaire au planificateur pour prendre ses décisions. Une fois 363 363 le chemin le moins coûteux déterminé, un <firstterm>arbre plan</firstterm> est 364 construit pour être passé à l'exécuteur. Ce ci représente le plan d'exécution364 construit pour être passé à l'exécuteur. Celui-ci représente le plan d'exécution 365 365 désiré avec suffisamment de détails pour que l'exécuteur puisse le lancer. 366 366 Dans le reste de cette section, la distinction entre chemins et plans … … 407 407 (Toutefois, si la relation de droite peut être parcourue à l'aide d'un 408 408 index, ceci peut être une bonne stratégie. Il est possible d'utiliser 409 les valeurs issues de la ligne actuelle de la relation de gauche comme409 les valeurs issues de la ligne courante de la relation de gauche comme 410 410 clés du parcours d'index à droite.) 411 411 </para> … … 423 423 Le tri requis peut être réalisé soit par une étape explicite de tri 424 424 soit en parcourant la relation dans le bon ordre en utilisant un index 425 sur la clé de la jointure .425 sur la clé de la jointure ; 426 426 </para> 427 427 </listitem> … … 478 478 La plupart des types de nœud de plan ont la capacité supplémentaire de faire une 479 479 <firstterm>sélection</firstterm> (rejet des lignes qui ne correspondent pas à une 480 condition booléenne spécifiée) et une <firstterm>projection</firstterm> (calcul d'un480 condition booléenne indiquée) et une <firstterm>projection</firstterm> (calcul d'un 481 481 ensemble dérivé de colonnes fondé sur des valeurs de colonnes données, 482 482 par l'évaluation d'expressions scalaires si nécessaire). Une des … … 531 531 avance sur la prochaine ligne d'une des deux tables (suivant le résultat de 532 532 la comparaison), et vérifie à nouveau la correspondance. Éventuellement, 533 l'un des sous-plans est épuisé et le nœud <literal>MergeJoin</literal> renvoie533 un des sous-plans est épuisé et le nœud <literal>MergeJoin</literal> renvoie 534 534 NULL pour indiquer qu'il n'y a plus de lignes jointes à former. 535 535 </para>

