Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo mostra como adicionar uma fonte da captura de dados de alterações (CDA) do Banco de Dados SQL do Azure a um eventstream.
O conector de origem da CDA do Banco de Dados SQL do Azure para fluxos de eventos do Microsoft Fabric permite a captura de um instantâneo dos dados atuais em um banco de dados SQL do Azure. Em seguida, o conector monitora e registra quaisquer alterações futuras no nível da linha nesses dados. Depois que as alterações forem capturadas no eventstream, você poderá processar esses dados da CDA em tempo real e enviá-los a diferentes destinos no Fabric para processamento ou análise adicionais.
Pré-requisitos
- Acesso a um espaço de trabalho no modo de licença de capacidade do Fabric (ou) no modo de licença de Avaliação com permissões de Colaborador ou superior.
- Um SQL Server do Azure em execução com um Banco de Dados SQL do Azure.
- O banco de dados SQL do Azure precisa ser acessível publicamente e não pode estar protegido por um firewall ou em uma rede virtual do Azure.
- CDA habilitada no Banco de Dados SQL do Azure via execução do procedimento armazenado
sys.sp_cdc_enable_db. Para obter detalhes, confira Habilitar e desabilitar a captura de dados de alterações. - Caso não tenha um Eventstream, crie um Eventstream.
Observe que você não deve habilitar o espelhamento no banco de dados SQL do Azure.
Habilite a CDA para o Banco de Dados SQL do Azure
Acesse o portal do Azure, abra seu banco de dados SQL do Azure e selecione Editor de consultas. Escolha um método de autenticação para fazer logon.
Execute os seguintes comandos SQL para habilitar o CDC em seu banco de dados:
-- Enable Database for CDC EXEC sys.sp_cdc_enable_db; -- Enable CDC for a table using a gating role option EXEC sys.sp_cdc_enable_table @source_schema = N'dbo', @source_name = N'MyTable', @role_name = NULL GO
Iniciar o assistente Selecionar uma fonte de dados
Se você ainda não adicionou nenhuma fonte ao fluxo de eventos, selecione o bloco Usar o código-fonte externo .
Se você estiver adicionando a origem a um fluxo de eventos já publicado, alterne para modo de edição. Na faixa de opções, selecione Adicionar origem>Fontes externas.
Na página Selecionar uma fonte de dados, pesquise e selecione Conectar no bloco Banco de dados SQL do Azure (CDC).
Configuração e conexão à CDA do Banco de Dados SQL do Azure.
Na página Conectar, selecione Nova conexão.
Na seção Configurações de conexão, insira os seguintes valores para o Banco de Dados SQL do Azure:
Servidor: insira o nome do servidor do SQL do Azure do Portal do Azure. Está neste formato:
mysqlservername.database.windows.net.Banco de dados: insira o nome do Banco de Dados SQL do Azure do portal do Azure.
Role para baixo e, na seção Credenciais de conexão, siga as etapas a seguir.
Em Nome da conexão, insira um nome para a conexão.
Em Variante de autenticação, selecione Básico.
Observação
Atualmente, o Fabric Eventstream dá suporte apenas à autenticação Básica .
Insira o Nome de usuário e a Senha do banco de dados.
Selecione Conectar.
Agora, na página Conectar, selecioneTodas as tabelas ou Insira os nomes da tabela. Se você selecionar o último, especifique tabelas usando uma lista separada por vírgulas de identificadores de tabela completos (
schemaName.tableName) ou expressões regulares válidas. Por exemplo:- Use
dbo.test.*para selecionar todas as tabelas cujos nomes começam comdbo.test. - Use
dbo\.(test1|test2)para selecionardbo.test1edbo.test2.
Você pode misturar ambos os formatos usando vírgulas. O limite total de caracteres para toda a entrada é de 102.400 caracteres .
- Use
Você pode expandir as configurações avançadas para acessar opções de configuração adicionais para a fonte CDC do Banco de Dados SQL do Azure:
-
Modo de tratamento decimal: define como o conector manipula
DECIMALeNUMERICvalores de coluna:-
Precise: representa valores usando tipos decimais exatos (por exemplo, JavaBigDecimal) para garantir a precisão total e a precisão na representação de dados. -
Double: converte valores em números de ponto flutuante de precisão dupla. Essa configuração melhora a usabilidade e o desempenho, mas pode resultar em uma perda de precisão. -
String: codifica valores como cadeias de caracteres formatadas. Essa configuração facilita o consumo em sistemas downstream, mas perde informações semânticas sobre o tipo numérico original.
-
-
Modo de instantâneo: especifique os critérios para executar um instantâneo quando o conector for iniciado:
-
Initial: O conector executa um instantâneo somente quando nenhum offset foi registrado para o nome do servidor lógico ou se ele detecta que um instantâneo anterior não foi concluído. Após a conclusão do instantâneo, o conector começa a transmitir registros de eventos para alterações subsequentes no banco de dados. -
InitialOnly: O conector executa um instantâneo apenas quando nenhum deslocamento foi registrado para o nome do servidor lógico. Depois que o instantâneo for concluído, o conector para. Ele não muda para o modo de streaming para ler eventos de mudança do binlog. -
NoData: o conector executa um instantâneo que captura apenas o esquema, mas não qualquer dado de tabela. Defina essa opção se você não precisar de um instantâneo consistente dos dados, mas precisar apenas das alterações que estão acontecendo desde que o conector seja iniciado.
-
- Lista de exclusão de coluna: especifica colunas a serem excluídas dos valores de evento de alteração usando nomes totalmente qualificados (schemaName.tableName.columnName).
-
ApplicationIntent do banco de dados: determina o comportamento de roteamento em grupos de disponibilidade Always On do SQL Server.
-
ReadWrite: conecta-se à réplica primária. Use isso se a conexão precisar executar operações de leitura e gravação. -
ReadOnly: permite o roteamento para uma réplica secundária legível para operações de leitura apenas. Use-o para habilitar o CDC diretamente em réplicas. Ele requer configurar snapshot.isolation.mode como snapshot, que é o único modo de isolamento de transação com suporte para réplicas somente leitura.
-
- Substituição da instrução de seleção de instantâneo: use a propriedade se desejar que um instantâneo inclua apenas um subconjunto de linhas em uma tabela. Essa propriedade afeta somente instantâneos. Ele não se aplica a eventos que o conector lê do log.
-
Modo de tratamento decimal: define como o conector manipula
Selecione Avançar.
Na tela Revisar e criar, revise o resumo e selecione Adicionar.
Ingerir dados de alteração de bancos de dados SQL do Azure com registro automático de esquema de tabela via CDC em Eventstream.
Na página Conectar, selecione Nova conexão.
Na seção Configurações de conexão, insira os seguintes valores para o Banco de Dados SQL do Azure:
Servidor: insira o nome do servidor do SQL do Azure do Portal do Azure. Está neste formato:
mysqlservername.database.windows.net.Banco de dados: insira o nome do Banco de Dados SQL do Azure do portal do Azure.
Role para baixo e, na seção Credenciais de conexão, siga as etapas a seguir.
Em Nome da conexão, insira um nome para a conexão.
Em Variante de autenticação, selecione Básico.
Observação
Atualmente, o Fabric Eventstream dá suporte apenas à autenticação Básica .
Insira o Nome de usuário e a Senha do banco de dados.
Selecione Conectar.
Agora, na página Conectar, selecioneTodas as tabelas ou Insira os nomes da tabela. Se você selecionar o último, especifique tabelas usando uma lista separada por vírgulas de identificadores de tabela completos (
schemaName.tableName) ou expressões regulares válidas. Por exemplo:- Use
dbo.test.*para selecionar todas as tabelas cujos nomes começam comdbo.test. - Use
dbo\.(test1|test2)para selecionardbo.test1edbo.test2.
Você pode misturar ambos os formatos usando vírgulas. O limite total de caracteres para toda a entrada é de 102.400 caracteres .
- Use
Você pode expandir as configurações avançadas para acessar opções de configuração adicionais para a fonte CDC do Banco de Dados SQL do Azure:
-
Modo de tratamento decimal: define como o conector manipula
DECIMALeNUMERICvalores de coluna:-
Precise: representa valores usando tipos decimais exatos (por exemplo, JavaBigDecimal) para garantir a precisão total e a precisão na representação de dados. -
Double: converte valores em números de ponto flutuante de precisão dupla. Essa configuração melhora a usabilidade e o desempenho, mas pode resultar em uma perda de precisão. -
String: codifica valores como cadeias de caracteres formatadas. Essa configuração facilita o consumo em sistemas downstream, mas perde informações semânticas sobre o tipo numérico original.
-
-
Modo de instantâneo: especifique os critérios para executar um instantâneo quando o conector for iniciado:
-
Initial: O conector executa um instantâneo somente quando nenhum offset foi registrado para o nome do servidor lógico ou se ele detecta que um instantâneo anterior não foi concluído. Após a conclusão do instantâneo, o conector começa a transmitir registros de eventos para alterações subsequentes no banco de dados. -
InitialOnly: O conector executa um instantâneo apenas quando nenhum deslocamento foi registrado para o nome do servidor lógico. Depois que o instantâneo for concluído, o conector para. Ele não muda para o modo de streaming para ler eventos de mudança do binlog. -
NoData: o conector executa um instantâneo que captura apenas o esquema, mas não qualquer dado de tabela. Defina essa opção se você não precisar de um instantâneo consistente dos dados, mas precisar apenas das alterações que estão acontecendo desde que o conector seja iniciado.
-
- Lista de exclusão de coluna: especifica colunas a serem excluídas dos valores de evento de alteração usando nomes totalmente qualificados (schemaName.tableName.columnName).
-
ApplicationIntent do banco de dados: determina o comportamento de roteamento em grupos de disponibilidade Always On do SQL Server.
-
ReadWrite: conecta-se à réplica primária. Use isso se a conexão precisar executar operações de leitura e gravação. -
ReadOnly: permite o roteamento para uma réplica secundária legível para operações de leitura apenas. Use-o para habilitar o CDC diretamente em réplicas. Ele requer configurar snapshot.isolation.mode como snapshot, que é o único modo de isolamento de transação com suporte para réplicas somente leitura.
-
- Substituição da instrução de seleção de instantâneo: use a propriedade se desejar que um instantâneo inclua apenas um subconjunto de linhas em uma tabela. Essa propriedade afeta somente instantâneos. Ele não se aplica a eventos que o conector lê do log.
-
Modo de tratamento decimal: define como o conector manipula
Habilitar a associação de esquema de eventos.
Para o Workspace, selecione um workspace do Fabric para o conjunto de esquemas.
Para o conjunto de esquemas, + Criar é selecionado por padrão, o que cria um novo conjunto de esquemas. Você pode alterá-lo para selecionar um conjunto de esquemas de eventos existente.
Se você selecionou a opção + Criar na etapa anterior, insira um nome para o conjunto de esquemas.
Na página Revisar + conectar, selecione Adicionar.
Para todas as tabelas ou tabelas selecionadas no banco de dados SQL do Azure, o conector faz descobertas automáticas e cria esquemas e as registra no registro de esquema.
Selecione o nó eventstream no meio e alterne para a guia Esquemas associados no painel inferior.
Conjunto de esquemas
Navegue até o workspace selecionado na etapa anterior. No exemplo a seguir, é Meu workspace.
Selecione o conjunto de esquemas que o conector CDC (Banco de Dados SQL do Azure) criou.
Você verá os esquemas no conjunto de esquemas, conforme mostrado na imagem a seguir.
Para ver a versão JSON do esquema, alterne para o modo de exibição de esquema JSON .
Não altere esses esquemas descobertos usando este editor, pois ele se torna não conformante com o esquema de tabelas do banco de dados SQL do Azure como fonte.
Exibir Eventstream atualizado
Você pode ver a fonte do Banco de Dados SQL do Azure (CDA) adicionada ao eventstream no Modo de edição.
Para implementar essa fonte recém-adicionada da CDA do Banco de Dados SQL do Azure, escolha Publicar. Depois de concluir essas etapas, a fonte da CDA do Banco de Dados SQL do Azure estará disponível para visualização na Exibição ao vivo.
Configurar destinos de fluxo de eventos para usar esquemas
Atualmente, apenas o eventhouse, o endpoint personalizado e os destinos de streams derivados têm suporte para fluxos de eventos com recursos estendidos habilitados. Esta seção mostra como adicionar e configurar um destino de casa de eventos quando recursos estendidos (como suporte a esquema) estiverem habilitados para o fluxo de eventos.
Configurar um schema para um destino de endpoint personalizado
Selecione Transformar eventos ou adicionar destino e selecione CustomEndpoint.
No painel ponto de extremidade personalizado , especifique um nome para o destino.
Para o esquema de entrada, selecione o esquema para eventos. Você faz uma seleção nesta caixa ao habilitar o suporte de esquema para um fluxo de eventos.
Para obter etapas detalhadas sobre como configurar um destino de ponto de extremidade personalizado, consulte Adicionar um ponto de extremidade personalizado ou um destino de aplicativo personalizado a um fluxo de eventos.
Configurar esquemas para um destino de gerenciamento de eventos
Selecione Transformar eventos ou adicionar destino e selecione Eventhouse.
No painel Eventhouse , defina as seguintes configurações relacionadas ao esquema:
Para o esquema de entrada, selecione um ou mais esquemas na lista suspensa.
Observação
Se você selecionou o esquema dinâmico por meio da opção de cabeçalhos ao configurar uma origem dos Hubs de Eventos, talvez tenha configurado vários esquemas para a origem e mapeado-os para várias propriedades e seus valores.
Para o método de criação de tabela, selecione Uma única tabela com todos os esquemas combinados ou tabelas separadas para cada esquema, dependendo de seus requisitos.
Para gravar dados com, selecione uma das seguintes opções:
- Apenas carga útil: Escreva dados de carga útil extraídos na tabela. Se houver vários esquemas de entrada, os dados serão enviados para várias tabelas.
-
Metadados e payload: Gravar metadados e dados de payload em uma única tabela. As colunas de exemplo incluem
source,subjectetypedata.
Para obter etapas detalhadas sobre como configurar um destino de casa de eventos, consulte Adicionar um destino de casa de eventos a um fluxo de eventos.
Conteúdo relacionado
Outros conectores:
- Fluxos de dados do Amazon Kinesis
- Azure Cosmos DB
- Hubs de eventos do Azure
- Barramento de Serviço do Azure
- Hub IoT do Azure
- Kafka para Confluent
- Ponto de extremidade personalizado
- Pub/Sub do Google Cloud
- CDA do Banco de Dados MySQL
- CDA do Banco de dados PostgreSQL
- Dados de amostra
- Eventos de Armazenamento de Blobs do Azure
- Evento de espaço de trabalho do Fabric