Compreensão do processo de replicação

Objective

After completing this lesson, you will be able to descreva os componentes e as tecnologias de replicação.

O processo de replicação

A replicação geralmente significa copiar dados diretamente de um sistema para outro em tempo real. Normalmente, isso é feito no nível da tabela.

Existem alguns motivos pelos quais você pode considerar a replicação, incluindo:

  • Você quer duplicar dados em outro sistema que tenha diferentes ferramentas e opções de tecnologia. Este sistema permitirá que você crie uma aplicação específica.

  • Você quer distribuir dados para um ou mais objetivos em tempo real para compartilhar informações.

  • Você pretende migrar dados de um sistema antigo para um sistema novo.

  • Você tem acessado dados remotamente (sem persistência), mas o desempenho se tornou inaceitável, talvez devido ao aumento do volume de dados.

Para configurar a replicação de dados usando o SAP HANA, é importante entender o processo subjacente e os objetos de banco de dados associados a ele.

Componentes de replicação

Para replicar uma tabela original, é necessário configurar o acesso a essa tabela. Isso é feito criando uma fonte remota e uma tabela virtual, como descrito na unidade anterior.

Além disso, você precisa criar a tabela de destino para armazenar os dados replicados. A tabela de destino pode ter a mesma estrutura que a tabela de origem, ser um subconjunto da tabela de origem com menos colunas ou ter variações nas definições de coluna, por exemplo, para reduzir strings longas em que nem todos os caracteres são necessários.

Depois de criar a tabela virtual e a tabela de destino, você pode definir a assinatura remota. Em seguida, a tabela de destino assina as modificações efetuadas nos dados acessados pela tabela virtual.

Este slide mostra todos os componentes de replicação necessários.

Dependendo do método usado para implementar essa replicação, esses objetos (tabela virtual, tabela de destino, assinatura remota) são criados automaticamente ou devem ser criados manualmente.

Tecnologias de replicação

Dependendo do seu sistema SAP HANA: on-premise ou na nuvem e, dependendo do tipo de fonte de dados a partir da qual você deseja replicar, diferentes tecnologias de replicação estão disponíveis.

As tecnologias de replicação mais comuns são:

  • Replicação de tabela baseada em log

    Usa o redo log do banco de dados para buscar alterações na tabela de origem e reproduzi-las. Não é intrusiva, e a integridade transacional é garantida porque apenas transações confirmadas são replicadas.

  • Replicação de tabela baseada no acionador

    Os acionadores são criados no banco de dados de origem para monitorar a tabela de origem e capturar todas as linhas modificadas (atualizadas ou excluídas) e novas. Os dados capturados são armazenados em uma tabela sombra. Uma tabela de fila também é criada para registrar todas as modificações na sequência correta. Esta tecnologia é independente da versão do banco de dados de origem e pode oferecer mais funções do que a replicação baseada em log, como a replicação de grandes objetos (LOBs).

  • Replicação de arquivo

    Esta é a tecnologia implementada pelo FileAdapter e é utilizada para replicar novas linhas em um arquivo. Somente append é suportado.

Que tecnologia é usada?

Dependendo da origem e do destino, e também do adaptador selecionado, estão disponíveis diferentes tecnologias, como exibido abaixo:

Este slide mostra as diferentes tecnologias que podem ser usadas para replicação.

Nem todos os adaptadores SDI suportam replicação em tempo real. A replicação em tempo real às vezes é chamada de captura de dados de alteração em tempo real.

Alguns adaptadores usam replicação baseada em log. Estes são geralmente sufixados com Log.

Existem adaptadores que usam replicação baseada no acionador, por exemplo, HANAAdapter.

Vários adaptadores usam tecnologias proprietárias específicas, como o FileAdapter.

Alguns adaptadores necessitam de uma configuração específica no sistema fonte para implementar funcionalidades de replicação.

Se estiver replicando para um banco de dados SAP HANA on-premise, você deve usar a integração de dados inteligentes (SDI) para se conectar à fonte de dados. Mas com o banco de dados SAP HANA Cloud como destino para replicação, você também pode usar o acesso a dados inteligentes (SDA) para replicar dados de um banco de dados SAP HANA. A tecnologia utilizada é uma replicação otimizada baseada em log. Este tipo de replicação é referido como replicação de tabela remota (RTR).

Autorizações necessárias

Para implementar a replicação de tabela, são necessários alguns privilégios específicos:

  • Para o usuário especificado na definição de fonte remota:

    Acesso total no esquema de origem.

    Por exemplo, se a fonte for um banco de dados SAP HANA, o usuário deverá ter o privilégio CREATE ANY no esquema de origem.

  • Para o usuário que implementa a replicação no banco de dados SAP HANA de destino:
    • CRIAR TABELA VIRTUAL e CRIAR ASSINATURA REMOTA na fonte remota.
    • CRIAR TABELA no esquema de destino.

Etapas de implementação da replicação

Estas são as etapas básicas para implementar a replicação:

  1. Criar uma fonte remota.
  2. Crie uma tabela virtual com base na fonte remota.
  3. Crie a tabela de destino – isso pode ser feito antes das etapas 1 e 2.
  4. Defina a assinatura remota usando a tabela virtual como provedor e a tabela de destino como receptora.
  5. Enfileirar a assinatura remota, que envolve a criação de acionadores de origem, tabelas sombra e tabelas de fila para replicação baseada em acionador (somente aplicável a fontes remotas SDI).
  6. Se estiver usando fontes remotas SDI, copie os dados de origem iniciais para o destino.
  7. Distribua os dados, iniciando a captura de dados alterados em tempo real.

Nas lições a seguir, você aprenderá a implementar essas etapas usando as diferentes ferramentas do SAP HANA.