Auf dieser Seite wird die Architektur von Mainframe Connector beschrieben.
Mainframe Connector wird in der Regel als Java-Anwendung bereitgestellt. Da die Anwendung in sich geschlossen ist, müssen Sie nur IBM JRE Version 8 oder IBM JRE Version 17 installieren, um Mainframe Connector bereitzustellen. Eine JCL-Prozedur (Job Control Language) ist das Frontend, mit dem Sie Mainframe Connector aufrufen können. Das folgende Bild bietet einen Überblick über die Mainframe Connector-Architektur.

Beim Hochladen von Datendateien in Cloud Storage kommuniziert Mainframe Connector direkt mit der Cloud Storage API über den IBM z Integrated Information Processor (zIIP) oder den allgemeinen Prozessor (GP). Sie können auch einen Remotedienst bereitstellen, um einen Teil der Berechnungen auf Google Cloudauszulagern.
Nachdem eine Datendatei in Cloud Storage hochgeladen wurde, sendet Mainframe Connector einen RPC (Remote Procedure Call) an den gRPC-Dienst, in dem der Speicherort der Datei, das Datensatzlayout und der Ausgabespeicherort angegeben werden. Der gRPC-Dienst liest die Datei aus Cloud Storage, transcodiert die Daten und schreibt eine mehrteilige Optimized Row Columnar (ORC)-Datei in den Cloud Storage-Ausgabeort. Mainframe Connector kommuniziert dann direkt mit der BigQuery API, um die ORC-Datei als externe Tabelle zu registrieren oder die ORC-Datei in eine Tabelle zu laden.
Alternativ können Sie ein Hardwaregerät in Ihrem Rechenzentrum bereitstellen, um Daten mithilfe einer virtuellen Bandbibliothek (VTL) direkt vom Mainframe-Speichersystem in Cloud Storage zu übertragen. Bei diesem Ansatz werden weder zIIP noch GP während der Datenübertragung zu Cloud Storage verwendet, da das Hardwaregerät die Daten direkt vom Mainframe-Speichersystem über eine VTL empfängt und den Mainframe überhaupt nicht verwendet. So wird der Mainframe für geschäftskritische Aufgaben freigegeben.
Datenverschlüsselung
IBM bietet eine Java Cryptography Extension (JCE)-Implementierung mit der JVM namens Java Cryptography Extension Common Cryptographic Architecture (IBMJCECCA) (Java 8 oder Java 17), die das Hardware-Kryptografiesystem auf IBM z/OS verwendet. Die TLS-Verbindung (Transport Layer Security) zwischen der JVM und den Google Cloud API-Endpunkten verwendet JCE und Hardwarekryptografie, um Daten während der ELT-Vorgänge (Extrahieren, Transformieren und Laden) zu schützen.
JCL-Prozedur
Wenn Sie JCL-Prozeduren verwenden möchten, müssen Sie einen BQSH-Shell-Interpreter in Ihren Mainframe-Prozedurbibliotheken (PROCLIB) installieren. Die STDENV-Daten (Standard Environment) in der JCL-Prozedur werden verwendet, um Umgebungsvariablen, JVM-Argumente und den Java-Klassenpfad festzulegen, bevor die Java-Anwendung gestartet wird. Eine JCL-Prozedur startet die JVM und die Hauptklasse com.google.cloud.bqsh.Bqsh
mit dem IBM JVMLDM86 JVM-Launcher.
BQSH-Shell-Interpreter
Die BQSH-Hauptklasse fungiert als Shell-Interpreter. Sie liest Stream-Eingaben aus einer JCL-Prozedur, teilt Eingabezeilen auf und versucht, jede Zeile als Befehl zu interpretieren.
Java-Anwendung
Der Mainframe Connector verwendet Java Cloud-Clientbibliotheken, Apache ORC und andere Open-Source-Bibliotheken. Es verwendet das proprietäre JZOS SDK von IBM für die Interaktion mit dem IBM z/OS-Speichersystem und wird auf der JVM auf IBM z/OS und OpenJDK auf Linux ausgeführt.