réplications sophistiquées avec slony

21
1 Réplications sophistiqués avec Slony

Upload: dalibo

Post on 27-Mar-2016

220 views

Category:

Documents


0 download

DESCRIPTION

Historiquement, Slony est l'un des premiers systèmes de réplication PostgreSQL stable et utilisable en production. C'est aussi l'un des outils les plus puissants pour les clusters “en cascade”, les clusters hétérogènes, les réplications de sous-ensembles croisés, le failover ou encore les architectures “many to one”. Guillaume Lelarge reviendra en détail sur toutes les applications possibles de Slony, lorsque la réplication interne de PostgreSQL ne suffit plus.

TRANSCRIPT

Page 1: Réplications Sophistiquées avec Slony

1

Réplications sophistiqués avec Slony

Page 2: Réplications Sophistiquées avec Slony

2

À propos des auteurs

● Auteur : Guillaume Lelarge● Société : DALIBO● Date : Février 2012● URL...

Page 3: Réplications Sophistiquées avec Slony

3

Licence

● Creative Commons, blabla

Page 4: Réplications Sophistiquées avec Slony

4

Qu'est-ce que Slony?

● Système de réplication● Un maître, plusieurs esclaves● Basé sur les triggers● Licence BSD

Page 5: Réplications Sophistiquées avec Slony

5

Pourquoi utiliser Slony ?

● Surtout maintenant qu'il y a la réplication interne !

● La réplication interne de PostgreSQL est– Simple à mettre en place

– Facile à superviser

– Simple à comprendre

– ... idéale ?

Page 6: Réplications Sophistiquées avec Slony

6

Quelques raisons● Principalement pour trois raisons

– Différentes versions de PostgreSQL sur le maître et les esclaves

– Réplication d'une partie seulement d'une instance

– Autres objets sur l'esclave

● Autres raisons– Réplication en cascade

– Switchover bien plus simple

● Bref, Slony utile pour les cas plus sophistiqués

Page 7: Réplications Sophistiquées avec Slony

7

Quelques exemples

● Cascade● Réplication croisée● Répartition de charge● Avec des objets supplémentaires sur l'esclave

Page 8: Réplications Sophistiquées avec Slony

8

Cascade

● Un centre à Paris, déjà redondé– Un maître

– Deux esclaves

● Un nouveau centre à Lyon

Page 9: Réplications Sophistiquées avec Slony

9

Cascade – une solution

● Ajouter un esclave au maître

● Mais– charge supplémentaire au niveau du maître

Page 10: Réplications Sophistiquées avec Slony

10

Cascade – une meilleure solution

● Ajouter un esclave à l'esclave

● Décharge le maître● Ne pose pas de problème pour un failover ou

un switchover

Page 11: Réplications Sophistiquées avec Slony

11

Cascade – pour aller plus loin

● Ajoutons des esclaves aux esclaves

Page 12: Réplications Sophistiquées avec Slony

12

Réplication croisée

● Grande chaîne de magasins● La maison mère gère le catalogue

– Nouveaux produits

– Changement de prix

● Les magasins gèrent leur stocks● Les magasins ont besoin rapidement du

changement tarifaire de la maison mère● La maison mère a besoin de statistiques sur

les stocks des magasins

Page 13: Réplications Sophistiquées avec Slony

13

Réplication croisée - catalogue● Première action : partager le catalogue

● Toute modification arrive rapidement aux magasins

Page 14: Réplications Sophistiquées avec Slony

14

Réplication croisée - stocks● Deuxième action : partager les stocks

● Tout changement dans les stocks arrivent pratiquement immédiatement au central

Page 15: Réplications Sophistiquées avec Slony

15

Répartition de charge

● Grand nombre de bases● Plus ou moins volumineuses● Plus ou moins chargés● Toutes sur un serveur surchargé

● Répartition de charge demandée● Mais sans pgPool

Page 16: Réplications Sophistiquées avec Slony

16

Répartition de charge – état initial

● Un serveur avec six bases de clients

Page 17: Réplications Sophistiquées avec Slony

17

Répartition de charge – 2 serveurs

● Ajouter un serveur

● 2 avantages– Répartition de charge

– Et deuxième serveur disponible

Page 18: Réplications Sophistiquées avec Slony

18

Répartition de charge – autres avantages

● Facilite les mises à jour majeures● Facilite la maintenance d'un serveur● L'intégration de pgBouncer améliore encore le

système– Bascule plus simple

– Avec moins de configuration

Page 19: Réplications Sophistiquées avec Slony

19

Autres objets sur l'esclave

● BI/Reporting– Ajout de tables de travail

– Ajout d'index

● Statistiques– Ajout de trigger de calcul

Page 20: Réplications Sophistiquées avec Slony

20

Autres objets - exemple

● Réplication de trois

tables du maître● 3 index specifiques et

deux tables de travail

sur l'esclave

Page 21: Réplications Sophistiquées avec Slony

21

Conclusion

● Réplication interne de PostgreSQL– Parfaite pour des systèmes simples

● Réplication Slony à privilégier pour les systèmes complexes

– Cascade

– Réplication croisée

– Ajout d'objets sur l'esclave

– Etc.