Arquitetura do Mainframe Connector

O Mainframe Connector geralmente é implantado como um aplicativo Java. Como o aplicativo é independente, basta instalar o IBM JRE versão 8 ou o IBM JRE versão 17 para implantar o Mainframe Connector. Um procedimento de linguagem de controle de jobs (JCL) é o front-end que você pode usar para chamar o Mainframe Connector. A imagem a seguir mostra uma visão geral da arquitetura do Mainframe Connector.

Arquitetura do Mainframe Connector
Arquitetura do Mainframe Connector

Ao fazer upload de arquivos de dados para o Cloud Storage, o Mainframe Connector se comunica diretamente com a API Cloud Storage usando o IBM z Integrated Information Processor (zIIP) ou o processador geral (GP). Também é possível implantar um serviço remoto para descarregar parte da computação em Google Cloud.

Depois que um arquivo de dados é enviado para o Cloud Storage, o Mainframe Connector envia uma chamada de procedimento remoto (RPC) ao serviço gRPC indicando o local do arquivo, o layout do registro e o local de saída. O serviço gRPC lê o arquivo do Cloud Storage, transcodifica os dados e grava um arquivo Optimized Row Columnar (ORC) multipartes no local de saída do Cloud Storage. Em seguida, o Mainframe Connector se comunica diretamente com a API BigQuery para registrar o arquivo ORC como uma tabela externa ou carregá-lo em uma tabela.

Como alternativa, você pode implantar um dispositivo de hardware no data center para transferir dados diretamente do sistema de armazenamento do mainframe para o Cloud Storage usando uma biblioteca de fitas virtuais (VTL, na sigla em inglês). Essa abordagem não usa zIIP nem GP durante a transferência de dados para o Cloud Storage porque o dispositivo de hardware recebe os dados diretamente do sistema de armazenamento do mainframe usando uma VTL e não usa o mainframe. Isso libera o mainframe para tarefas essenciais aos negócios.

Criptografia de dados

A IBM oferece uma implementação da Java Cryptography Extension (JCE) com a JVM chamada Java Cryptography Extension Common Cryptographic Architecture (IBMJCECCA) (Java 8 ou Java 17) que usa o sistema de criptografia de hardware no IBM z/OS. A conexão de segurança da camada de transporte (TLS) entre a JVM e os endpoints da API Google Cloud usa JCE e criptografia de hardware para proteger os dados durante as operações de extração, transformação e carga (ELT).

Procedimento JCL

Para usar procedimentos JCL, instale um interpretador de shell BQSH nas bibliotecas de procedimentos (PROCLIB) do mainframe. Os dados do ambiente padrão (STDENV) no procedimento JCL são usados para definir variáveis de ambiente, argumentos da JVM e classpath Java antes de iniciar o aplicativo Java. Um procedimento JCL inicia a JVM e a classe principal com.google.cloud.bqsh.Bqsh usando o iniciador de JVM IBM JVMLDM86.

Intérprete de shell BQSH

A classe principal do BQSH atua como um intérprete de shell. Ele lê a entrada de fluxo de um procedimento JCL, divide as linhas de entrada e tenta interpretar cada linha como um comando.

Aplicativo Java

O Mainframe Connector usa bibliotecas de cliente do Cloud Java, Apache ORC e outras bibliotecas de código aberto. Ele usa o SDK JZOS proprietário da IBM para interagir com o sistema de armazenamento IBM z/OS e é executado na JVM no IBM z/OS e no OpenJDK no Linux.

A seguir