Recomendado, 2024

Escolha Do Editor

Diferença entre espelhamento e replicação

Espelhamento e replicação são os termos de alguma forma relacionados à cópia de dados em um DBMS. A diferença anterior entre espelhamento e replicação é que o espelhamento se refere a copiar um banco de dados para outro local, enquanto a replicação inclui a cópia de dados e objetos de banco de dados de um banco de dados para outro.

Tanto o espelhamento quanto a replicação são vantajosos e aumentam a disponibilidade e o desempenho dos dados ou do banco de dados.

Gráfico de comparação

Base para comparaçãoEspelhamentoReplicação
BasicCriação de uma cópia do banco de dados em um local diferente (máquina).Criação de dados e objeto de banco de dados para melhorar as operações de distribuição.
Realizado emBase de dadosApenas dados e objetos de banco de dados
Localizado emMáquina diferenteBanco de dados diferente
CustoMuito caroBarato
Banco de dados distribuídoNenhuma provisão para suporte de banco de dados distribuídoSuporta banco de dados distribuído

Definição de Espelhamento

O espelhamento é o processo de gerar várias cópias de bancos de dados e também é conhecido como sombreamento . Essas cópias do banco de dados geralmente estão localizadas em máquinas diferentes. Se algum servidor principal falhar ou for acionado para manutenção, nesse instante, o sistema poderá fazer o failover automaticamente para o banco de dados espelhado. A qualquer momento, apenas uma cópia pode ser acessada.

O acoplamento rígido entre o banco de dados principal e o banco de dados espelhado é estabelecido com a ajuda do envio de blocos do log de transações para o banco de dados espelhado. Em caso de qualquer falha, também é capaz de restaurar os dados copiando-os de um banco de dados para outro. Quando ocorre um failover, o banco de dados espelhado se torna o banco de dados principal.

O espelhamento incorpora o refazer da operação de atualização, inserção e exclusão que é confirmada em um banco de dados primário no banco de dados espelhado sem qualquer atraso. Em um modo totalmente seguro, uma transação não pode ser confirmada até que os registros de log da transação tenham chegado ao disco no espelho. O espelhamento não suporta o banco de dados distribuído.

Definição de replicação

Replicação é o processo de criação de dados redundantes e objetos de banco de dados em diferentes bancos de dados para melhorar a disponibilidade dos dados. Ele é capaz de reunir os dados corporativos de sites geograficamente dispersos e distribuir os dados para usuários remotos em redes locais ou na Internet. Aumenta a execução dos comandos paralelos.

No Microsoft SQL Server, o publicador é uma entidade que fornece os dados para replicação para outros servidores. O assinante é um servidor que geralmente recebe os dados replicados de um editor.

Existem três tipos de opções disponíveis no Microsoft SQL Server para operação de replicação: replicação de instantâneo, replicação de transação e replicação de mesclagem.

  • A replicação de instantâneos copia os dados e os objetos do banco de dados da mesma forma que aparecem em um instante.
  • A replicação de transação gera um instantâneo inicial dos dados para o assinante e, então, sua modificação incremental é enviada ao assinante como um processo discreto. Há dois processos de replicação definidos na replicação transacional, ou seja, agente de leitura de log e agente de distribuição. O antigo leitor de log de processo lê as transações do log de transações do banco de dados, aplica um filtro opcional e as armazena em um banco de dados de distribuição, que se assemelha a um armazenamento de suporte de fila e encaminhar mecanismo de replicação transacional. O último agente de distribuição de processos encaminha as alterações para cada assinante.
  • A replicação de mesclagem permite que cada réplica seja autogovernada, seja on-line ou off-line. Sempre que qualquer alteração é cometida nos metadados do objeto publicado, ela é rastreada até o final do assinante e do editor. Não replica a instância de dados e objetos de banco de dados.

Os dados podem ser replicados usando acionadores de banco de dados com a ajuda de algumas ferramentas específicas. O procedimento armazenado especializado no banco de dados sinaliza ao agente de replicação para capturar e transportar as alterações. A replicação também pode ser empregada com espelhamento de banco de dados, que deve ter um distribuidor.

Principais diferenças entre espelhamento e replicação

  1. O espelhamento envolve a duplicação de um banco de dados armazenado em máquinas diferentes, em que o banco de dados original é conhecido como banco de dados principal e o banco de dados copiado é conhecido como um espelho. Por outro lado, replicação é a duplicação de dados e objetos de banco de dados armazenados no local diferente para melhorar o desempenho do banco de dados de distribuição.
  2. O espelhamento é executado no banco de dados enquanto a replicação é implementada em objetos de dados e banco de dados.
  3. O banco de dados espelho geralmente pode ser encontrado na máquina diferente de seu banco de dados principal. Como contra, os dados replicados e objetos de banco de dados são armazenados em outro banco de dados.
  4. O espelhamento dos custos do banco de dados mais altos que a replicação.
  5. O espelhamento não suporta ambiente distribuído, enquanto a replicação foi criada para o banco de dados distribuído.

Conclusão

Espelhamento e replicação são os métodos que ajudam a improvisar a disponibilidade, confiabilidade e desempenho dos dados. Mas, o espelhamento envolve cópias redundantes de um banco de dados, enquanto a replicação inclui a duplicação de dados e objetos de banco de dados, como tabelas, procedimentos armazenados, funções definidas pelo usuário, visualizações, visualizações materializadas, etc.

Top