Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
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.
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.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/11 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Difficile à comprendre","hardToUnderstand","thumb-down"],["Informations ou exemple de code incorrects","incorrectInformationOrSampleCode","thumb-down"],["Il n'y a pas l'information/les exemples dont j'ai besoin","missingTheInformationSamplesINeed","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/11 (UTC)."],[],[],null,["# Mainframe Connector architecture\n\nThis page describes the architecture of Mainframe Connector.\n\nMainframe Connector is typically deployed as a Java application. As the\napplication is self contained, you need to only install [IBM JRE version 8](https://www.ibm.com/support/pages/java-sdk-downloads-version-80) or [IBM JRE version 17](https://www.ibm.com/support/pages/ibm-semeru-runtime-certified-edition-version-17-websphere-liberty-using-archives) to deploy Mainframe Connector.\nA [job control language (JCL)](#jcl-procedure) procedure is the frontend that\nyou can use to call Mainframe Connector. The following image gives an\noverview of Mainframe Connector architecture.\n\n\u003cbr /\u003e\n\nMainframe Connector architecture\n\n\u003cbr /\u003e\n\nWhen uploading data files to [Cloud Storage](/storage/docs),\nMainframe Connector communicates directly with the\n[Cloud Storage API](/storage/docs/apis) using either\n[IBM z Integrated Information Processor (zIIP)](https://www.ibm.com/products/z-integrated-information-processor) or general processor (GP). You can also\ndeploy a [remote service to offload some of the computation to Google Cloud](/mainframe-connector/docs/remote-transcoding).\n\nAfter a data file is uploaded to Cloud Storage, Mainframe Connector\nsends a remote procedure call (RPC) to the gRPC service indicating the location\nof the file, the record layout, and the output location. The gRPC service reads\nthe file from Cloud Storage, transcodes the data, and writes a multi-part\n[Optimized Row Columnar (ORC)](https://orc.apache.org/) file to the\nCloud Storage output location. Mainframe Connector then communicates\ndirectly with the [BigQuery API](/bigquery/docs/reference/libraries-overview)\nto register the ORC file as an external table or load the ORC file into a table.\n\nAlternately, you can deploy a hardware device in your data center to transfer\ndata directly from the mainframe storage system to Cloud Storage using a\nvirtual tape library (VTL). This approach uses neither [zIIP](https://www.ibm.com/products/z-integrated-information-processor) or GP during the data transfer to\nCloud Storage because the hardware device receives the data directly from the\nmainframe storage system using a VTL and does not use the mainframe at all. This\nfrees up the mainframe for business-critical tasks.\n\n### Data encryption\n\nIBM provides a [Java Cryptography Extension (JCE)](https://www.ibm.com/docs/en/i/7.6.0?topic=security-java-cryptography-extension) implementation with the JVM called\nJava Cryptography Extension Common Cryptographic Architecture (IBMJCECCA) ([Java 8](https://www.ibm.com/docs/en/sdk-java-technology/8?topic=components-ibmjcecca)\nor [Java 17](https://www.ibm.com/docs/en/semeru-runtime-ce-z/17.0.0?topic=guide-ibmjcecca)) that uses the hardware\ncryptography system on [IBM z/OS](https://www.ibm.com/products/zos). The\ntransport layer security (TLS) connection between the JVM and Google Cloud API\nendpoints use JCE and hardware cryptography to secure data during the extract,\ntransform, and load (ELT) operations.\n\n### JCL procedure\n\nTo use JCL procedures, you must install a [BQSH shell interpreter](#bqsh-interpreter)\nin your mainframe [procedure libraries (PROCLIB)](https://www.ibm.com/docs/en/zos/3.1.0?topic=libraries-procedure-proclib). The standard environment (STDENV) data in\nthe JCL procedure is used to set environment variables, JVM arguments, and Java\nclasspath before launching the [Java application](#java-app). A JCL procedure\nlaunches the JVM and main class `com.google.cloud.bqsh.Bqsh` using\n[IBM JVMLDM86 JVM launcher](https://public.dhe.ibm.com/software/Java/Java80/JZOS/jzos_users_guide_v8.pdf).\n\n### BQSH shell interpreter\n\nThe BQSH main class acts as a shell interpreter. It reads stream input from a\nJCL procedure, splits lines of input, and attempts to interpret each line as a\ncommand.\n\n### Java application\n\nThe Mainframe Connector uses [Java Cloud Client Libraries](/java/docs/reference),\n[Apache ORC](https://orc.apache.org/), and other open source libraries. It uses\n[IBM proprietary JZOS SDK](https://www.ibm.com/docs/en/semeru-runtime-ce-z/17?topic=sdk-user-guide)\nto interact with the IBM z/OS storage system and runs on the JVM on IBM z/OS and\n[OpenJDK on Linux](https://openjdk.org/).\n\nWhat's Next\n-----------\n\n- [Mainframe Connector configurations](/mainframe-connector/docs/configurations)"]]