Architecture de Mainframe Connector

Mainframe Connector est généralement déployé en tant qu'application Java. Comme l'application est autonome, il vous suffit d'installer IBM JRE version 8 ou IBM JRE version 17 pour déployer Mainframe Connector. Une procédure de langage de contrôle des tâches (JCL) est l'interface que vous pouvez utiliser pour appeler Mainframe Connector. L'image suivante donne un aperçu de l'architecture Mainframe Connector.

Architecture de Mainframe Connector
Architecture de Mainframe Connector

Lors de l'importation de fichiers de données dans Cloud Storage, Mainframe Connector communique directement avec l'API Cloud Storage à l'aide d'un processeur d'informations intégré IBM z (zIIP) ou d'un processeur général (GP). Vous pouvez également déployer un service à distance pour décharger une partie du calcul sur Google Cloud.

Une fois qu'un fichier de données est importé dans Cloud Storage, Mainframe Connector envoie un appel de procédure à distance (RPC) au service gRPC pour indiquer l'emplacement du fichier, la mise en page des enregistrements et l'emplacement de sortie. Le service gRPC lit le fichier depuis Cloud Storage, transcode les données et écrit un fichier Optimized Row Columnar (ORC) multipartie dans l'emplacement de sortie Cloud Storage. Le connecteur Mainframe communique ensuite directement avec l'API BigQuery pour enregistrer le fichier ORC en tant que table externe ou le charger dans une table.

Vous pouvez également déployer un appareil physique dans votre centre de données pour transférer des données directement du système de stockage du mainframe vers Cloud Storage à l'aide d'une bibliothèque de bandes virtuelles (VTL). Cette approche n'utilise ni zIIP ni GP lors du transfert de données vers Cloud Storage, car l'appareil matériel reçoit les données directement du système de stockage du mainframe à l'aide d'une VTL et n'utilise pas du tout le mainframe. Cela libère le mainframe pour les tâches critiques.

Chiffrement des données

IBM fournit une implémentation Java Cryptography Extension (JCE) avec la JVM appelée Java Cryptography Extension Common Cryptographic Architecture (IBMJCECCA) (Java 8 ou Java 17) qui utilise le système de cryptographie matérielle sur IBM z/OS. La connexion TLS (Transport Layer Security) entre la JVM et les points de terminaison de l'API  Google Cloud utilise JCE et le chiffrement matériel pour sécuriser les données lors des opérations d'extraction, de transformation et de chargement (ELT).

Procédure JCL

Pour utiliser les procédures JCL, vous devez installer un interpréteur de shell BQSH dans vos bibliothèques de procédures mainframe (PROCLIB). Les données de l'environnement standard (STDENV) de la procédure JCL sont utilisées pour définir les variables d'environnement, les arguments JVM et le chemin d'accès Java avant de lancer l'application Java. Une procédure JCL lance la JVM et la classe principale com.google.cloud.bqsh.Bqsh à l'aide du lanceur JVM IBM JVMLDM86.

Interpréteur shell BQSH

La classe principale BQSH agit en tant qu'interpréteur de shell. Il lit les flux d'entrée d'une procédure JCL, divise les lignes d'entrée et tente d'interpréter chaque ligne comme une commande.

Application Java

Le connecteur Mainframe utilise les bibliothèques clientes Cloud Java, Apache ORC et d'autres bibliothèques Open Source. Il utilise le SDK JZOS propriétaire d'IBM pour interagir avec le système de stockage IBM z/OS et s'exécute sur la JVM sur IBM z/OS et OpenJDK sur Linux.

Étape suivante