Editar

Partilhar via


Replicar e sincronizar dados de mainframe no Azure

Azure Data Factory
Azure Databricks

Esta arquitetura de referência descreve um plano de implementação para replicar e sincronizar dados durante a modernização para o Azure. Ele discute aspetos técnicos, como armazenamentos de dados, ferramentas e serviços.

Arquitetura

Diagrama de arquitetura mostrando como sincronizar bancos de dados locais e do Azure durante a modernização do mainframe.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de Trabalho

Os sistemas mainframe e midrange atualizam bancos de dados de aplicativos locais em um intervalo regular. Para manter a consistência, a solução sincroniza os dados mais recentes com os bancos de dados do Azure. O processo de sincronização envolve as seguintes etapas:

  1. Estas ações ocorrem ao longo do processo:

    1. Um gateway de dados local transfere dados de forma rápida e segura entre sistemas locais e serviços do Azure. Com essa configuração, o gateway de dados local pode receber instruções do Azure e replicar dados sem que a rede local exponha diretamente os ativos de dados locais.
    2. Os pipelines do Azure Data Factory orquestram atividades que vão desde a extração de dados até o carregamento de dados. Você pode agendar atividades de pipeline, iniciá-las manualmente ou acioná-las automaticamente.
  2. Bancos de dados locais como Db2 zOS, Db2 for i e Db2 LUW armazenam os dados.

  3. Os pipelines agrupam as atividades que executam tarefas. Para extrair dados, o Data Factory cria dinamicamente um pipeline por tabela local. Em seguida, você pode usar uma implementação paralela massiva ao replicar dados no Azure. Mas você também pode configurar a solução para atender às suas necessidades:

    • Replicação completa: você replica o banco de dados inteiro, fazendo as modificações necessárias nos tipos de dados e campos no banco de dados do Azure de destino.
    • Replicação parcial, delta ou incremental: você usa colunas de marca d'água em tabelas de origem para sincronizar linhas atualizadas com bancos de dados do Azure. Essas colunas contêm uma chave de incremento contínuo ou um carimbo de data/hora indicando a última atualização da tabela.

    O Data Factory também usa pipelines para as seguintes tarefas de transformação:

    • Conversão do tipo de dados
    • Manipulação de dados
    • Formatação de dados
    • Derivação de coluna
    • Achatamento de dados
    • Classificação de dados
    • Filtragem de dados
  4. Um tempo de execução de integração (IR) auto-hospedado fornece o ambiente que o Data Factory usa para executar e despachar atividades.

  5. O Azure Data Lake Storage Gen2 e o Azure Blob Storage fornecem um local para preparação de dados. Às vezes, essa etapa é necessária para transformar e mesclar dados de várias fontes.

  6. A preparação dos dados ocorre em seguida. O Data Factory usa o Azure Databricks, atividades personalizadas e fluxos de dados de pipeline para transformar dados de forma rápida e eficaz.

  7. O Data Factory carrega dados em bancos de dados relacionais e não relacionais do Azure:

    • SQL do Azure
    • Base de Dados do Azure para PostgreSQL
    • Azure Cosmos DB
    • Azure Data Lake Storage
    • Azure Database for MariaDB
    • Base de Dados do Azure para MySQL

    Em certos casos de uso, outras ferramentas também podem carregar dados.

  8. Outras ferramentas também podem replicar e transformar dados:

    • Microsoft Service for Distributed Relational Database Architecture (DRDA): esses serviços DRDA podem se conectar à família de bancos de dados SQL do Azure e manter os bancos de dados locais atualizados. Esses serviços são executados em uma máquina virtual (VM) local ou em uma VM do Azure.
    • SQL Server Migration Assistance (SSMA) for Db2: Esta ferramenta migra esquemas e dados de bancos de dados IBM Db2 para bancos de dados do Azure.
    • SQL Server Integration Services (SSIS): essa plataforma pode extrair, transformar e carregar dados.
    • Ferramentas de terceiros: quando a solução requer replicação quase em tempo real, você pode usar ferramentas de terceiros. Alguns desses agentes estão disponíveis no Azure Marketplace.
  9. O Azure Synapse Analytics gerencia os dados e os disponibiliza para aplicativos de business intelligence e aprendizado de máquina.

Componentes

A solução utiliza os seguintes componentes:

Ferramentas

  • Microsoft Service for DRDA é um componente do Host Integration Server (HIS). O Microsoft Service for DRDA é um servidor de aplicativos que os clientes DRDA Application Requester (AR) usam. Exemplos de clientes DRDA AR incluem IBM Db2 para z/OS e Db2 para i5/OS. Esses clientes usam o servidor de aplicativos para converter instruções SQL do DB2 e executá-las no SQL Server.

  • O SSMA para DB2 automatiza a migração do DB2 para os serviços de banco de dados da Microsoft. Durante a execução em uma VM, essa ferramenta converte objetos de banco de dados DB2 em objetos de banco de dados do SQL Server e cria esses objetos no SQL Server. Em seguida, o SSMA para DB2 migra dados do DB2 para os seguintes serviços:

    • SQL Server 2012
    • SQL Server 2014
    • SQL Server 2016
    • SQL Server 2017 no Windows e Linux
    • SQL Server 2019 no Windows e Linux
    • Base de Dados SQL do Azure
  • O Azure Synapse Analytics é um serviço de análise para armazéns de dados e sistemas de big data. Esta ferramenta utiliza tecnologias Spark e tem integração profunda com o Power BI, Azure Machine Learning e outros serviços do Azure.

Integradores de dados

  • O Azure Data Factory é um serviço híbrido de integração de dados. Você pode usar essa solução totalmente gerenciada e sem servidor para criar, agendar e orquestrar fluxos de trabalho ETL e ELT .

  • O Azure Synapse Analytics é um serviço de análise empresarial que acelera o tempo de insight, em armazéns de dados e sistemas de big data. O Azure Synapse reúne o melhor das tecnologias SQL (que são usadas no armazenamento de dados corporativo), tecnologias Spark usadas para big data, Data Explorer para análise de log e séries temporais, Pipelines para integração de dados e ETL/ELT e integração profunda com outros serviços do Azure, como Power BI, Azure Cosmos DB e Azure Machine Learning.

  • O SQL Server Integration Services (SSIS) é uma plataforma para criar soluções de integração e transformação de dados de nível empresarial. Você pode usar o SSIS para gerenciar, replicar, limpar e minerar dados.

  • O Azure Databricks é uma plataforma de análise de dados. Com base no sistema de processamento distribuído de código aberto Apache Spark, o Azure Databricks é otimizado para a plataforma de nuvem do Azure. Em um fluxo de trabalho de análise, o Azure Databricks lê dados de várias fontes e usa o Spark para fornecer informações.

Armazenamento de dados

  • O Banco de Dados SQL do Azure faz parte da família SQL do Azure e foi criado para a nuvem. Este serviço oferece todos os benefícios de uma plataforma como serviço totalmente gerida e perene. O Banco de dados SQL também fornece recursos automatizados alimentados por IA que otimizam o desempenho e a durabilidade. As opções de computação sem servidor e armazenamento Hyperscale dimensionam automaticamente os recursos sob demanda.

  • A Instância Gerenciada do SQL faz parte do portfólio de serviços SQL do Azure. Este serviço de banco de dados inteligente, escalável e em nuvem combina a mais ampla compatibilidade do mecanismo do SQL Server com todos os benefícios de uma plataforma como serviço totalmente gerenciada e perene. Com a Instância Gerenciada SQL, você pode modernizar aplicativos existentes em escala.

  • O SQL Server em VMs do Azure fornece uma maneira de elevar e deslocar cargas de trabalho do SQL Server para a nuvem com 100% de compatibilidade de código. Como parte da família SQL do Azure, o SQL Server em VMs do Azure oferece o desempenho, a segurança e a análise combinados do SQL Server com a flexibilidade e a conectividade híbrida do Azure. Com o SQL Server em VMs do Azure, você pode migrar aplicativos existentes ou criar novos aplicativos. Você também pode acessar as atualizações e versões mais recentes do SQL Server, incluindo o SQL Server 2019.

  • O Banco de Dados do Azure para PostgreSQL é um serviço de banco de dados relacional totalmente gerenciado baseado na edição da comunidade do mecanismo de banco de dados PostgreSQL de código aberto. Com esse serviço, você pode se concentrar na inovação de aplicativos em vez do gerenciamento de banco de dados. Você também pode dimensionar sua carga de trabalho de forma rápida e fácil.

  • O Azure Cosmos DB é um banco de dados multimodelo distribuído globalmente. Com o Azure Cosmos DB, suas soluções podem dimensionar de forma elástica e independente a taxa de transferência e o armazenamento em qualquer número de regiões geográficas. Este serviço de banco de dados NoSQL totalmente gerenciado garante latências de milissegundos de um dígito no percentil noventa e nono em qualquer lugar do mundo.

  • O Data Lake Storage é um repositório de armazenamento que contém uma grande quantidade de dados em seu formato nativo bruto. Os armazenamentos de data lake são otimizados para dimensionamento para terabytes e petabytes de dados. Os dados normalmente vêm de fontes múltiplas e heterogêneas e podem ser estruturados, semiestruturados ou não estruturados. O Data Lake Storage Gen2 combina os recursos do Data Lake Storage Gen1 com o Blob Storage. Esta solução de data lake de última geração fornece semântica do sistema de arquivos, segurança em nível de arquivo e escala. Mas também oferece os recursos de armazenamento hierárquico, alta disponibilidade e recuperação de desastres do Blob Storage.

  • O Banco de Dados do Azure para MariaDB é um serviço de banco de dados relacional baseado em nuvem. Este serviço é baseado no mecanismo de banco de dados MariaDB community edition.

  • O Banco de Dados do Azure para MySQL é um serviço de banco de dados relacional totalmente gerenciado baseado na edição da comunidade do mecanismo de banco de dados MySQL de código aberto.

  • O Blob Storage fornece armazenamento otimizado de objetos na nuvem que gerencia grandes quantidades de dados não estruturados.

Rede

Detalhes do cenário

A disponibilidade e a integridade dos dados desempenham um papel importante na modernização do mainframe e do midrange. As estratégias data-first ajudam a manter os dados intactos e disponíveis durante a migração para o Azure. Para evitar afetar os aplicativos durante a modernização, às vezes você precisa replicar dados rapidamente ou manter os dados locais sincronizados com os bancos de dados do Azure.

Especificamente, esta solução abrange:

  • Extração: conectando-se e extraindo de um banco de dados de origem.
  • Transformação:
    • Preparo: armazena temporariamente os dados em seu formato original e os prepara para a transformação.
    • Preparação: transformar e manipular dados usando regras de mapeamento que atendem aos requisitos do banco de dados de destino.
  • Carregando: Inserindo dados em um banco de dados de destino.

Potenciais casos de utilização

Os cenários de replicação e sincronização de dados que podem se beneficiar dessa solução incluem:

  • Arquiteturas CQRS (Command Query Responsibility Segregation) que usam o Azure para atender a todos os canais de consulta.
  • Ambientes que testam aplicativos locais e aplicativos rehospedados ou reprojetados em paralelo.
  • Sistemas locais com aplicativos fortemente acoplados que exigem remediação ou modernização em fases.

Recomendações

Ao usar o Data Factory para extrair dados, execute etapas para ajustar o desempenho da atividade de cópia.

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

Tenha estes pontos em mente ao considerar esta arquitetura.

Fiabilidade

A confiabilidade garante que seu aplicativo possa atender aos compromissos que você assume com seus clientes. Para obter mais informações, consulte Visão geral do pilar de confiabilidade.

  • O gerenciamento de infraestrutura, incluindo disponibilidade, é automatizado em bancos de dados do Azure.

  • Consulte Pool e failover para obter informações sobre a proteção contra failover que o Microsoft Service for DRDA fornece.

  • Você pode agrupar o gateway de dados local e o IR para fornecer garantias de disponibilidade mais altas.

Segurança

A segurança oferece garantias contra ataques deliberados e o abuso de seus valiosos dados e sistemas. Para obter mais informações, consulte Visão geral do pilar de segurança.

  • Faça uso de grupos de segurança de rede para limitar o acesso de serviços apenas ao que eles precisam para funcionar.

  • Use endpoints privados para seus serviços PaaS (Platform as a Service). Utilize firewalls de serviço para complementar a segurança dos seus serviços que estão acessíveis e inacessíveis através da Internet.

  • Esteja ciente das diferenças entre identidades de cliente locais e identidades de cliente no Azure. Terá de compensar quaisquer diferenças.

  • Use identidades gerenciadas para fluxos de dados de componente para componente.

  • Consulte Planejando e arquitetando soluções usando o Microsoft Service for DRDA para saber mais sobre os tipos de conexões de cliente que o Microsoft Service for DRDA suporta. As conexões de cliente afetam a natureza das transações, pooling, failover, autenticação e criptografia em sua rede.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

  • Os modelos de preços variam entre os serviços de componentes. Analise os modelos de preços dos serviços de componentes disponíveis para garantir que os modelos de preços se adequem ao seu orçamento.

  • Use a calculadora de preços do Azure para estimar o custo de implementação dessa solução.

Excelência operacional

A excelência operacional abrange os processos operacionais que implantam um aplicativo e o mantêm em execução na produção. Para obter mais informações, consulte Visão geral do pilar de excelência operacional.

  • O gerenciamento de infraestrutura, incluindo escalabilidade, é automatizado em bancos de dados do Azure.

  • Você pode expandir o IR auto-hospedado associando a instância lógica a várias máquinas locais no modo ativo-ativo.

  • Você pode agrupar o gateway de dados local e o IR para escalabilidade.

Eficiência de desempenho

Eficiência de desempenho é a capacidade da sua carga de trabalho para dimensionar para satisfazer as exigências que os utilizadores lhe colocam de forma eficiente. Para obter mais informações, consulte Visão geral do pilar de eficiência de desempenho.

Próximos passos