root/traduc/trunk/slony/concepts.xml

Revision 1015, 5.8 kB (checked in by daamien, 7 months ago)

1ère traduction, à relire

Line 
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- DerniÚre modification
3      le       $Date$
4      par      $Author$
5      révision $Revision$ -->
6
7 <sect1 id="concepts">
8 <title>Les concepts</title>
9
10 <indexterm><primary>concepts et terminologie</primary></indexterm>
11
12 <para>Afin de mettre en place une réplication &slony1;, il est nécessaire de comprendre les
13   principales abstractions utilisées : </para>
14
15 <itemizedlist>
16         <listitem><para>Cluster,</para></listitem>
17         <listitem><para>Noeud ("node"),</para></listitem>
18         <listitem><para>Ensemble de réplication ("replication set"),</para></listitem>
19         <listitem><para>Origine ("Origin"), Fournisseurs ("Providers") et Abonnés ("Subscribers"),</para></listitem>
20         <listitem><para>Les démons slon,</para></listitem>
21         <listitem><para>La commande slonik</para></listitem>
22 </itemizedlist>
23
24 <para> Il est également nécessaire de connaître quelques mots de russe :</para>
25 <itemizedlist>
26 <listitem><para>slon signifie <quote>éléphant</quote> en russe,</para></listitem>
27 <listitem><para>slony est le pluriel de slon, et désigne ainsi un groupe d'éléphants</para></listitem>
28 <listitem><para>slonik désigne un <quote>petit éléphant</quote></para></listitem>
29 </itemizedlist>
30
31 <para> L'utilisation de ces termes dans &slony1; est un <quote>coup de chapeau</quote>
32   à Vadim Mikheev, qui est l'auteur du prototype <application>rserv</application>
33   qui inspira une partie des algorithmes utilisé dans &slony1;.</para>
34
35 <sect2>
36 <title>Cluster</title>
37 <indexterm>
38  <primary>cluster</primary>
39 </indexterm>
40
41 <para>Selon &slony1;, un <quote>cluster</quote> est ensemble nommé d'instances de bases
42   de données &postgres;; Une réplication a lieu entre ces bases.</para>
43
44 <para>Le nom du cluster est spécifié dans chaque script Slonik via la directive :</para>
45 <programlisting>
46 cluster name = 'quelque_chose';
47 </programlisting>
48
49 <para>Si le nom du cluster est <envar>plop</envar>, alors &slony1;
50 créera, dans chaque instance du cluster, le schéma <envar>_plop</envar>.</para>
51 </sect2>
52 <sect2><title>Noeud</title>
53 <indexterm>
54 <primary>noeud</primary>
55 </indexterm>
56
57 <para>Un noeud &slony1; est un base &postgres; nommée qui participe à la réplication.</para>
58
59 <para>Le nom du noeud est défini au début de chaque script Slonik, avec la directive :</para>
60 <programlisting>
61  NODE 1 ADMIN CONNINFO = 'dbname=testdb host=server1 user=slony';
62 </programlisting>
63
64 <para>La ligne <xref linkend="admconninfo"/> précise les informations
65   de connexion qui seront utilisées par la fonction libpq
66 <function>PQconnectdb()</function>.</para>
67
68 <para>Ainsi un cluster &slony1; se compose :</para>
69 <itemizedlist>
70         <listitem><para> d'un nom de cluster</para></listitem>
71         <listitem><para> d'un ensemble de noeuds &slony1;, qui disposent chacun d'un schéma
72             portant le nom du cluster</para></listitem>
73 </itemizedlist>
74 </sect2>
75 <sect2><title>Ensemble de réplication</title>
76 <indexterm>
77 <primary>Ensemble de réplication</primary>
78 </indexterm>
79
80 <para>Un ensemble de réplication est défini comme un ensemble de tables et de séquences qui
81   doivent être répliquées entre plusieurs noeuds dans un cluster &slony1;.</para>
82
83 <para>Vous pouvez avoir plusieurs sets, et le <quote>flux</quote> de réplication
84   n'est pas nécessaire identique pour tous les ensembles.</para>
85 </sect2>
86
87 <sect2><title> Origine, Fournisseurs et Abonnés</title>
88 <indexterm>
89 <primary>Noeud d'origine</primary>
90 </indexterm>
91 <indexterm>
92 <primary>Noeud fournisseur</primary>
93 </indexterm>
94
95 <para>Chaque ensemble de réplication a un noeud d'origine, qui est le <emphasis>seul</emphasis> endroit
96   où les applications sont autorisées à modifier les données répliquées. On peut aussi
97   rencontrer le terme <quote>noeud maître</quote>; Il s'agit de noeud principal qui
98   fournit les données.
99 </para>
100
101 <indexterm>
102 <primary>Noeud Abonné</primary>
103 </indexterm>
104
105 <para>Les autres noeuds du cluster s'abonne à l'ensemble de réplication,
106   ce qui indique qu'ils veulent recevoir les données.
107 </para>
108
109 <para>Le noeud d'origine ne sera jamais considéré comme un
110 <quote>abonné</quote> (On ignore ici le cas ou le cluster est restructuré
111 et où l'origine est explicitement déplacée sur un autre noeud).
112 Mais &slony1; supporte la notion d'abonnements en cascade, c'est à dire
113 qu'un noeud qui est abonné à un ensemble de réplication, peut également se
114 comporter comme un <quote>fournisseur</quote> du même ensemble de réplication
115 pour d'autres noeuds du cluster.</para>
116 </sect2>
117
118 <sect2><title>Le démon slon</title>
119
120 <indexterm><primary>démon slon</primary></indexterm>
121
122 <para>Pour chaque noeud du cluster, il y a un processus <xref
123 linkend="slon"/> qui gÚre l'activité de réplication pour le noeud.
124 </para>
125
126 <para> <xref linkend="slon"/> est un programme implémenté en C qui traite les
127   évÚnements de réplication. Il y a deux principales sortes d'événements :
128 </para>
129
130 <itemizedlist>
131
132 <listitem><para>Les évÚnements de configuration</para>
133
134 <para> Ils se produisent en général lorsqu'un script <xref linkend="slonik"/> est exécuté,
135   et qu'il modifie la configuration du cluster. </para>
136 </listitem>
137
138 <listitem><para> Les événements <command>SYNC</command></para>
139
140 <para> Les mises à jour des tables répliquées sont regroupées dans des événements <command>SYNC</command>s;
141   Ces groupes de transactions sont appliquées ensemble sur les noeuds abonnés.
142 </para>
143 </listitem>
144 </itemizedlist>
145 </sect2>
146
147 <sect2><title>La commande slonik</title>
148
149 <indexterm><primary>La commande slonik</primary></indexterm>
150
151 <para> La commande <xref linkend="slonik"/> traite des scripts
152   écrits dans un <quote>langage spécial</quote> qui est utilisé pour
153   soumettre des événements de configuration du cluster &slony1; cluster.
154   Cela comprend des actions telles que l'ajout et la suppression de noeuds,
155   la modifications des voies de communications, l'ajout ou la suppression d'abonnements.
156 </para>
157 </sect2>
158 </sect1>
Note: See TracBrowser for help on using the browser.