Compartilhar via


Gerenciar o Link do Azure Synapse para o SQL Server e o Banco de Dados SQL do Azure

Aplica-se a: SQL Server 2022 (16.x) Banco de Dados SQL do Azure

Este artigo fornece detalhes sobre como monitorar e gerenciar o feed de alterações do Link do Azure Synapse para SQL com o T-SQL.

O Link do Azure Synapse para Banco de Dados SQL do Azure é totalmente gerenciado, incluindo o provisionamento da zona de destino, e usa processos de detecção de alterações semelhantes aos descrito neste artigo. Para obter mais informações, confira Link do Synapse para Banco de Dados SQL do Azure.

No SQL Server, a zona de destino é gerenciada pelo cliente e é visível, mas não há suporte nem é recomendável consumir nem modificar os arquivos na zona de destino.

Atualmente, apenas um membro da função de servidor sysadmin no SQL Server ou a função de banco de dados db_owner pode executar esses procedimentos.

O SQL Server ou o Banco de Dados SQL do Azure manterá metadados específicos para cada grupo de tabelas.

Observação

Habilitar o Link do Azure Synapse Analytics para SQL criará um usuário de banco de dados changefeed, um esquema changefeed e várias tabelas dentro do esquema em seu banco de dados de origem changefeed. Não altere nenhum desses objetos – eles são gerenciados pelo sistema.

Os objetos do sistema a seguir permitem consultar o estado do recurso Link do Azure Synapse para SQL no banco de dados de origem.

Exibir configuração

Para examinar a configuração atual do link, execute o procedimento armazenado do sistema sys.sp_help_change_feed.

EXECUTE sys.sp_help_change_feed

Examinar erros do feed de alterações

Para examinar os erros no feed de alterações do Link do Azure Synapse Link, use a exibição de gerenciamento dinâmico sys.dm_change_feed_errors. Essa DMV mostrará erros das últimas 32 sessões. Uma sessão pode incluir vários erros, por exemplo, tentativas de repetição em falhas de zona de destino. Essa DMV também mostrará erros ocorridos durante o instantâneo e o processo de publicação de alterações incrementais.

SELECT * FROM sys.dm_change_feed_errors;

Exibir atividade atual

Para exibir a atividade atual, use a exibição de gerenciamento dinâmico sys.dm_change_feed_log_scan_sessions, que retorna a atividade para o feed de alterações do Link do Azure Synapse para SQL.

SELECT * FROM sys.dm_change_feed_log_scan_sessions;

Habilitar o feed de alterações e criar objetos do feed de alterações

Os procedimentos armazenados do sistema sys.sp_change_feed_enable_table, sys.sp_change_feed_enable_db e sys.sp_change_feed_create_table_group não estão documentados e são apenas para uso interno. Sempre use o Synapse Studio no portal do Azure para criar e configurar o Link do Azure Synapse para o SQL Server 2022 (16.x) e o Banco de Dados SQL do Azure. Os procedimentos armazenados para descartar e desabilitar a seguir são fornecidos para remover o Link do Azure Synapse no caso em que o Azure Synapse Studio foi removido ou está inacessível.

Desabilitar o feed de alterações para o banco de dados

Para desabilitar o feed de alterações no nível do banco de dados e, posteriormente, os metadados de todas as tabelas associadas, use o procedimento armazenado do sistema sys.sp_change_feed_disable_db.

Quando o feed de alterações for desabilitado com grupos de tabela ativos, todas as conexões e agendadores serão interrompidos de maneira imediata/imposta sem aguardar a conclusão das operações atuais. Nenhum novo grupo de tabelas do feed de alterações poderá ser criado para o banco de dados e todos os metadados existentes que descrevem os grupos de tabela serão excluídos. Habilitar novamente o feed de alterações resultará em inicializações limpas de todos os grupos de tabelas e na reutilização de todos os dados.

EXECUTE sys.sp_change_feed_disable_db 
GO 

Remover grupo de tabelas do feed de alterações

É recomendável usar o Azure Synapse Studio no portal do Azure para configurar e gerenciar o Link do Azure Synapse.

Para remover os metadados do feed de alterações para um grupo de tabelas, use o procedimento armazenado do sistema sys.sp_change_feed_drop_table_group.

Se o feed de alterações de um grupo de tabelas for descartado no lado do SQL Server ou do Banco de Dados SQL do Azure, todas as atividades de replicação das tabelas do feed de alterações individuais associadas a esse grupo de tabelas serão interrompidas. Todos os metadados associados também serão excluídos.

EXECUTE sys.sp_change_feed_drop_table_group
      @table_group_id uniqueidentifier 
GO

Remover a tabela do feed de alterações

É recomendável usar o Azure Synapse Studio no portal do Azure para configurar e gerenciar o Link do Azure Synapse.

Para remover uma tabela do feed de alterações de um grupo de tabelas de feed de alterações, use o procedimento armazenado do sistema sys.sp_change_feed_disable_table.

Quando sys.sp_change_feed_disable_table for chamado, as alterações de publicação desta tabela serão imediatamente interrompidas. As alterações examinadas, mas ainda não publicadas, serão ignoradas. As últimas alterações publicadas e sincronizadas no Azure Synapse não são garantidas. Para garantir a sincronização entre a origem e o destino até um determinado momento, verifique a "hora de confirmação da última transação" no destino e, depois, chame esse procedimento.

EXECUTE sys.sp_change_feed_disable_table
    @table_group_id uniqueidentifier,
    @table_id uniqueidentifier
GO

Confira também

Próximas etapas