Replicar dados de mainframe e de alcance médio no Azure usando o RDRS
O Rocket® Data Replicate and Sync (RDRS), anteriormente tcVISION, é uma solução de replicação de dados desenvolvida pela Rocket Software. O RDRS fornece uma solução de integração de mainframe da IBM para replicação de dados de mainframe, sincronização de dados, migração de dados e captura de dados de alteração (CDC) para vários serviços da plataforma de dados do Azure.
Rocket® Data Replica and Sync é uma marca comercial de sua empresa. Nenhum endosso é implícito pelo uso dessa marca.
Arquitetura
Baixe um Arquivo Visio dessa arquitetura.
Fluxo de dados
O fluxo de dados a seguir corresponde ao diagrama anterior:
A solução de replicação de dados RDRS oferece suporte a CDC de muitos bancos de dados baseados em mainframe, incluindo IBM Db2, IBM Information Management System (IMS) DB, Adabas for Software AG, CA Datacom e Computer Associates Integrated Data Management System (CA IDMS). O RDRS fornece agentes CDC baseados em log para capturar os dados de alteração no nível de registro. Esse CDC baseado em log tem um impacto mínimo nos bancos de dados de origem de produção.
O RDRS dá suporte ao CDC dos arquivos do Método de Acesso ao Armazenamento Virtual.
Uma tarefa é iniciada no mainframe. As tarefas iniciadas, ou STCs, são criadas no mainframe como parte da instalação do software RDRS. Dois STCs cruciais são:
O agente de captura, que captura dados alterados da origem.
O agente de aplicação, que usa APIs específicas do DBMS (sistema de gerenciamento de banco de dados) para gravar dados alterados com eficiência no destino.
Observação
Para Db2 z/OS, o RDRS também fornece uma solução CDC sem agente por meio de um UDT (tipo definido pelo usuário) Db2 que não precisa de STCs.
O OPM (gerenciador de plataforma aberta) serve como um servidor de replicação. Esse servidor contém utilitários para mapeamento automático de dados para gerar metadados para fontes e destinos. Ele também contém o conjunto de regras para extrair dados da origem. O servidor transforma e processa os dados nos sistemas de destino e grava os dados nos destinos. Você pode instalar esse componente em sistemas operacionais Linux, Unix e Windows (LUW).
O agente de aplicação do RDRS usa APIs específicas do DBMS. Essas APIs implementam com eficiência as alterações de dados em tempo real em combinação com a tecnologia CDC. As alterações são aplicadas da origem aos serviços de dados do Azure de destino, que são o banco de dados e os arquivos.
O RDRS dá suporte ao streaming direto dos dados alterados nos Hubs de Eventos do Azure ou no Kafka. Em seguida, os Aplicativos Lógicos do Azure, uma função ou uma solução personalizada na máquina virtual, processa esses eventos.
Os destinos da plataforma de dados do Azure que o RDRS dá suporte incluem o Banco de Dados SQL do Azure, o Banco de Dados do Azure para PostgreSQL, o Banco de Dados do Azure para MySQL, o Azure Cosmos DB e o Azure Data Lake Storage.
Os dados que chegam à plataforma de dados do Azure são consumidos pelos serviços do Azure ou por outras plataformas que têm permissão para vê-los. Essas plataformas incluem o Power BI, o Azure Synapse Analytics ou aplicativos personalizados.
O RDRS pode sincronizar inversa as alterações de captura de uma plataforma de banco de dados do Azure, como Banco de Dados SQL, Banco de Dados do Azure para MySQL, Banco de Dados do Azure para PostgreSQL ou Data Lake Storage. O RDRS pode gravar essas alterações novamente na camada de dados do mainframe.
Os arquivos de backup e descarregamento do banco de dados do mainframe são copiados para uma VM do Azure usando o RDRS para processamento de carga em massa.
O carregamento em massa do RDRS executa um carregamento inicial do banco de dados de destino usando dados de origem do mainframe. Os dados de origem podem ser lidos diretamente do armazenamento de dados do mainframe ou de um arquivo de backup ou descarregamento de mainframe. O processo de carregamento em massa converte automaticamente tipos de dados de mainframe, como campos decimal de intercâmbio decimal codificados binário estendidos. Para obter um desempenho ideal, use backup ou descarregamento de dados em vez de ler o banco de dados mainframe diretamente. Evite leituras diretas porque mover dados de descarregamento ou backup para a VM do Azure RDRS necessária e usar carregadores de banco de dados nativos minimiza a entrada/saída da rede e reduz os tempos de carga.
Alterar a replicação de dados de Db2 z/OS para um banco de dados SQL nativo do Microsoft Fabric usando RDRS
A arquitetura a seguir fornece uma visão geral de como os dados são replicados do Db2 z/OS para um banco de dados SQL nativo do Fabric quase em tempo real.
Baixe um Arquivo Visio dessa arquitetura.
Carregamento de dados inicial
O Db2 instalado em um IBM Mainframe no datacenter do cliente serve como a fonte de dados para replicação para a nuvem do Azure.
Para criar uma cópia completa, o agente de captura rdrs busca dados Db2 executando consultas SELECT no banco de dados Db2 de origem. Se o tamanho dos dados for grande, um backup de cópia de imagem dos dados poderá ser enviado do mainframe para a VM do LUW de captura no formato binário.
O OPM serve como um servidor de replicação. Esse servidor contém utilitários para mapeamento automático de dados para gerar metadados para fontes e destinos. Ele contém o conjunto de regras para extrair os dados da origem. O servidor transforma e processa os dados nos sistemas de destino e grava os dados nos destinos. Você pode instalar esse componente em sistemas operacionais LUW.
O agente de captura e aplicação do RDRS recebe dados do Db2, como a saída de consultas SELECT ou uma cópia de imagem. Depois que o agente de aplicação rdrs executa as transformações configuradas, ele grava os dados no banco de dados SQL nativo do Fabric de destino.
O agente de aplicação de RDRS usa o Microsoft ODBC Driver com a autenticação de ID do Microsoft Entra para SQL do Azure para gravar dados com eficiência no banco de dados SQL nativo do Fabric de destino.
Os dados são ingeridos no banco de dados SQL nativo do Fabric.
Depois que os dados chegam ao banco de dados SQL nativo do Fabric, os serviços do Azure ou outras entidades autorizadas o consomem, como o Fabric Analytics, o Power BI ou aplicativos personalizados.
CDC
Um. O Db2 instalado em um IBM Mainframe no datacenter do cliente serve como a fonte de dados para replicação na nuvem do Azure. O RDRS fornece a capacidade de recuperar dados de alteração baseados em log do Db2.
B. O RDRS define o processo de Db2 UDT para ler logs Db2. O UDT é executado no ambiente do IBM Workload Manager e é gerenciado pelo DBMS Db2. O UDT lê os dados de log e armazena esses dados na memória para transmissão.
C. O OPM serve como um servidor de replicação, equipado com utilitários para mapeamento automático de dados para gerar metadados para fontes e destinos. Ele inclui conjuntos de regras para extrair dados da origem, transforma e processa os dados para sistemas de destino e os grava nos destinos. Você pode instalar esse componente em sistemas operacionais LUW. O agente de captura e aplicação do RDRS recebe dados do processo UDT. Depois que o agente de aplicação configura transformações, ele grava os dados no banco de dados SQL do Fabric de destino.
D. A interface do painel RDRS habilita a administração, a operação, o controle e o monitoramento dos processos de troca de dados. Os utilitários de linha de comando do RDRS ajudam a automatizar processos de troca de dados e a gerenciar as operações autônomas do processo de sincronização de dados.
E. O agente de aplicação rdrs usa o Microsoft ODBC Driver com a autenticação de ID do Microsoft Entra para SQL do Azure para executar consultas de linguagem de manipulação de dados no banco de dados SQL nativo do Fabric de destino.
F. Depois que os dados chegam ao banco de dados SQL nativo do Fabric, os serviços do Azure ou outras entidades autorizadas o consomem, incluindo o Fabric Analytics, o Power BI ou aplicativos personalizados.
G. O RDRS também fornece recursos para gravar dados capturados como JSON em Hubs de Eventos ou Kafka.
H. Os Hubs de Eventos servem como uma plataforma de armazenamento para mensagens de dados CDC.
I. Aplicativos Lógicos, Azure Functions ou uma infraestrutura como uma solução lógica personalizada baseada em serviço em uma VM do Azure podem consumir mensagens dos Hubs de Eventos para executar o processamento personalizado.
Componentes
Esta solução usa os seguintes componentes.
Componentes de rede e identidade
Essa arquitetura refere-se aos seguintes serviços de rede que você pode usar individualmente ou em combinação para segurança aprimorada.
O Azure ExpressRoute é um serviço que permite estender suas redes locais para o Microsoft Cloud por meio de uma conexão privada que um provedor de conectividade manipula. Você pode usar o ExpressRoute para estabelecer conexões altamente seguras e confiáveis para serviços de nuvem, como o Microsoft Azure e o Microsoft 365.
Um gateway de VPN do Azure é um tipo específico de gateway de rede virtual que envia tráfego criptografado entre uma rede virtual do Azure e um local pela Internet pública.
O Microsoft Entra ID é um serviço de gerenciamento de identidade e acesso que você pode sincronizar com um diretório local.
Componentes do aplicativo
Os Aplicativos Lógicos criam e executam tarefas e processos recorrentes automatizados em um agendamento. Você pode chamar os serviços dentro e fora do Azure, como pontos de extremidade HTTP ou HTTPS, postar mensagens em serviços do Azure, como o Armazenamento do Azure e o Barramento de Serviço do Azure, ou carregar arquivos em um compartilhamento de arquivos.
O Azure Functions é um serviço de nuvem que permite executar pequenas partes de código, conhecidas como funções, sem a necessidade de gerenciar ou configurar a infraestrutura de aplicativo subjacente. Você pode usar o Azure Functions para automatizar tarefas, processar dados, integrar sistemas e criar aplicativos escalonáveis. A infraestrutura de nuvem fornece os servidores de data up-toque você precisa para manter seu aplicativo em execução em escala.
As VMs do Azure são recursos de computação escalonáveis sob demanda. Uma VM do Azure oferece a flexibilidade da virtualização e elimina as demandas de manutenção do hardware físico. As VMs do Azure operam em sistemas Windows e Linux.
Componentes de armazenamento e banco de dados
Essa arquitetura discute a migração de dados para armazenamento em nuvem escalonável e mais seguro e bancos de dados gerenciados para gerenciamento de dados flexível e inteligente no Azure.
O armazenamento fornece soluções de armazenamento não gerenciadas, como Armazenamento de Blobs do Azure, Armazenamento de Tabelas do Azure, Armazenamento de Filas do Azure e Arquivos do Azure. Os Arquivos do Azure são especialmente úteis para soluções de mainframe reprojetadas e fornecem um complemento eficaz com armazenamento SQL gerenciado.
O SQL do Azure é uma plataforma totalmente gerenciada como um serviço para o SQL Server no Azure. Você pode migrar dados relacionais e usá-los com eficiência com outros componentes do Azure, incluindo Instância Gerenciada de SQL do Azure, VMs do SQL do Azure, Banco de Dados do Azure para PostgreSQL e Banco de Dados do Azure para MySQL.
O Azure Cosmos DB é uma oferta sem SQL que você pode usar para migrar dados nontabular do mainframe.
O banco de dados SQL no Fabric é a plataforma primária que dá suporte a cargas de trabalho de processamento de transações online e fornece simplicidade que facilita a instalação e o gerenciamento. Ele tem um sistema que replica automaticamente os dados no OneLake quase em tempo real, o que o torna ideal para tarefas de análise. Ele é integrado a estruturas de desenvolvimento e ferramentas de análise. Essa integração ajuda a garantir a compatibilidade e a flexibilidade para vários aplicativos. O banco de dados SQL no Fabric permite executar consultas da mesma maneira que o Banco de Dados SQL e inclui um editor baseado na Web acessível por meio do portal do Fabric.
Componentes de monitoramento
O Azure Monitor oferece uma solução abrangente para coleta, análise e ação com base na telemetria dos ambientes de nuvem e locais.
O Application Insights analisa e apresenta a telemetria do aplicativo.
Os Logs do Azure Monitor são um recurso do Monitor que coleta e organiza dados de log e desempenho de recursos monitorados. Você pode consolidar dados de várias fontes, como logs de plataforma de serviços do Azure, dados de log e desempenho de agentes de VM e dados de uso e desempenho de aplicativos, em um único workspace a ser analisado em conjunto usando uma linguagem de consulta sofisticada que pode analisar rapidamente milhões de registros.
O Log Analytics é uma ferramenta no portal do Azure. Você pode usar consultas de log para obter insights dos dados coletados nos Logs do Azure Monitor. O Log Analytics usa uma linguagem de consulta avançada para que você possa unir dados de várias tabelas, agregar grandes conjuntos de dados e executar operações complexas com código mínimo.
Detalhes do cenário
Mainframes são servidores que processam um grande número de transações. Os aplicativos mainframe geram e consomem grandes quantidades de dados todos os dias. As nuvens públicas fornecem flexibilidade, otimização de custos, facilidade de uso e fácil integração. Muitos aplicativos x86 e mainframe estão migrando para a nuvem, portanto, as organizações precisam de uma estratégia de migração e integração de dados de mainframe para nuvem bem projetada.
Esse cenário integra uma camada de dados de mainframe do IBM Z à plataforma de dados de nuvem do Azure usando o RDRS fornecido pelo Rocket Software .
Possíveis casos de uso
Essa solução é ideal para migrações de dados em larga escala para a plataforma de dados do Azure. Considere este cenário para os casos de uso a seguir:
Migração completa de uma camada de dados de mainframe: Nesse caso de uso, um cliente deseja mover todos os seus Db2, IMS, IDMS, arquivos e outros dados de um mainframe para a plataforma de dados do Azure.
Coexistência de mainframe e aplicativos baseados no Azure: Nesse caso de uso, um cliente requer suporte para uma sincronização bidirecional entre um mainframe e a plataforma de dados do Azure.
Arquivamento: Nesse caso de uso, um cliente deseja armazenar dados para fins de auditoria e conformidade, mas não deseja acessar esses dados com frequência. O armazenamento fornece uma solução de baixo custo para armazenar dados de arquivo morto.
Considerações
Essas considerações implementam os pilares do Azure Well-Architected Framework, um conjunto de princípios orientadores que você pode usar para aprimorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Well-Architected Framework.
Confiabilidade
A confiabilidade ajuda a garantir que seu aplicativo possa cumprir os compromissos que você faz aos seus clientes. Para obter mais informações, consulte Lista de verificação de revisão de design para confiabilidade.
Configure o OPM rdrs em VMs do Azure que são implantadas em zonas de disponibilidade separadas para fornecer alta disponibilidade. Se ocorrer uma falha, um OPM rdrs secundário será ativado e comunicará seu endereço IP ao gerenciador de mainframe do RDRS. Em seguida, o mainframe se comunica com o novo RDRS OPM que continua a ser processado em seu próximo ponto de reinicialização lógica usando uma combinação de unidade lógica de trabalho e arquivos de reinicialização.
Projete serviços de banco de dados do Azure para permitir redundância de zona, de forma que eles possam fazer failover em um nó secundário se houver uma interrupção ou durante uma janela de manutenção.
Use os Logs do Azure Monitor e o Application Insights para monitorar a integridade de um recurso do Azure. É possível definir alertas para o gerenciamento proativo.
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.
Controlar a autenticação e o acesso para o RDRS usando a ID do Microsoft Entra.
Criptografar transferências de dados entre produtos RDRS, como transferências do mainframe para o Azure, usando o TLS (Transport Layer Security).
Use o ExpressRoute ou uma VPN site a site para uma conexão mais privada e eficiente com o Azure de um ambiente local.
Autentique os recursos do Azure usando a ID do Microsoft Entra e gerencie permissões usando o controle de acesso baseado em função.
Use os serviços de banco de dados no Azure para dar suporte a várias opções de segurança, como Transparent Data Encryption para dados em repouso, TLS para dados em trânsito e criptografia de dados durante o processamento para ajudar a garantir que seus dados estejam sempre criptografados. Para obter mais informações, consulte a documentação de segurança do Azure e as linhas de base de segurança do Azure.
Otimização de custos
A Otimização de Custos concentra-se em maneiras 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 parade Otimização de Custos.
Use a Calculadora de preços do Azure para estimar o custo da implantação dessa solução.
Eficiência de desempenho
A Eficiência de Desempenho refere-se à capacidade da carga de trabalho de dimensionar para atender às demandas do usuário com eficiência. Para obter mais informações, consulte Lista de verificação de design parade Eficiência de Desempenho.
Escalabilidade
Configure o dimensionamento do RDRS para processamento CDC executando vários fluxos de replicação paralela. Primeiro, analise os arquivos inclusos nas transações lógicas. Esses arquivos devem ser processados juntos em sequência. O processo RDRS CDC ajuda a garantir a integridade de cada transação lógica. Por exemplo, os conjuntos de tabelas que não participam de transações comuns podem ser divididos em tarefas paralelas criando vários scripts de processamento.
O RDRS pode executar o processamento paralelo e simultâneo de carregamento em massa em uma única VM do Azure ou em várias VMs do Azure, o que proporciona escalabilidade horizontal. Execute operações rápidas de carregamento em massa dividindo o processo em várias tarefas, por intervalos arbitrários ou pela filtragem de linhas. A filtragem de linhas pode usar uma chave, chave de partição, data e outros filtros.
A camada de computação sem servidor do Banco de Dados SQL fornece uma opção de dimensionamento automático com base na carga de trabalho. Outros bancos de dados do Azure podem ser ampliados ou reduzidos usando a automação para atender às demandas da carga de trabalho. Para obter mais informações, consulte Práticas recomendadas do dimensionamento automático.
Colaboradores
A Microsoft mantém este artigo. Os colaboradores a seguir escreveram este artigo.
Principais autores:
- Sandip Khandelwal | Arquiteto de Engenharia Sênior
Outros colaboradores:
- Liz Casey | Desenvolvedor de Conteúdo Sênior
Para ver perfis não públicos no LinkedIn, entre no LinkedIn.
Próximas etapas
- Guias de migração de Banco de Dados do Azure
- Guia de migração: SQL Server para o Banco de Dados SQL do Azure
- Treinamento: arquitetar uma plataforma de dados no Azure
- Treinamento: criar uma estratégia de migração do SQL Server