SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Replicação de dados
Vantagens e desvantagens
  Disponibilidade (+)
  Paralelismo aumentado (+): maior a chance de
  encontrar o dado no site em que a transação está
  executando
  Sobrecarga na atualização (-): garantir que as
  réplicas sejam consistentes pela propagação de
  atualizações



                                                     16
Definição
Replicação é a manutenção de cópias idênticas
de dados em locais diferentes.
Segundo [Ikematu 2005], o objetivo de um
mecanismo de replicação de dados é permitir a
manutenção de várias cópias idênticas de um
mesmo dado em vários sistemas gerenciadores
de banco de dados (SGBD).



                                            17
Tipos de replicação
Assíncrona: se um banco é alterado, a
alteração será propagada e aplicada para
outro(s) banco(s) num segundo passo, dentro
de uma transação separada sendo que esta
poderá ocorrer segundos, minutos, horas ou
até dias depois
Síncrona: todas as cópias ou replicações de
dados serão feitas no instante da sincronização
e consistência. Se alguma cópia do banco é
alterada, essa alteração será imediatamente
aplicada a todos os outros bancos             18
Técnicas de replicação
Master-slave (ou Single-Master Primary-Copy)
  Mantém uma das réplicas como sendo a primária
  As transações são efetuadas primeiramente na
  réplica primária e depois as alterações são
  distribuídas para as réplicas secundárias, na
  mesma ordem em que ela executou
  Pode ser tanto síncrona quanto assíncrona.




                                                  19
Técnicas de replicação
Multimaster (ou Update Everywhere)
  As transações de escrita podem ser submetidas a
  qualquer servidor, pois não existe uma cópia
  primária.
  No entanto, as alterações devem ser propagadas
  para todos os servidores que possuam cópia dos
  dados, o que aumenta a complexidade no controle
  de transações e exige um mecanismo mais
  elaborado de replicação
  Possibilita tanto replicação síncrona como
  assíncrona.
                                                    20
Ferramentas
Slony (integrado ao pgAdmin)
pgreplicator.sourceforge.net
PGCluster
Mammoth
Postgres-R




                               21
Comparação




             22
Slony-I
Integrado na árvore de objetos
do pgAdmin


Indicação do path da
ferramenta no menu
File->Options



                                 23
Passos
Passo 1: criação do cluster no nó mestre
  Conceito de nó adminis-
  trativo

  PgAdmin armazena infor-
  mações de como encon-
  trar cada nó do cluster




                                           24
Passos
Passo 2: Adicionar nós ao cluster (escravos)
  Processo de junção (join)




                                               25
Passos
Passo 3: Configurar paths de replicação entre
os nodos, para que possam se comunicar
Password no conninf ou no arquivo pgpass.conf
da pasta %APPDATA%postgresqlpgpass.conf
Estrutura do arquivo:
hostname:port:database:
  username:password
Paths em cada nodo
para todos os outros
                                                26
Passos
Passo 4: Criação de listens
A partir da versão 1.1 do Slony-I, eles são
criados automaticamente quando os paths são
definidos




                                          27
Passos
Passo 5
  Criação do conjunto de replicação (no nodo mestre)




                                                  28
Passos
Passo 6
Definir a tabela replicada
Se a tabela tiver triggers, elas devem ser
desabilitadas no nodo escravo
A tabela deve ter um
índice único (ou chave
primária)



                                             29
Passos
Definir a seqüência da tabela a ser replicada




                                                30
Passos
Passo 7
Definir a assinatura (devem, a partir da versão
1.1 ser criadas no nodo mestre)




                                                  31
Passos
Iniciar os daemons
C:Program FilesPostgreSQL8.2bin>slon
meucluster "dbname=postgres user=postgres
host=localhost port=5432 password=senha"




                                            32

Weitere ähnliche Inhalte

Was ist angesagt?

Proteção e segurança de sistemas operacionais
Proteção e segurança de sistemas operacionaisProteção e segurança de sistemas operacionais
Proteção e segurança de sistemas operacionaiscleber_opo
 
Plano Diretor de Sistemas de Informação
Plano Diretor de Sistemas de InformaçãoPlano Diretor de Sistemas de Informação
Plano Diretor de Sistemas de Informaçãoguest8ae332
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Renato William
 
Conhecendo o funcionamento do sistema operacional
Conhecendo o funcionamento do sistema operacionalConhecendo o funcionamento do sistema operacional
Conhecendo o funcionamento do sistema operacionalDaiana de Ávila
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosHélio Jovo
 
Redes de Computadores - Camada de Aplicação
Redes de Computadores - Camada de AplicaçãoRedes de Computadores - Camada de Aplicação
Redes de Computadores - Camada de AplicaçãoLuís Felipe de Andrade
 
Arquitetura interna do computador
Arquitetura interna do computadorArquitetura interna do computador
Arquitetura interna do computadorAndleloli
 
Aula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoAula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoJocelma Rios
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaVictor Hazin da Rocha
 
Introdução aos Sistemas Operativos
Introdução aos Sistemas OperativosIntrodução aos Sistemas Operativos
Introdução aos Sistemas OperativosJorge Louro
 
Bancos de dados móveis
Bancos de dados móveisBancos de dados móveis
Bancos de dados móveisUFMA
 
Sistemas operativos 10º
Sistemas operativos 10ºSistemas operativos 10º
Sistemas operativos 10ºteacherpereira
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesMarco Martins
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoThiago Marinho
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de SistemasGuilherme
 
Placas GráFicas Realease1
Placas GráFicas Realease1Placas GráFicas Realease1
Placas GráFicas Realease1spidi_pt
 

Was ist angesagt? (20)

Proteção e segurança de sistemas operacionais
Proteção e segurança de sistemas operacionaisProteção e segurança de sistemas operacionais
Proteção e segurança de sistemas operacionais
 
Cidr calculo de subrede
Cidr   calculo de subredeCidr   calculo de subrede
Cidr calculo de subrede
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Plano Diretor de Sistemas de Informação
Plano Diretor de Sistemas de InformaçãoPlano Diretor de Sistemas de Informação
Plano Diretor de Sistemas de Informação
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
Conhecendo o funcionamento do sistema operacional
Conhecendo o funcionamento do sistema operacionalConhecendo o funcionamento do sistema operacional
Conhecendo o funcionamento do sistema operacional
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Capítulo 2 modelos de redes
Capítulo 2   modelos de redesCapítulo 2   modelos de redes
Capítulo 2 modelos de redes
 
Redes de Computadores - Camada de Aplicação
Redes de Computadores - Camada de AplicaçãoRedes de Computadores - Camada de Aplicação
Redes de Computadores - Camada de Aplicação
 
Arquitetura interna do computador
Arquitetura interna do computadorArquitetura interna do computador
Arquitetura interna do computador
 
Aula 4 - Sistemas de Informação
Aula 4 - Sistemas de InformaçãoAula 4 - Sistemas de Informação
Aula 4 - Sistemas de Informação
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação Indireta
 
Introdução aos Sistemas Operativos
Introdução aos Sistemas OperativosIntrodução aos Sistemas Operativos
Introdução aos Sistemas Operativos
 
Bancos de dados móveis
Bancos de dados móveisBancos de dados móveis
Bancos de dados móveis
 
Sistemas operativos 10º
Sistemas operativos 10ºSistemas operativos 10º
Sistemas operativos 10º
 
Vantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redesVantagens e desvantagens em topologias de redes
Vantagens e desvantagens em topologias de redes
 
Roteadores
RoteadoresRoteadores
Roteadores
 
Apresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - ConceitoApresentação Sistemas Distribuídos - Conceito
Apresentação Sistemas Distribuídos - Conceito
 
Análise e Projeto de Sistemas
Análise e Projeto de SistemasAnálise e Projeto de Sistemas
Análise e Projeto de Sistemas
 
Placas GráFicas Realease1
Placas GráFicas Realease1Placas GráFicas Realease1
Placas GráFicas Realease1
 

Andere mochten auch

Sistemas Distribuídos - Replicação de Banco de Dados
Sistemas Distribuídos - Replicação de Banco de DadosSistemas Distribuídos - Replicação de Banco de Dados
Sistemas Distribuídos - Replicação de Banco de DadosValdir Junior
 
Cluster e replicação em banco de dados
Cluster e replicação em banco de dadosCluster e replicação em banco de dados
Cluster e replicação em banco de dadosSuissa
 
Dados
DadosDados
Dadosunesp
 
Cluster ha com banco de dados
Cluster ha com banco de dadosCluster ha com banco de dados
Cluster ha com banco de dadosMarcio Jonnes
 
Database Class - Pontos de defasagem e questões de brinde.
Database Class - Pontos de defasagem e questões de brinde.Database Class - Pontos de defasagem e questões de brinde.
Database Class - Pontos de defasagem e questões de brinde.Jann Claude Mousquer
 
Banco de Dados Distribuidos
Banco de Dados DistribuidosBanco de Dados Distribuidos
Banco de Dados DistribuidosAndré Fachin
 
Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Evandro Júnior
 
12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídosBruno Felipe
 
Banco de Dados Distribuídos - MySql
Banco de Dados Distribuídos - MySqlBanco de Dados Distribuídos - MySql
Banco de Dados Distribuídos - MySqlAdail Viana Neto
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosrobsons75
 
Arquitectura e modelos de sistemas distribuidos
Arquitectura e modelos de sistemas distribuidosArquitectura e modelos de sistemas distribuidos
Arquitectura e modelos de sistemas distribuidosPortal_do_Estudante_SD
 
Delineamento experimental básico
Delineamento experimental básicoDelineamento experimental básico
Delineamento experimental básicoCaio Maximino
 
Aula 1 introdução a base de dados
Aula 1   introdução a base de dadosAula 1   introdução a base de dados
Aula 1 introdução a base de dadosHélio Martins
 
Aula 2 introdução a sistemas distribuídos
Aula 2   introdução a sistemas distribuídosAula 2   introdução a sistemas distribuídos
Aula 2 introdução a sistemas distribuídosEduardo de Lucena Falcão
 
Autocorrelação espacial - Prática no GEODA
Autocorrelação espacial - Prática no GEODAAutocorrelação espacial - Prática no GEODA
Autocorrelação espacial - Prática no GEODAVitor Vieira Vasconcelos
 

Andere mochten auch (20)

Sistemas Distribuídos - Replicação de Banco de Dados
Sistemas Distribuídos - Replicação de Banco de DadosSistemas Distribuídos - Replicação de Banco de Dados
Sistemas Distribuídos - Replicação de Banco de Dados
 
Segurança em sistemas distribuidos
Segurança em sistemas distribuidosSegurança em sistemas distribuidos
Segurança em sistemas distribuidos
 
Cluster e replicação em banco de dados
Cluster e replicação em banco de dadosCluster e replicação em banco de dados
Cluster e replicação em banco de dados
 
Dados
DadosDados
Dados
 
Cluster ha com banco de dados
Cluster ha com banco de dadosCluster ha com banco de dados
Cluster ha com banco de dados
 
Database Class - Pontos de defasagem e questões de brinde.
Database Class - Pontos de defasagem e questões de brinde.Database Class - Pontos de defasagem e questões de brinde.
Database Class - Pontos de defasagem e questões de brinde.
 
PostgreSQL Conceitos e aplicações
PostgreSQL  Conceitos e aplicaçõesPostgreSQL  Conceitos e aplicações
PostgreSQL Conceitos e aplicações
 
Banco de Dados Distribuidos
Banco de Dados DistribuidosBanco de Dados Distribuidos
Banco de Dados Distribuidos
 
Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)Aula 3 (alta disponibilidade)
Aula 3 (alta disponibilidade)
 
Banco de dados distribuídos
Banco de dados distribuídosBanco de dados distribuídos
Banco de dados distribuídos
 
12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos12 objetivos de banco de dados distribuídos
12 objetivos de banco de dados distribuídos
 
Banco de Dados Distribuídos - MySql
Banco de Dados Distribuídos - MySqlBanco de Dados Distribuídos - MySql
Banco de Dados Distribuídos - MySql
 
Postgre Sql
Postgre SqlPostgre Sql
Postgre Sql
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
Arquitectura e modelos de sistemas distribuidos
Arquitectura e modelos de sistemas distribuidosArquitectura e modelos de sistemas distribuidos
Arquitectura e modelos de sistemas distribuidos
 
Delineamento experimental básico
Delineamento experimental básicoDelineamento experimental básico
Delineamento experimental básico
 
Aula 1 introdução a base de dados
Aula 1   introdução a base de dadosAula 1   introdução a base de dados
Aula 1 introdução a base de dados
 
Aula 2 introdução a sistemas distribuídos
Aula 2   introdução a sistemas distribuídosAula 2   introdução a sistemas distribuídos
Aula 2 introdução a sistemas distribuídos
 
Autocorrelação espacial - Prática no GEODA
Autocorrelação espacial - Prática no GEODAAutocorrelação espacial - Prática no GEODA
Autocorrelação espacial - Prática no GEODA
 
Autocorrelação espacial
Autocorrelação espacialAutocorrelação espacial
Autocorrelação espacial
 

Ähnlich wie Replicação de dados

Apresentação Monografia
Apresentação MonografiaApresentação Monografia
Apresentação MonografiaLeon Homar
 
Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2Daniel
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosFrederico Madeira
 
pgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLpgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLelliando dias
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas OperacionaisAdir Kuhn
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisCid de Andrade
 
Certificação Linux: Conhecendo o caminho das pedras - Bruna Griebeler
Certificação Linux: Conhecendo o caminho das pedras - Bruna GriebelerCertificação Linux: Conhecendo o caminho das pedras - Bruna Griebeler
Certificação Linux: Conhecendo o caminho das pedras - Bruna GriebelerTchelinux
 
(03) shell e comandos basicos[1]
(03) shell e comandos basicos[1](03) shell e comandos basicos[1]
(03) shell e comandos basicos[1]Anderson Lago
 
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafDesenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafTchelinux
 
Metasploit-1_atualizacao.pdf
Metasploit-1_atualizacao.pdfMetasploit-1_atualizacao.pdf
Metasploit-1_atualizacao.pdffabio154906
 
Componentes do Sistema operacional
Componentes do Sistema operacional Componentes do Sistema operacional
Componentes do Sistema operacional Rodrigo Rodrigues
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxguest7a481e8
 

Ähnlich wie Replicação de dados (20)

Apresentação Monografia
Apresentação MonografiaApresentação Monografia
Apresentação Monografia
 
Linux4all#2
Linux4all#2Linux4all#2
Linux4all#2
 
Minicurso Linux
Minicurso Linux Minicurso Linux
Minicurso Linux
 
Cluster
ClusterCluster
Cluster
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos Básicos
 
Cluster
ClusterCluster
Cluster
 
pgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQLpgBouncer: um aglomerador de conexões para PostgreSQL
pgBouncer: um aglomerador de conexões para PostgreSQL
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Igor Oliveira - Puppet
Igor Oliveira - PuppetIgor Oliveira - Puppet
Igor Oliveira - Puppet
 
F oc aula_04
F oc aula_04F oc aula_04
F oc aula_04
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas Operacionais
 
Certificação Linux: Conhecendo o caminho das pedras - Bruna Griebeler
Certificação Linux: Conhecendo o caminho das pedras - Bruna GriebelerCertificação Linux: Conhecendo o caminho das pedras - Bruna Griebeler
Certificação Linux: Conhecendo o caminho das pedras - Bruna Griebeler
 
(03) shell e comandos basicos[1]
(03) shell e comandos basicos[1](03) shell e comandos basicos[1]
(03) shell e comandos basicos[1]
 
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafDesenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
 
Metasploit-1_atualizacao.pdf
Metasploit-1_atualizacao.pdfMetasploit-1_atualizacao.pdf
Metasploit-1_atualizacao.pdf
 
Componentes do Sistema operacional
Componentes do Sistema operacional Componentes do Sistema operacional
Componentes do Sistema operacional
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Unidade5 roteiro
Unidade5 roteiroUnidade5 roteiro
Unidade5 roteiro
 

Mehr von elliando dias

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slideselliando dias
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScriptelliando dias
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structureselliando dias
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de containerelliando dias
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agilityelliando dias
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Librarieselliando dias
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!elliando dias
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Webelliando dias
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduinoelliando dias
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorceryelliando dias
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Designelliando dias
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makeselliando dias
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.elliando dias
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebookelliando dias
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Studyelliando dias
 

Mehr von elliando dias (20)

Clojurescript slides
Clojurescript slidesClojurescript slides
Clojurescript slides
 
Why you should be excited about ClojureScript
Why you should be excited about ClojureScriptWhy you should be excited about ClojureScript
Why you should be excited about ClojureScript
 
Functional Programming with Immutable Data Structures
Functional Programming with Immutable Data StructuresFunctional Programming with Immutable Data Structures
Functional Programming with Immutable Data Structures
 
Nomenclatura e peças de container
Nomenclatura  e peças de containerNomenclatura  e peças de container
Nomenclatura e peças de container
 
Geometria Projetiva
Geometria ProjetivaGeometria Projetiva
Geometria Projetiva
 
Polyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better AgilityPolyglot and Poly-paradigm Programming for Better Agility
Polyglot and Poly-paradigm Programming for Better Agility
 
Javascript Libraries
Javascript LibrariesJavascript Libraries
Javascript Libraries
 
How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!How to Make an Eight Bit Computer and Save the World!
How to Make an Eight Bit Computer and Save the World!
 
Ragel talk
Ragel talkRagel talk
Ragel talk
 
A Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the WebA Practical Guide to Connecting Hardware to the Web
A Practical Guide to Connecting Hardware to the Web
 
Introdução ao Arduino
Introdução ao ArduinoIntrodução ao Arduino
Introdução ao Arduino
 
Minicurso arduino
Minicurso arduinoMinicurso arduino
Minicurso arduino
 
Incanter Data Sorcery
Incanter Data SorceryIncanter Data Sorcery
Incanter Data Sorcery
 
Rango
RangoRango
Rango
 
Fab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine DesignFab.in.a.box - Fab Academy: Machine Design
Fab.in.a.box - Fab Academy: Machine Design
 
The Digital Revolution: Machines that makes
The Digital Revolution: Machines that makesThe Digital Revolution: Machines that makes
The Digital Revolution: Machines that makes
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.Hadoop - Simple. Scalable.
Hadoop - Simple. Scalable.
 
Hadoop and Hive Development at Facebook
Hadoop and Hive Development at FacebookHadoop and Hive Development at Facebook
Hadoop and Hive Development at Facebook
 
Multi-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case StudyMulti-core Parallelization in Clojure - a Case Study
Multi-core Parallelization in Clojure - a Case Study
 

Kürzlich hochgeladen

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsDanilo Pinotti
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfNatalia Granato
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx2m Assessoria
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx2m Assessoria
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx2m Assessoria
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploDanilo Pinotti
 

Kürzlich hochgeladen (6)

Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
Assessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdfAssessement Boas Praticas em Kubernetes.pdf
Assessement Boas Praticas em Kubernetes.pdf
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 
Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 

Replicação de dados

  • 1. Replicação de dados Vantagens e desvantagens Disponibilidade (+) Paralelismo aumentado (+): maior a chance de encontrar o dado no site em que a transação está executando Sobrecarga na atualização (-): garantir que as réplicas sejam consistentes pela propagação de atualizações 16
  • 2. Definição Replicação é a manutenção de cópias idênticas de dados em locais diferentes. Segundo [Ikematu 2005], o objetivo de um mecanismo de replicação de dados é permitir a manutenção de várias cópias idênticas de um mesmo dado em vários sistemas gerenciadores de banco de dados (SGBD). 17
  • 3. Tipos de replicação Assíncrona: se um banco é alterado, a alteração será propagada e aplicada para outro(s) banco(s) num segundo passo, dentro de uma transação separada sendo que esta poderá ocorrer segundos, minutos, horas ou até dias depois Síncrona: todas as cópias ou replicações de dados serão feitas no instante da sincronização e consistência. Se alguma cópia do banco é alterada, essa alteração será imediatamente aplicada a todos os outros bancos 18
  • 4. Técnicas de replicação Master-slave (ou Single-Master Primary-Copy) Mantém uma das réplicas como sendo a primária As transações são efetuadas primeiramente na réplica primária e depois as alterações são distribuídas para as réplicas secundárias, na mesma ordem em que ela executou Pode ser tanto síncrona quanto assíncrona. 19
  • 5. Técnicas de replicação Multimaster (ou Update Everywhere) As transações de escrita podem ser submetidas a qualquer servidor, pois não existe uma cópia primária. No entanto, as alterações devem ser propagadas para todos os servidores que possuam cópia dos dados, o que aumenta a complexidade no controle de transações e exige um mecanismo mais elaborado de replicação Possibilita tanto replicação síncrona como assíncrona. 20
  • 6. Ferramentas Slony (integrado ao pgAdmin) pgreplicator.sourceforge.net PGCluster Mammoth Postgres-R 21
  • 8. Slony-I Integrado na árvore de objetos do pgAdmin Indicação do path da ferramenta no menu File->Options 23
  • 9. Passos Passo 1: criação do cluster no nó mestre Conceito de nó adminis- trativo PgAdmin armazena infor- mações de como encon- trar cada nó do cluster 24
  • 10. Passos Passo 2: Adicionar nós ao cluster (escravos) Processo de junção (join) 25
  • 11. Passos Passo 3: Configurar paths de replicação entre os nodos, para que possam se comunicar Password no conninf ou no arquivo pgpass.conf da pasta %APPDATA%postgresqlpgpass.conf Estrutura do arquivo: hostname:port:database: username:password Paths em cada nodo para todos os outros 26
  • 12. Passos Passo 4: Criação de listens A partir da versão 1.1 do Slony-I, eles são criados automaticamente quando os paths são definidos 27
  • 13. Passos Passo 5 Criação do conjunto de replicação (no nodo mestre) 28
  • 14. Passos Passo 6 Definir a tabela replicada Se a tabela tiver triggers, elas devem ser desabilitadas no nodo escravo A tabela deve ter um índice único (ou chave primária) 29
  • 15. Passos Definir a seqüência da tabela a ser replicada 30
  • 16. Passos Passo 7 Definir a assinatura (devem, a partir da versão 1.1 ser criadas no nodo mestre) 31
  • 17. Passos Iniciar os daemons C:Program FilesPostgreSQL8.2bin>slon meucluster "dbname=postgres user=postgres host=localhost port=5432 password=senha" 32