Replicar e sincronizar dados de mainframe para o Azure
Este exemplo de arquitetura descreve um plano de implementação para replicar e sincronizar dados durante a modernização para o Azure. Ele descreve aspetos técnicos, como armazenamentos de dados, ferramentas e serviços.
Arquitetura
Descarregue um ficheiro Visio desta arquitetura.
Workflow
O fluxo de trabalho a seguir corresponde ao diagrama anterior:
Os sistemas mainframe e midrange atualizam bancos de dados de aplicativos locais em intervalos regulares. Para manter a consistência, esta solução sincroniza os dados mais recentes com os bancos de dados do Azure. O processo de sincronização envolve as seguintes etapas.
Os pipelines dinâmicos 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.
Os pipelines agrupam as atividades que executam tarefas. Para extrair dados, o Azure Data Factory cria dinamicamente um pipeline para cada tabela local. Em seguida, você pode usar uma implementação paralela massiva ao replicar dados no Azure. Você também pode configurar a solução para atender às suas necessidades:
Replicação completa: Você replica o banco de dados inteiro e faz 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 as linhas atualizadas com bancos de dados do Azure. Essas colunas contêm uma chave de incremento contínuo ou um carimbo de data/hora que indica a última atualização da tabela.
O Azure Data Factory também usa pipelines para as seguintes tarefas de transformação:
- Conversão de 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
Bancos de dados locais como Db2 zOS, Db2 for i e Db2 LUW armazenam os dados do aplicativo.
Um tempo de execução de integração (IR) auto-hospedado fornece o ambiente que o Azure Data Factory usa para executar e despachar atividades.
O Azure Data Lake Storage Gen2 e o Azure Blob Storage preparam os dados. Às vezes, essa etapa é necessária para transformar e mesclar dados de várias fontes.
Para a preparação de dados, o Azure Data Factory usa o Azure Databricks, atividades personalizadas e fluxos de dados de pipeline para transformar dados de forma rápida e eficaz.
O Azure Data Factory carrega dados nos seguintes 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
- Base de Dados do Azure para MySQL
O SQL Server Integration Services (SSIS) extrai, transforma e carrega dados.
O gateway de dados local é um aplicativo cliente do Windows instalado localmente que atua como uma ponte entre suas fontes de dados locais e os serviços do Azure.
Um pipeline de dados no Microsoft Fabric é um agrupamento lógico de atividades que executam a ingestão de dados do DB2 para o armazenamento e bancos de dados do Azure.
Se a solução exigir replicação quase em tempo real, você poderá usar ferramentas que não sejam da Microsoft.
Componentes
Esta seção descreve outras ferramentas que você pode usar durante a modernização, sincronização e integração de dados.
Integradores de dados
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 de extração, transformação e carregamento (ETL) e fluxos de trabalho de extração, carregamento e transformação (ELT).
O Azure Synapse Analytics é um serviço de análise empresarial que acelera o tempo de obtenção de informações em armazéns de dados e sistemas de big data. O Azure Synapse Analytics combina o melhor das seguintes tecnologias e serviços:
Tecnologias SQL para armazenamento de dados corporativos
Tecnologias Spark para big data
Azure Data Explorer para análise de log e séries cronológicas
Azure Pipelines para integração de dados e fluxos de trabalho ETL e ELT
Integração profunda com outros serviços do Azure, como Power BI, Azure Cosmos DB e Azure Machine Learning
O SSIS é uma plataforma para a criação de soluções de integração e transformação de dados em 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. Ele é baseado no sistema de processamento distribuído de código aberto Apache Spark e é 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 os benefícios de uma plataforma como serviço (PaaS) totalmente gerenciada 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 em hiperescala dimensionam automaticamente os recursos sob demanda.
A Instância Gerenciada SQL do Azure faz parte do portfólio de serviços SQL do Azure. Este serviço de banco de dados em nuvem inteligente e escalável combina a mais ampla compatibilidade do mecanismo do SQL Server com todos os benefícios de um PaaS totalmente gerenciado e perene. Use a Instância Gerenciada SQL para modernizar aplicativos existentes em escala.
O SQL Server em Máquinas Virtuais do Azure fornece uma maneira de elevar e deslocar cargas de trabalho do SQL Server para a nuvem com compatibilidade de código completa. Como parte da família SQL do Azure, o SQL Server em Máquinas Virtuais do Azure fornece o desempenho, a segurança e a análise combinados do SQL Server com a flexibilidade e a conectividade híbrida do Azure. Use o SQL Server em Máquinas Virtuais do Azure para 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. Use este serviço para se concentrar na inovação de aplicativos em vez do gerenciamento de banco de dados. Você também pode dimensionar sua carga de trabalho conforme necessário.
O Azure Cosmos DB é um banco de dados de vários modelos distribuído globalmente. Use o Azure Cosmos DB para garantir que suas soluções possam 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 um dígito e milissegundos 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 várias fontes 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. Ele também fornece os recursos de armazenamento hierárquico, alta disponibilidade e recuperação de desastres do Armazenamento de Blobs.
O Microsoft Fabric é uma plataforma de análise completa e pronta para empresas. Ele unifica a movimentação de dados, o processamento de dados, a ingestão, a transformação, o roteamento de eventos em tempo real e a criação de relatórios. Ele suporta esses recursos usando serviços integrados como Fabric Data Engineer, Fabric Data Factory, Fabric Data Science, Fabric Real-Time Intelligence, Fabric Data Warehouse e Fabric Databases.
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.
Outras ferramentas
Microsoft Service for Distributed Relational Database Architecture (DRDA) é um componente do Host Integration Server. 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 Assistente de Migração do SQL Server para DB2 automatiza a migração do DB2 para os serviços de banco de dados da Microsoft. Esta ferramenta é executada em uma máquina virtual. Ele converte objetos de banco de dados DB2 em objetos de banco de dados do SQL Server e cria esses objetos em SQL.
Detalhes do cenário
A disponibilidade e a integridade dos dados são essenciais na modernização de mainframe e midrange. As estratégias de priorização de dados ajudam a manter os dados intactos e disponíveis durante a migração para o Azure. Para evitar interrupções 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: conecte-se e extraia dados de um banco de dados de origem.
Transformação:
Preparo: armazene temporariamente os dados em seu formato original e prepare-os para a transformação.
Preparação: transforme e manipule dados usando regras de mapeamento que atendam aos requisitos do banco de dados de destino.
Carregando: insira 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 de Segregação de Responsabilidade de Consulta de Comando 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 correção ou modernização em fases.
Recomendações
Você pode aplicar as seguintes recomendações à maioria dos cenários. Siga-as, a não ser que tenha requisitos específicos que as anulem.
Quando você usa o Azure 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 você pode usar para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.
Fiabilidade
A confiabilidade ajuda a garantir que seu aplicativo possa cumprir os compromissos que você assume com seus clientes. Para obter mais informações, consulte Lista de verificação de revisão de design para confiabilidade.
O gerenciamento de infraestrutura, incluindo disponibilidade, é automatizado em bancos de dados do Azure.
Para obter informações sobre o Microsoft Service for DRDA proteção contra failover, consulte Pool e failover.
Você pode agrupar o gateway de dados local e o IR para fornecer garantias de disponibilidade mais altas.
Segurança
A segurança fornece garantias contra ataques deliberados e o uso indevido de seus valiosos dados e sistemas. Para obter mais informações, consulte Lista de verificação de revisão de design para segurança.
Use grupos de segurança de rede para limitar o acesso apenas às funções necessárias para cada serviço.
Use pontos de extremidade privados para seus serviços de PaaS. Utilize firewalls de serviço acessíveis e inacessíveis através da Internet para complementar a segurança dos seus serviços.
Use identidades gerenciadas para fluxos de dados de componente para componente.
Para obter informações sobre os tipos de conexões de cliente suportadas pelo Microsoft Service for DRDA, consulte Planejar e arquitetar soluções usando o Microsoft Service for DRDA. 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 concentra-se em formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Lista de verificação de revisão de design para 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 eles se encaixem no 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 Lista de verificação de revisão de design para 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.
Eficiência de desempenho
A Eficiência de Desempenho refere-se à capacidade da sua carga de trabalho de escalar para atender às demandas dos usuários de forma eficiente. Para obter mais informações, consulte Lista de verificação de revisão de projeto para eficiência de desempenho.
Considere o Azure ExpressRoute como uma opção de alta escala se sua implementação usar largura de banda significativa para replicação inicial ou replicação de dados alterada contínua.
Escolha a configuração de RI certa para o seu cenário.
Próximos passos
- Entre em contato com o Azure Data Engineering - On-premises Modernization para obter mais informações.
- Leia o Guia de migração.