Vous n'êtes pas identifié(e).
Pages : 1
Bonjour à tous...
Je reviens vers vous pour des questions sur le hot standby et autre (et excusez mes questions bêtes !) :
1°) Comment sont réparties les lectures sur un serveur HotStandby ? Est-ce PGPOOL qui choisit la répartition genre : j'envoie le 'SELECT de l'utilisateurA vers Esclave' et 'Select de l'utilisateurB vers le Maître' ?
2°) J'ai pas trop compris la différence entre le 'failover' et le 'switchover' lors d'un switch entre le serveur maître et esclave...
3°) A quoi servirait un serveurs maître qui aurait par exemple 5 esclaves ?
4°) Autre chose... est-il possible d'avoir une très grosse database Postgrès, diffusée par exemple, sur 12 serveurs (1 serveur définissant 1 mois de donné)... dont les mises à jour seraient effectuées, selon les données, vers tel ou tel serveur ?
Merci pour vos réponses...
PS : Bravo pour les 2 post sur les 'mises en replication Postgrès 9.0 '... ils sont très clairs !
Hors ligne
1°) Comment sont réparties les lectures sur un serveur HotStandby ? Est-ce PGPOOL qui choisit la répartition genre : j'envoie le 'SELECT de l'utilisateurA vers Esclave' et 'Select de l'utilisateurB vers le Maître' ?
PostgreSQL ne répartit rien. pgpool le fera par contre. Il le fait en distribuant les requêtes sur leur nombre et non pas leur complexité.
2°) J'ai pas trop compris la différence entre le 'failover' et le 'switchover' lors d'un switch entre le serveur maître et esclave...
La seule différence consiste dans le fait que le maître est mort pour le failover, et vivant dans le cas du switchover. La distinction est importante car cela sous-entend dans le cas du switchover qu'il faut aussi basculer l'ancien maître en esclave.
3°) A quoi servirait un serveurs maître qui aurait par exemple 5 esclaves ?
L'intérêt le plus flagrant est dans la répartition de charge. Vous avez six serveurs sur lesquels répartir la charge au lieu de deux. Donc à priori de meilleures performances.
4°) Autre chose... est-il possible d'avoir une très grosse database Postgrès, diffusée par exemple, sur 12 serveurs (1 serveur définissant 1 mois de donné)... dont les mises à jour seraient effectuées, selon les données, vers tel ou tel serveur ?
Ça s'appelle du sharding et ce n'est pas disponible avec la réplication interne de PostgreSQL. Par contre, c'est possible à obtenir avec d'autres systèmes de réplication (Slony, Londiste, Postgres XC, etc.).
Guillaume.
Hors ligne
Merci Guillaume pour vos réponses...
Hors ligne
Merci Guillaume pour vos réponses...
3.1) Ill ne faut pas alors que la database soit trop volumineuse, car dupliquer par exemple 1 tera sur 5 serveur me parait bien lourd pour des questions de disponibilité et de perf'... me trompe-je ?
Et dans ce cas deux question :
3.1°) Est-ce serveur maître qui alimente tous les esclaves
3.2°) Un esclave peut-il alimenter un autre esclave
4.1°) Pourquoi le sharding n'effectue t'il pas de duplication ... ce sont à mon sens, deux choses différentes car un serveur maitreA (mois de janvier) pourrait très bien dupliquer sur un serveuresclaveA... bizarre !
4.2°) La répartition des charges/msnipulations de données dans ce cas là, est-il fait par PGPOOL ?
4.3°) Pourquoi Slony peut-il faire du Sharding ? Pour moi Slony n'est que de la réplication de données par trigger entre deux serveurs !,
Hein ?
Merci encore pour vos réponses...
Hors ligne
Je reprends :
Merci Guillaume pour vos réponses...
3.1) Il ne faut pas alors que la database soit trop volumineuse, car dupliquer par exemple 1 tera sur 5 serveur me parait bien lourd pour des questions de disponibilité et de perf'... me trompe-je ?
Et dans ce cas deux question :
3.2°) Est-ce serveur maître qui alimente tous les esclaves
3.3°) Un esclave peut-il alimenter un autre esclave
4.1°) Pourquoi le sharding n'effectue t'il pas de duplication ... ce sont à mon sens, deux choses différentes car un serveur maitreA (mois de janvier) pourrait très bien dupliquer sur un serveuresclaveA... bizarre !
4.2°) La répartition des charges/msnipulations de données dans ce cas là, est-il fait par PGPOOL ?
4.3°) Pourquoi Slony peut-il faire du Sharding ? Pour moi Slony n'est que de la réplication de données par trigger entre deux serveurs !,
hein ?
Merci encore pour vos réponses...
Hors ligne
3.1 Tout dépend de l'utilisation que vous voulez en faire et du nombre de connexions simultanées. De nos jour les disques (et "petits serveurs") ne coutent plus si cher que ça, surtout comparé à une architecture contenant plusieurs dizaines de processeurs.
3.2 Oui, c'est le maître qui alimente tous les esclaves.
3.3 A priori, la version 9.2 de postgresql apportera la réplication en cascade, c'est-à-dire un esclave alimentant un autre esclave.
4.1 Ceci se rapproche plus d'un mode multi-maitre, que postgresql ne fait pas nativement (bucardo le fait), ou de partitionnement de table sur plusieurs serveurs, que postgresql ne fait pas non plus nativement (je ne m'y connais pas il y a peut-être des outils pour y parvenir comme Pl/Proxy).
4.3 La réplication de Postgresql se fait au niveau instance, c'est-à-dire toutes les tables de toutes les bases d'un serveur. Slony permet une réplication sélective, et donc de répliquer une table A vers un serveur A et une table B sur un serveur B.
Dernière modification par rjuju (16/11/2011 19:07:45)
Julien.
https://rjuju.github.io/
Hors ligne
4.1 Ceci se rapproche plus d'un mode multi-maitre, que postgresql ne fait pas nativement (bucardo le fait), ou de partitionnement de table sur plusieurs serveurs, que postgresql ne fait pas non plus nativement (je ne m'y connais pas il y a peut-être des outils pour y parvenir comme Pl/Proxy).
Oui, pl/proxy le permet.
4.3 La réplication de Postgresql se fait au niveau instance, c'est-à-dire toutes les tables de toutes les bases d'un serveur. Slony permet une réplication sélective, et donc de répliquer une table A vers un serveur A et une table B sur un serveur B.
Pour détailler un peu plus, Slony permet que les données des serveurs peuvent être différents en dehors de données répliquées (contrairement à la réplication de PostgreSQL qui fait une copie bit de bit de tout). Du coup, il est possible d'utiliser pl/proxy ou le partitionnement pour arriver à avoir du sharding. Faut le vouloir, parce que ce n'est pas simple à mettre en place. Mais c'est possible.
Guillaume.
Hors ligne
Merci à vous...
A bientôt !
Hors ligne
Je re-rouvre pour savoir s'il y a un manuel explicatif (en français !) sur pl/proxy (j'ai rien trouvé sur Internet) ?
merci pour vos réponses
Hors ligne
Non, ça n'existe pas.
Guillaume.
Hors ligne
Pages : 1