Your SlideShare is downloading. ×
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
PostgreSQL Transformando um elefante numa manada
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

PostgreSQL Transformando um elefante numa manada

4,198

Published on

Palestra realizada no 1° Seminário de Inovações Tecnológicas em Cluster e Grid no Governo Federal em dezembro de 2005 sobre técnicas de replicação no PostgreSQL

Palestra realizada no 1° Seminário de Inovações Tecnológicas em Cluster e Grid no Governo Federal em dezembro de 2005 sobre técnicas de replicação no PostgreSQL

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,198
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
130
Comments
0
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. por Fábio Telles Rodriguez PostgreSQL Transformando um elefante numa manada 15 de Dezembro de 2005
  • 2. Agenda
    • Cluster em banco de dados - Stand By
    • Tipos de replicação - Bancos de dados distribuídos
    • Slony-I
    • PG_Pool
    • PG_Cluster
    • Commit em duas fases
    • Dúvidas
  • 3.
    • Alta disponibilidade, tolerância a falhas
      • Stand By
      • Replicação
    • Balanceamento de carga, aumento de desempenho
      • Pool de conexões
      • Replicação Master/Slave
      • Banco de dados Distribuídos (dblink)
      • Cluster de Storage
    Cluster em Bancos de Dados
  • 4.
    • Vantagens
      • Nativo a partir do PostgreSQL 8.0
      • Simples de implementar
      • Baixo impacto na rede e no processamento
    • Desvantagens
      • Banco em Stand By não pode ser utilizado
      • Tempo de recuperação do Stand By
      • Implementação obrigatória de um agrupamento de Bancos de Dados inteiro.
    Stand By
  • 5.
    • Master/Slave assíncrona:
      • Permite Tolerância a falhas com perda das últimas transações;
      • Permite a distribuição da carga nas operações de leitura;
      • Pode gerar inconsistência nos Slaves em relação ao Master;
      • Gera tráfego considerável na rede.
    Tipos de Replicação
  • 6.
    • Master/Slave síncrona:
      • Permite Tolerância a falhas;
      • Permite a distribuição da carga nas operações de leitura;
      • Garante a consistência entre as réplicas;
      • Gera tráfego alto na rede.
    Tipos de Replicação
  • 7.
    • Multi Master síncrona:
      • Garante a consistência entre as réplicas;
      • Diminui a velocidade das transações, pois exige que ela seja confirmada em todas as réplicas;
      • Permite o balanceamento de carga;
      • Permite a tolerância a falhas;
      • Gera alto tráfego na rede.
    Tipos de Replicação
  • 8.
    • “ Multi Master ” assíncrona:
      • Necessita de uma base central;
      • Realiza sincronização esporádica, com uma base central;
      • Gera inconsistências locais;
      • Aplicação tem de ser desenvolvida para este fim;
      • Utilizado em aplicações instaladas em computadores portáteis;
    Tipos de Replicação
  • 9.
    • Cada site armazena dados relativo ao seu contexto;
    • Cada site tem autonomia em relação aos demais;
    • Operações locais são mais rápidas;
    • SELECTs envolvendo dados de outros sites mais lentos e exigem otimização específica;
    • Transações evolvendo dados de outros sites necessitam de controle de transação específico.
    • Através de alterações no modelo físico, é possível tornar o modelo lógico transparente para a aplicação
    Bancos Distribuídos
  • 10.
    • Projeto de replicação Oficial do PostgreSQL;
    • Replicação Master/Slave assíncrona;
    • Tolerância a falhas com possível perda das últimas transações;
    • Permite o cascateamento de replicas diminuindo o impacto na rede;
    • Permite a criação de DUMPs que permitem a replicação para sincronia por meios diversos.
    Slony-I
  • 11.
    • Replica Tabelas e Sequências;
    • Permite a execução de DDL de um ponto central para todas as réplicas;
    • Utiliza Triggers e um Daemon chamado Slonik em cada réplica;
    • Otimização na replicação de dados redundantes.
    Slony-I
  • 12.
    • Realiza um Pool de conexões ideal para aplicações WEB
    • Aplicações se conectam ao PG_Pool ao invés do PostgreSQL de forma transparente;
    • Replicação Master/Slave síncrona para até 2 servidores
    • Possui um load balance para consultas;
    • Implementação obrigatória de um agrupamento de Bancos de Dados inteiro.
    PG_Pool
  • 13.
    • Pode ser instalado num servidor separado dos bancos de dados, sem a necessidade de nenhuma configuração nestes.
    • Replicação de seqüência exige lock de tabela;
    • Controle de acesso do pg_hba.conf não pode ser utilizado;
    • Permite se conectar a um servidor PostgreSQL replicado pelo Slony-I.
    PG_Pool
  • 14.
    • Replicação Multi Master síncrona;
    • Balanceamento de carga e tolerância a falhas;
    • Replica tabelas e sequências;
    • Sincroniza bases que tenham perdido a sincronia através do rsync;
    • Utiliza um servidor como Load Balance e um ou mais servidores como Replicadores e cada nó possui uma versão modificada do PostgreSQL;
    • Utiliza um mínimo de 3 nós;
    • Instalação é relativamente complexa.
    PG_Cluster
  • 15.
    • Disponível a partir da versão 8.1 do PostgreSQL;
    • Permite a distribuição de uma transação para vários Bancos de Dados distintos através de uma WAN;
    • Garante a integridade transações em replicações síncronas;
    Commit em duas fases
  • 16.
    • Apresentação de Bruce Momjiam:
      • http://candle.pha.pa.us/main/writings/pgsql/replication.pdf
    • Slony-I
      • http://gborg.postgresql.org/project/slony1/projdisplay.php
      • http://www.ntlug.org/~cbbrowne/slony.html
    • PG_Pool
      • http://pgpool.projects.postgresql.org/
      • http://pgfoundry.org/projects/pgpool/
    • PG_Cluster
      • http://pgcluster.projects.postgresql.org/index.html
    Links
  • 17.
    • Listas de discussão:
      • [email_address]
      • [email_address]
    • IRC irc.freenodes.net:
      • #POSTGRESQL
      • #POSTGRESQL-BR
    Dúvidas

×