Banco de dados do SQL Server de origem

Esta página contém informações sobre:

  • O comportamento de como o Datastream lida com os dados extraídos de um banco de dados de origem do SQL Server.
  • As versões dos bancos de dados do SQL Server que o Datastream aceita.
  • Limitações conhecidas para o uso do banco de dados do SQL Server como fonte.

Comportamento

O Datastream rastreia alterações na linguagem de manipulação de dados (DML) usando uma dos seguintes métodos de CDC:

Registros de transações

Ao usar esse método de CDC, o Datastream lê as alterações na origem diretamente dos registros de transações. Esse método exige menos recursos e permite a recuperação de dados mais rápida, mas tem mais limitações.

Para evitar a perda de dados, é importante que os registros não sejam truncados O Datastream os lê. Por outro lado, se você mantiver os arquivos de registro de muito tempo, elas ocupam espaço de armazenamento, o que pode fazer com que o banco de dados para entrar no modo somente leitura.

Para garantir que o leitor do CDC tenha tempo suficiente para ler os registros, permitindo que o truncamento de registro libere espaço de armazenamento, é necessário aplicar outras etapas de configuração, como alterar intervalos de pesquisa e configurar uma proteção de truncamento. Essas etapas oferecem uma camada adicional de proteção para garantir que o Datastream possa ler os dados mesmo que haja inatividade no Datastream ou um problema de conectividade entre o banco de dados de origem e o Datastream.

Para instruções detalhadas sobre como aplicar essas medidas adicionais, consulte o Configurar um banco de dados de origem do SQL Server e selecione o tipo de banco de dados.

Alterar tabelas

O método de CDC de tabelas de mudança permite que os usuários mantenham registros por um período mais curto e, assim, economizem espaço de armazenamento, mas oferece um volume menor em comparação com o método de registros de transações. O método tem menos limitações do que os registros de transações. Por exemplo, ele elimina o risco de truncamento de registro que leva a falhas permanentes nos streams e oferece suporte à replicação de tabelas criptografadas. Saiba mais em Limitações conhecidas.

Ao usar esse método de CDC, as mudanças na origem são rastreadas usando tabelas de mudança dedicadas. Os registros de transações ainda são usados, mas de forma limitada, e você não precisam retê-los por períodos mais longos. À medida que os eventos DML são aplicados tabelas de origem, as alterações são replicadas nas tabelas de alterações correspondentes. As tabelas de alteração têm a mesma estrutura das tabelas de origem, mas com recursos para incluir os metadados das alterações. Somente as transações confirmadas adicionado às tabelas de alterações, junto com o número de sequência do registro (LSN, na sigla em inglês) do uma operação de confirmação.

Versões

O Datastream é compatível com as seguintes versões e edições do SQL Server bancos de dados:

  • Autogerenciado (local ou hospedado na nuvem) usando as seguintes versões:
    • Enterprise: 2008 e versões mais recentes
    • Padrão: 2016 SP1 e mais recente
    • Desenvolvedor: 2008 e mais recente
  • Amazon RDS para SQL Server
  • Banco de Dados SQL do Azure (nível S3 e superior).

  • Cloud SQL para SQL Server

O Datastream não oferece suporte às seguintes versões dos bancos de dados do SQL Server:

  • SQL Server Standard Edition das versões 2008 a 2014
  • SQL Server Express
  • SQL Server Web

Limitações conhecidas

Limitações conhecidas para o uso do banco de dados SQL Server como fonte incluem:

  • Os streams são limitados a 10.000 tabelas.
  • Uma tabela com mais de 500 milhões de linhas não pode ser preenchida, a menos que as seguintes condições sejam atendidas:
    1. A tabela tem um índice exclusivo.
    2. Nenhuma das colunas de índice é anulável.
    3. Todas as colunas do índice são incluídas no fluxo.
  • Bancos de dados com durabilidade atrasada ou recuperação acelerada de banco de dados (ADR) ativadas não têm suporte.
  • Não há suporte para alterações de streaming em tabelas do sistema.
  • Não há suporte para a autenticação do Windows Active Directory (AD).
  • Os tipos de dados a seguir não são compatíveis e não são replicados para o destino:
    • SQL_VARIANT
    • HIERARCHYID
    • GEOMETRY
    • GEOGRAPHY
  • O Datastream replica os tipos de dados definidos pelo usuário, mas é a base tipo de dados a partir do qual você deriva o tipo definido pelo usuário que é armazenado no destino. Por exemplo, se você definir um tipo de dados USERNAME com base no VARCHAR(50), os dados são armazenados no destino como VARCHAR(50).
  • O Datastream não oferece suporte à CDC para colunas de objetos grandes (TEXT, NTEXT, XML, IMAGE) e colunas de tamanho variável máximo (VARCHAR(MAX), VARBINARY(MAX), NVARCHAR(MAX)) em tabelas sem um índice.

    Se colunas de objetos grandes não estiverem incluídas no stream, haverá suporte para o CDC.

  • O Datastream não oferece suporte à replicação de mudanças de esquema de origem ao usar o método CDC de alteração de tabelas. As mudanças no esquema a seguir podem causar corrupção ou falha no processamento dos eventos:

    • Adição de colunas: as novas colunas não são replicadas para o destino.
    • Descarte de colunas: os dados nessas colunas são substituídos por valores NULL.
    • Modificação de tipos de dados: o Datastream tenta inserir os dados no destino e gera um erro se os dados forem rejeitados.
    • Renomear colunas: não compatível com o SQL Server quando o CDC estiver ativado.
  • O Datastream não oferece suporte ao mascaramento de dados. Os dados são replicados sem mascaramento.

  • O Datastream não oferece suporte à replicação de alterações aplicadas ao banco de dados usando o pacote de aplicativo de camada de dados (DACPAC).

  • O Datastream não replica as mudanças feitas usando as instruções WRITETEXT ou UPDATETEXT.

  • O Datastream não aceita a replicação de colunas calculadas.

  • O Datastream não oferece suporte aos tipos de compactação PAGE, COLUMNSTORE ou COLUMNSTORE ARCHIVE.

Outras limitações ao usar o método de registros de transações

Se você usar o método CDC de registros de transação, as seguintes limitações adicionais serão aplicadas:

  • A criptografia de dados transparente (TDE, na sigla em inglês) não é compatível.
  • Não é possível usar a criptografia no nível da coluna. Os dados nessas colunas são substituídos por NULL.
  • O Datastream não é compatível com a instrução ROLLBACK TO SAVEPOINT. Esses eventos de reversão são ignorados e não são replicados para o destino.
  • O Datastream não oferece suporte à CDC para linhas com mais de 8 KB no seguintes tipos de tabelas:
    • Tabelas sem um índice exclusivo
    • Tabelas que contêm apenas um índice exclusivo e não em cluster, com um ou mais colunas de comprimento variável (VARCHAR, VARBINARY, NVARCHAR)
  • O Datastream não oferece suporte à CDC para colunas de objetos grandes (TEXT, NTEXT, XML, IMAGE) nos seguintes tipos de tabelas:

    • Tabelas sem um índice exclusivo
    • Tabelas que contêm apenas um índice exclusivo e não em cluster, com um ou mais colunas de comprimento variável (VARCHAR, VARBINARY, NVARCHAR)

    Se as colunas de objetos grandes não forem incluídas no fluxo, a CDC só será compatível com essas tabelas se elas tiverem índices válidos.

A seguir