Integration runtime in Azure Data Factory (Runtime de integração no Azure Data Factory)

APLICA-SE A: Azure Data Factory Azure Synapse Analytics

Gorjeta

Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!

O IR (Integration Runtime) é a infraestrutura de computação usada pelos pipelines do Azure Data Factory e do Azure Synapse para fornecer os seguintes recursos de integração de dados em diferentes ambientes de rede:

  • Fluxo de Dados: execute um Fluxo de Dados em um ambiente de computação gerenciado do Azure.
  • Movimentação de dados: copie dados entre armazenamentos de dados em redes públicas ou privadas (para redes locais ou virtuais privadas). O serviço fornece suporte para conectores integrados, conversão de formato, mapeamento de colunas e transferência de dados escalável e de desempenho.
  • Despacho de atividades: despache e monitore atividades de transformação em execução em uma variedade de serviços de computação, como Azure Databricks, Azure HDInsight, ML Studio (clássico), Banco de Dados SQL do Azure, SQL Server e muito mais.
  • Execução de pacotes do SSIS: executar, nativamente, pacotes do SQL Server Integration Services (SSIS) num ambiente de computação gerida do Azure.

Nos pipelines Data Factory e Synapse, uma atividade define a ação a ser executada. Os serviços ligados definem um arquivo de dados ou um serviço de computação de destino. Um tempo de execução de integração fornece a ponte entre as atividades e os serviços vinculados. Ele é referenciado pelo serviço ou atividade vinculado e fornece o ambiente de computação onde a atividade é executada diretamente ou despachada. Isso permite que a atividade seja executada na região mais próxima possível do armazenamento de dados ou serviço de computação de destino para maximizar o desempenho e, ao mesmo tempo, permitir flexibilidade para atender aos requisitos de segurança e conformidade.

Os tempos de execução de integração podem ser criados no Azure Data Factory e na IU do Azure Synapse diretamente através do hub de gerenciamento, bem como de quaisquer atividades, conjuntos de dados ou fluxos de dados que os referenciam.

Tipos de runtimes de integração

O Data Factory oferece três tipos de IR (Integration Runtime), e você deve escolher o tipo que melhor atende aos seus recursos de integração de dados e requisitos de ambiente de rede. Os três tipos de RI são:

  • Azure
  • Autoalojado
  • Azure-SSIS

Nota

Atualmente, os pipelines Synapse suportam apenas os tempos de execução de integração do Azure ou auto-hospedados.

A tabela seguinte descreve as capacidades e o suporte de rede para cada um dos tipos de runtimes de integração:

Tipo de IR Suporte de rede pública Suporte de Link Privado
Azure Fluxo de Dados
Movimento de dados
Distribuição de atividades
Fluxo de Dados
Movimento de dados
Distribuição de atividades
Autoalojado Movimento de dados
Distribuição de atividades
Movimento de dados
Distribuição de atividades
Azure-SSIS Execução de pacotes do SSIS Execução de pacotes do SSIS

Nota

Os controles de saída variam de acordo com o serviço para o Azure IR. No Synapse, os espaços de trabalho têm opções para limitar o tráfego de saída da rede virtual gerenciada ao utilizar o Azure IR. No Data Factory, todas as portas são abertas para comunicações de saída ao utilizar o Azure IR. Azure-SSIS IR pode ser integrado com seu vNET para fornecer controles de comunicação de saída.

Runtime de integração do Azure

Um tempo de execução de integração do Azure pode:

  • Executar fluxos de dados no Azure
  • Executar atividades de cópia entre armazenamentos de dados na nuvem
  • Despache as seguintes atividades de transformação em uma rede pública:
    • Atividade personalizada do .NET
    • Atividade do Azure Function
    • Databricks Notebook/ Jar/ atividade Python
    • Atividade U-SQL no Data Lake Analytics
    • Atividade Obter Metadados
    • Atividade do HDInsight Hive
    • Atividade do HDInsight Pig
    • Atividade do HDInsight MapReduce
    • Atividade do HDInsight Spark
    • Atividade de streaming do HDInsight
    • Atividade de Procura
    • Atividade de execução em lote do Machine Learning Studio (clássico)
    • Atividade de atualização de recursos do Machine Learning Studio (clássico)
    • Atividade de Procedimento Armazenado
    • Atividade de validação
    • Atividade Web

Ambiente de rede de IR do Azure

O Azure Integration Runtime dá suporte à conexão a armazenamentos de dados e serviços de computação com pontos de extremidade acessíveis ao público. Habilitando a Rede Virtual Gerenciada, o Tempo de Execução de Integração do Azure dá suporte à conexão a armazenamentos de dados usando o serviço de link privado em ambiente de rede privada. No Synapse, os espaços de trabalho têm opções para limitar o tráfego de saída da rede virtual gerenciada por RI. No Data Factory, todas as portas são abertas para comunicações de saída. O IR do Azure-SSIS pode ser integrado ao seu vNET para fornecer controles de comunicação de saída.

Recurso de computação e dimensionamento do IR do Azure

Os runtimes de integração do Azure fornecem uma computação totalmente gerida e sem servidor no Azure. Você não precisa se preocupar com o fornecimento de infraestrutura, instalação de software, aplicação de patches ou dimensionamento de capacidade. Além disso, apenas paga durante a utilização efetiva.

Os runtimes de integração do Azure proporcionam a computação nativa para mover dados entre arquivos de dados na cloud de forma segura, fiável e de elevado desempenho. Você pode definir quantas unidades de integração de dados usar na atividade de cópia e o tamanho de computação do IR do Azure é dimensionado de forma elástica de acordo sem exigir que você ajuste explicitamente o tamanho do Tempo de Execução de Integração do Azure.

O despacho de atividade é uma operação leve para rotear a atividade para o serviço de computação de destino, portanto, não há necessidade de aumentar o tamanho da computação para esse cenário.

Para obter informações sobre como criar e configurar um IR do Azure, consulte Como criar e configurar o Azure Integration Runtime.

Nota

O tempo de execução da Integração do Azure tem propriedades relacionadas ao tempo de execução do Fluxo de Dados, que define a infraestrutura de computação subjacente que seria usada para executar os fluxos de dados.

Runtime de integração autoalojado

Os runtimes de integração autoalojados podem:

  • Executar a atividade de cópia entre arquivos de dados na cloud e um arquivo de dados numa rede privada.
  • Despachando as seguintes atividades de transformação em recursos de computação na Rede Virtual local ou do Azure:
    • Atividade do Azure Function
    • Atividade personalizada (no Azure Batch)
    • Atividade U-SQL no Data Lake Analytics
    • Atividade Obter Metadados
    • Atividade do HDInsight Hive (BYOC-Bring Your Own Cluster)
    • Atividade Pig no HDInsight (BYOC)
    • Atividade MapReduce no HDInsight (BYOC)
    • Atividade Apache Spark no HDInsight (BYOC)
    • Atividade Streaming no HDInsight (BYOC)
    • Atividade de Procura
    • Atividade de execução em lote do Machine Learning Studio (clássico)
    • Atividade de atualização de recursos do Machine Learning Studio (clássico)
    • Atividade do Machine Learning Execute Pipeline
    • Atividade de Procedimento Armazenado
    • Atividade de validação
    • Atividade Web

Nota

Use o tempo de execução de integração auto-hospedado para suportar armazenamentos de dados que exigem trazer seu próprio driver, como SAP Hana, MySQL, etc. Para obter mais informações, consulte armazenamentos de dados suportados.

Nota

O Java Runtime Environment (JRE) é uma dependência do Self Hosted IR. Certifique-se de ter o JRE instalado no mesmo host.

Ambiente de rede de IR autoalojado

Se você quiser executar a integração de dados com segurança em um ambiente de rede privada que não tenha uma linha de visão direta do ambiente de nuvem pública, você pode instalar um IR auto-hospedado em seu ambiente local atrás de um firewall ou dentro de uma rede privada virtual. O runtime de integração autoalojado só faz ligações de saída baseadas em HTTP para a Internet.

Recurso de computação e dimensionamento do IR autoalojado

Instale um IR auto-hospedado em uma máquina local ou uma máquina virtual dentro de uma rede privada. Atualmente, o IR auto-hospedado só é suportado em um sistema operacional Windows.
Para elevada disponibilidade e escalabilidade, pode aumentar horizontalmente o runtime de integração autoalojado ao associar a instância lógica a vários computadores no local no modo ativo-ativo. Para obter mais informações, consulte o artigo sobre como criar e configurar um RI auto-hospedado para obter detalhes.

Azure-SSIS Integration Runtime

Para fazer a migração lift and shift de cargas de trabalho do SSIS existentes, pode criar um runtime de integração Azure-SSIS para executar nativamente pacotes do SSIS.

Ambiente de rede de IR do Azure-SSIS

O IR do Azure-SSIS pode ser provisionado em rede pública ou privada. O acesso a dados locais é suportado pela associação do IR do Azure-SSIS a uma rede virtual conectada à sua rede local.

Recurso de computação e dimensionamento do IR do Azure-SSIS

O IR do Azure-SSIS é um cluster totalmente gerenciado de VMs do Azure dedicado a executar seus pacotes SSIS. Você pode trazer seu próprio Banco de Dados SQL do Azure ou Instância Gerenciada SQL para o catálogo de projetos/pacotes SSIS (SSISDB). Pode aumentar verticalmente o poder da computação ao especificar o tamanho do nó e aumentá-lo horizontalmente ao definir o número de nós no cluster. Você pode gerenciar o custo de execução do Tempo de Execução de Integração do Azure-SSIS interrompendo-o e iniciando-o conforme suas necessidades.

Para obter mais informações, consulte Como criar e configurar o IR do Azure-SSIS. Depois de criado, você pode implantar e gerenciar seus pacotes SSIS existentes com pouca ou nenhuma alteração usando ferramentas familiares, como o SSDT (SQL Server Data Tools) e o SQL Server Management Studio (SSMS), assim como usar o SSIS local.

Para obter mais informações sobre o tempo de execução do Azure-SSIS, consulte os seguintes artigos:

  • Tutorial: implementar pacotes do SSIS no Azure. Este artigo fornece instruções passo a passo para criar um IR do Azure-SSIS e usa um Banco de Dados SQL do Azure para hospedar o catálogo do SSIS.
  • How to: Create an Azure-SSIS integration runtime (Como criar um runtime de integração do Azure-SSIS). Este artigo expande o tutorial e fornece instruções sobre como usar a Instância Gerenciada SQL e unir o RI a uma rede virtual.
  • Monitorizar um Azure-SSIS IR. Este artigo mostra como recuperar informações sobre um IR do Azure-SSIS e fornece descrições de status nas informações retornadas.
  • Manage an Azure-SSIS IR (Gerir um IR Azure-SSIS). Este artigo mostra-lhe como parar, iniciar ou remover um IR Azure-SSIS. Mostra também como aumentá-lo horizontalmente mediante a adição de mais nós ao mesmo.
  • Associar um IR Azure-SSIS a uma rede virtual. Este artigo disponibiliza informações concetuais sobre como associar um IR Azure-SSIS a uma rede virtual do Azure. Ele também fornece etapas para usar o portal do Azure para configurar uma rede virtual e ingressar um IR do Azure-SSIS a ela.

Localização do runtime de integração

Relação entre a localização da fábrica e a localização do RI

Ao criar uma instância do Data Factory ou um Synapse Workspace, você precisa especificar seu local. Os metadados da instância são armazenados aqui e o acionamento do pipeline é iniciado a partir daqui. Os metadados são armazenados apenas na região escolhida e não serão armazenados em outras regiões.

Enquanto isso, um pipeline pode acessar armazenamentos de dados e serviços de computação em outras regiões do Azure para mover dados entre armazenamentos de dados ou processar dados usando serviços de computação. Este comportamento é realizado através do IR globalmente disponível para garantir a conformidade dos dados, a eficiência e custos de saída de rede reduzidos.

O Local de RI define o local de sua computação de back-end e onde a movimentação de dados, o despacho de atividades e a execução do pacote SSIS são executados. A localização do IR pode ser diferente da localização do Data Factory a que pertence.

Localização do IR do Azure

Você pode definir a região de local de um IR do Azure, caso em que a execução ou o despacho da atividade acontecerá na região selecionada.

O padrão é resolver automaticamente o IR do Azure na rede pública. Com esta opção:

  • Para a atividade de cópia, é feito um esforço melhor para detetar automaticamente a localização do armazenamento de dados do coletor e, em seguida, usar o IR na mesma região, se disponível, ou na mais próxima na mesma geografia, caso contrário; se a região do armazenamento de dados do coletor não for detetável, o IR na região da instância será usado.

    Por exemplo, um Data Factory ou Synapse Workspace foi criado no leste dos EUA,

    • Ao copiar dados para um Blob do Azure no Oeste dos EUA, se o blob for detetado na região Oeste dos EUA, a atividade de cópia será executada no IR no Oeste dos EUA; se a deteção de região falhar, a atividade de cópia será executada no RI no Leste dos EUA.
    • Ao copiar dados para o Salesforce, para os quais a região não é detetável, a atividade de cópia é executada no RI no Leste dos EUA.

    Gorjeta

    Se você tiver requisitos rígidos de conformidade de dados e precisar garantir que os dados não saiam de uma determinada geografia, poderá criar explicitamente um RI do Azure em uma determinada região e apontar o Serviço Vinculado para esse IR usando a propriedade ConnectVia. Por exemplo, se você quiser copiar dados de um blob no Sul do Reino Unido para um espaço de trabalho do Azure Synapse no Sul do Reino Unido e quiser garantir que os dados não saiam do Reino Unido, crie um IR do Azure no Sul do Reino Unido e vincule ambos os Serviços Vinculados a esse IR.

  • Para a execução da atividade Lookup/GetMetadata/Delete (atividades de pipeline), despacho de atividades de transformação (atividades externas) e operações de criação (conexão de teste, lista de pastas e tabelas de navegação e visualização de dados), o RI na mesma região que o Data Factory ou o espaço de trabalho Synapse é usado.

  • Para o Fluxo de Dados, o IR na região Data Factory ou Synapse Workspace é usado.

    Gorjeta

    Uma prática recomendada é garantir que os fluxos de dados sejam executados na mesma região que os armazenamentos de dados correspondentes, quando possível. Você pode conseguir isso com a resolução automática para o IR do Azure (se o local do armazenamento de dados for o mesmo que o local do Data Factory ou do Espaço de Trabalho Sinapse) ou criando uma nova instância de IR do Azure na mesma região que seus armazenamentos de dados e, em seguida, executando os fluxos de dados nele.

Se você habilitar a Rede Virtual Gerenciada com resolução automática para o IR do Azure, o IR na região Data Factory ou Espaço de Trabalho Synapse será usado.

Você pode monitorar qual local de RI entra em vigor durante a execução da atividade na exibição de monitoramento de atividade de pipeline no Data Factory Studio ou Synapse Studio, ou na carga útil de monitoramento de atividade.

Localização do IR autoalojado

O IR auto-hospedado é logicamente registrado no Data Factory ou Synapse Workspace e a computação usada para suportar suas funcionalidades é fornecida por você. Por esse motivo, não existe uma propriedade de localização explícita para o runtime de integração autoalojado.

Quando é utilizado para realizar o movimento de dados, o IR autoalojado extrai dados da origem e escreve-os no destino.

Localização do IR do Azure-SSIS

Nota

Os tempos de execução de integração Azure-SSIS não são suportados atualmente nos pipelines Synapse.

Selecionar a localização certa para o runtime de integração Azure-SSIS é fundamental para obter um elevado desempenho nos seus fluxos de trabalho extract-transform-load (ETL).

  • O local do seu IR do Azure-SSIS não precisa ser o mesmo que o local do seu Data Factory, mas deve ser o mesmo que o local do seu próprio Banco de Dados SQL do Azure ou Instância Gerenciada do SQL onde o SSISDB está localizado. Dessa forma, seu Tempo de Execução de Integração Azure-SSIS pode acessar facilmente o SSISDB sem incorrer em tráfego excessivo entre locais diferentes.
  • Se você não tiver um Banco de Dados SQL ou uma Instância Gerenciada do SQL existente, mas tiver fontes/destinos de dados locais, deverá criar um novo Banco de Dados SQL do Azure ou uma Instância Gerenciada do SQL no mesmo local de uma rede virtual conectada à sua rede local. Dessa forma, você pode criar seu IR do Azure-SSIS usando o novo Banco de Dados SQL do Azure ou a Instância Gerenciada do SQL e ingressar nessa rede virtual. Tudo estará no mesmo local, minimizando a movimentação de dados e os custos associados, enquanto maximiza o desempenho.
  • Se o local do Banco de Dados SQL do Azure ou da Instância Gerenciada do SQL existente não for o mesmo que o local de uma rede virtual conectada à sua rede local, primeiro crie seu IR do Azure-SSIS usando um Banco de Dados SQL do Azure ou uma Instância Gerenciada do SQL existente e ingresse em outra rede virtual no mesmo local. Em seguida, configure uma rede virtual para conexão de rede virtual entre os diferentes locais.

O diagrama a seguir mostra as configurações de local para o Data Factory e seus tempos de execução de integração:

Shows Data Factory integration runtime locations.

Determinar o runtime de integração a utilizar

Se uma atividade estiver associada a mais de um tipo de tempo de execução de integração, ela será resolvida para um deles. O tempo de execução de integração auto-hospedado tem precedência sobre o tempo de execução de integração do Azure no Azure Data Factory ou instâncias do Espaço de Trabalho Synapse usando uma rede virtual gerenciada. E este último tem precedência sobre o tempo de execução de integração global do Azure.

Por exemplo, uma atividade de cópia é usada para copiar dados da origem para o coletor. O tempo de execução de integração global do Azure está associado ao serviço vinculado à origem e um tempo de execução de integração do Azure em uma rede virtual gerenciada pelo Azure Data Factory se associa ao serviço vinculado para coletor, então o resultado é que os serviços vinculados de origem e coletor usam o tempo de execução de integração do Azure na rede virtual gerenciada do Azure Data Factory. Mas se um tempo de execução de integração auto-hospedado associa o serviço vinculado para origem, então tanto o serviço vinculado de origem quanto o serviço vinculado de coletor usam o tempo de execução de integração auto-hospedado.

Atividade Copiar

A atividade Copiar requer serviços vinculados de origem e coletor para definir a direção do fluxo de dados. É utilizada a lógica seguinte para determinar que instância do runtime de integração é utilizada para fazer a cópia:

  • Copiar entre duas fontes de dados na nuvem: se os serviços vinculados de origem e coletor estiverem usando o IR do Azure, o IR regional do Azure será usado se tiver sido especificado, ou o local do IR do Azure será determinado automaticamente se a opção IR de resolução automática (padrão) tiver sido escolhida conforme descrito na seção Local de tempo de execução da integração.
  • Cópia entre uma fonte de dados na nuvem e uma fonte de dados em uma rede privada: se o serviço vinculado de origem ou coletor apontar para um IR auto-hospedado, a atividade de cópia será executada no IR auto-hospedado.
  • Cópia entre duas fontes de dados em uma rede privada: o serviço vinculado de origem e coletor deve apontar para a mesma instância do tempo de execução de integração, e esse IR é usado para executar a atividade de cópia.

Atividade de Pesquisa e GetMetadata

A atividade de Pesquisa e de GetMetadata é executada no runtime de integração associado ao serviço ligado ao arquivo de dados.

Atividade de transformação externa

Cada atividade de transformação externa que utiliza um mecanismo de computação externo tem um serviço vinculado de computação de destino, que aponta para um tempo de execução de integração. Essa instância de RI determina o local de onde essa atividade de transformação externa codificada manualmente é despachada.

Atividade de fluxo de dados

As atividades de Fluxo de Dados são executadas em seu tempo de execução de integração do Azure associado. A computação do Spark utilizada pelos Fluxos de Dados é determinada pelas propriedades de fluxo de dados em seu IR do Azure e é totalmente gerenciada pelo serviço.

Tempo de execução de integração em CI/CD

Os tempos de execução de integração não mudam com frequência e são semelhantes em todos os estágios do seu CI/CD. O Data Factory requer que você tenha o mesmo nome e tipo de tempo de execução de integração em todos os estágios do CI/CD. Se você quiser compartilhar tempos de execução de integração em todos os estágios, considere usar uma fábrica dedicada apenas para conter os tempos de execução de integração compartilhados. Em seguida, você pode usar essa fábrica compartilhada em todos os seus ambientes como um tipo de tempo de execução de integração vinculado.

Consulte os seguintes artigos: