Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: Etat des solutions de réplication



Bonjour,

Le mercredi 04 juillet 2007, Sébastien Dinot a écrit :
> Fin 2004, début 2005, je m'étais intéressé aux solutions de
> réplication en temps réel d'une base de données PostgreSQL et je
> n'avais rien trouvé de sérieux.

Le thread récent suivant devrait t'intéresser :
  http://archives.postgresql.org/pgsql-performance/2007-06/msg00264.php

Il fait en particulier référence aux solutions Skype (londiste), nouvelle 
implémentation des idées de Slony-I, en plus simple à administrer (malgré le 
manque de documentation).

Deux nouvelles solutions sont également en cours de développement :
  - Implementing support for read-only queries on PITR slaves
http://code.google.com/soc/2007/postgres/appinfo.html?csaid=6545828A8197EBC6

  - Slony-M
    La suite de Slony-I, par le même auteur, sera une solution de réplication
    multi-maître asynchrone (avec donc de la résolution de conflits à
    prévoir).

On ne sait bien sûr pas quand pourront être dispos ces projets, c'est tout le 
jeu du libre, mais mon petit doigt me souffle que ne pas les voir aboutir en 
2007 est une pensée raisonnable :)

> A l'époque, la version 1 de Slony permettait juste une réplication en
> temps différé mais son développeur principal annonçait la réplication
> en temps réel pour la version 2, en cours de développement.

Attention, j'ai l'impression que les termes synchrones et asynchrones sont ici 
mal traduits, puisque dans les deux cas les solutions existantes répliquent 
les données « au fil de l'eau » (ce qui ressemble à s'y méprendre à « en 
temps réel »).

On dit que la réplication est synchrone lorsqu'elle garanti qu'une transaction 
commitée sur un maître est disponible dès le commit sur l'ensemble des nœuds 
participants à la réplication.
En l'absence de cette garantie, la réplication est asynchrone : le commit est 
local au nœud maître sur lequel on se connecte, et ses effets ne seront 
propagées qu'à la prochaine occasion (dans un temps de l'ordre de la seconde 
bien souvent).

Lire également à ce propos le billet suivant de Josh Berkus, membre de la 
core-team de PostgreSQL : 
http://blogs.ittoolbox.com/database/soup/archives/the-four-horsemen-of-replication-8230
http://blogs.ittoolbox.com/database/soup/archives/the-four-horsemen-of-replication-part-ii-8312

> On trouve aussi trace de personnes bien intentionnées qui disent aux
> curieux que Slony2 est toujours en cours de développement (mai 2006)

En fait l'objectif de Slony2 était de montrer via un prototype que les idées 
du projet de recherche Postgres-R (Global Communication System au lieu de 
Two-Phase Commit, en gros) sont assez prometteuses pour les implémenter (pour 
de vrai).
Un prototype a été réalisé en Ruby, la conclusion des auteurs est favorable et 
fourni des spécifications détaillées à qui voudra se lancer dans le projet.

> mais qu'ils devraient jeter un oeil du côté de Postgres-R.

Postgres-R (du même nom que le projet de recherche dont il a pris la suite) 
est une implémentation indépendante des mêmes idées, réalisée en C dès le 
départ : ce n'est pas un prototype mais un projet en cours de mise au point.

> autrement dit, j'ai un doute : la situation a-t'elle évolué depuis fin
> 2004 ?

Le thread indiqué plus haut devrait répondre assez précisément à ta 
question :)
-- 
dim

Attachment: signature.asc
Description: This is a digitally signed message part.



Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group