

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Erstellen Sie einen fortschrittlichen Mainframe-Dateiviewer in der AWS-Cloud
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud"></a>

*Biopathie GOPALSAMY und Jeremiah O'Connor, Amazon Web Services*

## Zusammenfassung
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-summary"></a>

Dieses Muster enthält Codebeispiele und Schritte, mit denen Sie mithilfe von serverlosen AWS-Services ein erweitertes Tool zum Durchsuchen und Überprüfen Ihrer Mainframe-Dateien im festen Format erstellen können. Das Muster bietet ein Beispiel dafür, wie eine Mainframe-Eingabedatei zum Durchsuchen und Suchen in ein Amazon OpenSearch Service-Dokument konvertiert wird. Das Datei-Viewer-Tool kann Ihnen dabei helfen, Folgendes zu erreichen:
+ Behalten Sie die gleiche Mainframe-Dateistruktur und das gleiche Layout für Konsistenz in Ihrer AWS-Zielmigrationsumgebung bei (Sie können beispielsweise dasselbe Layout für Dateien in einer Batch-Anwendung beibehalten, die Dateien an externe Parteien überträgt)
+ Beschleunigen Sie die Entwicklung und das Testen während Ihrer Mainframe-Migration
+ Support von Wartungsaktivitäten nach der Migration

## Voraussetzungen und Einschränkungen
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-prereqs"></a>

**Voraussetzungen**
+ Ein aktives AWS-Konto
+ Eine virtuelle private Cloud (VPC) mit einem Subnetz, das über Ihre Legacy-Plattform erreichbar ist
+ 
**Anmerkung**  
Eine Eingabedatei und das dazugehörige COBOL-Copybook (Common Business-Oriented Language) (: Beispiele für Eingabedateien und COBOL-Copybooks finden Sie im Repository. [gfs-mainframe-solutions](https://github.com/aws-samples/gfs-mainframe-patterns.git) GitHub Weitere Informationen zu COBOL-Copybooks finden Sie im [Enterprise COBOL for z/OS ](https://publibfp.boulder.ibm.com/epubs/pdf/igy6pg30.pdf) 6.3 Programming Guide auf der IBM-Website.)

**Einschränkungen**
+ Das Parsen von Copybooks ist auf nicht mehr als zwei verschachtelte Ebenen beschränkt (OCCURS)

## Architektur
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-architecture"></a>

**Quelltechnologie-Stack**
+ Eingabedateien im [FB-Format (Fixed Blocked)](https://www.ibm.com/docs/en/zos-basic-skills?topic=set-data-record-formats)
+ COBOL-Copybook-Layout

**Zieltechnologie-Stack**
+ Amazon Athena
+  OpenSearch Amazon-Dienst
+ Amazon Simple Storage Service (Amazon-S3)
+ AWS Lambda
+ AWS Step Functions

**Zielarchitektur**

Das folgende Diagramm zeigt den Prozess des Parsens und Konvertierens einer Mainframe-Eingabedatei in ein OpenSearch Servicedokument zum Durchsuchen und Suchen.

![\[Prozess zum Analysieren und Konvertieren einer Mainframe-Eingabedatei in einen Service. OpenSearch\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/36d72b00-d163-455f-9e59-e2c872e7c28a/images/cce68438-bcf2-48c1-b86b-01242235ec76.png)


Das Diagramm zeigt den folgenden Workflow:

1. Ein Admin-Benutzer oder eine Admin-Anwendung überträgt Eingabedateien in einen S3-Bucket und COBOL-Copybooks in einen anderen S3-Bucket.

1. 
**Anmerkung**  
Der S3-Bucket mit den Eingabedateien ruft eine Lambda-Funktion auf, die einen serverlosen Step Functions Functions-Workflow startet. : Die Verwendung eines S3-Ereignistriggers und einer Lambda-Funktion zur Steuerung des Step Functions Functions-Workflows in diesem Muster ist optional. Die GitHub Codebeispiele in diesem Muster beinhalten nicht die Verwendung dieser Dienste, aber Sie können diese Dienste je nach Ihren Anforderungen verwenden.

1. Der Step Functions Functions-Workflow koordiniert alle Batch-Prozesse aus den folgenden Lambda-Funktionen:
   + Die `s3copybookparser.py` Funktion analysiert das Copybook-Layout und extrahiert Feldattribute, Datentypen und Offsets (erforderlich für die Verarbeitung der Eingabedaten).
   + Die `s3toathena.py` Funktion erstellt ein Athena-Tabellenlayout. Athena analysiert die Eingabedaten, die von der `s3toathena.py` Funktion verarbeitet werden, und konvertiert die Daten in eine CSV-Datei.
   + Die `s3toelasticsearch.py` Funktion nimmt die Ergebnisdatei aus dem S3-Bucket auf und leitet die Datei an den Service weiter. OpenSearch 

1. Benutzer greifen mit OpenSearch Service auf OpenSearch Dashboards zu, um die Daten in verschiedenen Tabellen- und Spaltenformaten abzurufen und dann Abfragen für die indizierten Daten auszuführen.

## Tools
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-tools"></a>

**AWS-Services**
+ [Amazon Athena](https://docs.aws.amazon.com/athena/latest/ug/what-is.html) ist ein interaktiver Abfrageservice, mit dem Sie Daten mithilfe von Standard-SQL direkt in Amazon Simple Storage Service (Amazon S3) analysieren können.
+ [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) ist ein Rechenservice, mit dem Sie Code ausführen können, ohne Server bereitstellen oder verwalten zu müssen. Er führt Ihren Code nur bei Bedarf aus und skaliert automatisch, sodass Sie nur für die tatsächlich genutzte Rechenzeit zahlen. In diesem Muster verwenden Sie Lambda, um Kernlogik zu implementieren, z. B. das Parsen von Dateien, das Konvertieren von Daten und das Laden von Daten in OpenSearch Service für den interaktiven Dateizugriff.
+ [Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/what-is.html) ist ein verwalteter Service, der Sie bei der Bereitstellung, dem Betrieb und der Skalierung von OpenSearch Service-Clustern in der AWS-Cloud unterstützt. In diesem Muster verwenden Sie OpenSearch Service, um die konvertierten Dateien zu indizieren und Benutzern interaktive Suchfunktionen bereitzustellen.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.
+ [AWS Command Line Interface (AWS CLI)](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html) ist ein Open-Source-Tool, mit dem Sie über Befehle in Ihrer Befehlszeilen-Shell mit AWS-Services interagieren können.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) hilft Ihnen dabei, den Zugriff auf Ihre AWS-Ressourcen sicher zu verwalten, indem kontrolliert wird, wer authentifiziert und autorisiert ist, diese zu verwenden.
+ [AWS Step Functions](https://docs.aws.amazon.com/step-functions/latest/dg/welcome.html) ist ein serverloser Orchestrierungsservice, mit dem Sie Lambda-Funktionen und andere AWS-Services kombinieren können, um geschäftskritische Anwendungen zu erstellen. In diesem Muster verwenden Sie Step Functions, um Lambda-Funktionen zu orchestrieren.

**Andere Tools**
+ [GitHub](https://github.com/)ist ein Code-Hosting-Dienst, der Tools für die Zusammenarbeit und Versionskontrolle bereitstellt.
+ [Python](https://www.python.org/) ist eine Programmiersprache auf hohem Niveau.

**Code**

Der Code für dieses Muster ist im GitHub [gfs-mainframe-patterns](https://github.com/aws-samples/gfs-mainframe-patterns.git)Repository verfügbar.

## Epen
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-epics"></a>

### Bereiten Sie die Zielumgebung vor
<a name="prepare-the-target-environment"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Erstellen Sie den S3-Bucket. | [Erstellen Sie einen S3-Bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html) zum Speichern der Copybooks, Eingabedateien und Ausgabedateien. Wir empfehlen die folgende Ordnerstruktur für Ihren S3-Bucket:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Erstellen Sie die Funktion s3copybookparser. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Erstellen Sie die Funktion s3toathena. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Erstellen Sie die Funktion s3toelasticsearch. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Erstellen Sie den OpenSearch Service-Cluster. | **Erstellen Sie den Cluster**[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html)**Gewähren Sie Zugriff auf die IAM-Rolle**Gehen Sie wie folgt vor, um einen detaillierten Zugriff auf die IAM-Rolle (`arn:aws:iam::**:role/service-role/s3toelasticsearch-role-**`) der Lambda-Funktion bereitzustellen:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Erstellen Sie Step Functions für die Orchestrierung. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 

### Bereitstellen und ausführen
<a name="deploy-and-run"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Laden Sie die Eingabedateien und Copybooks in den S3-Bucket hoch. | Laden Sie Beispieldateien aus dem [GitHub ](https://github.com/aws-samples/gfs-mainframe-patterns.git)Repository-Beispielordner herunter und laden Sie die Dateien in den S3-Bucket hoch, den Sie zuvor erstellt haben.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 
| Rufen Sie die Step Functions auf. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html)<pre>{<br />  "s3_copybook_bucket_name": "<BUCKET NAME>",<br />  "s3_copybook_bucket_key": "<COPYBOOK PATH>",<br />  "s3_source_bucket_name": "<BUCKET NAME",<br />  "s3_source_bucket_key": "INPUT FILE PATH"<br />}</pre>Beispiel:<pre>{<br />  "s3_copybook_bucket_name": "fileaidtest",<br />  "s3_copybook_bucket_key": "copybook/acctix.cpy",<br />  "s3_source_bucket_name": "fileaidtest",<br />  "s3_source_bucket_key": "input/acctindex"<br />}</pre> | Allgemeines AWS | 
| Validieren Sie die Workflow-Ausführung in Step Functions. | Überprüfen Sie in der [Step Functions Functions-Konsole](https://console.aws.amazon.com/states/home) die Workflow-Ausführung im **Graph Inspector**. Die Status des Ausführungslaufs sind farblich gekennzeichnet, um den Ausführungsstatus darzustellen. Blau steht beispielsweise für **In Bearbeitung**, Grün für **Erfolgreich** und Rot für **Fehlgeschlagen**. Ausführlichere Informationen zu den **Ausführungsereignissen finden Sie auch in der Tabelle im Abschnitt Verlauf** der Ausführungsereignisse.Ein Beispiel für eine grafische Workflow-Ausführung finden Sie im *Diagramm Step Functions* im Abschnitt *Zusätzliche Informationen* dieses Musters. | Allgemeines AWS | 
| Überprüfen Sie die Lieferprotokolle in Amazon CloudWatch. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html)Ein Beispiel für erfolgreiche Zustellungsprotokolle finden Sie unter *CloudWatch Übermittlungsprotokolle* im Abschnitt *Zusätzliche Informationen* dieses Musters. | Allgemeines AWS | 
| Überprüfen Sie die formatierte Datei in OpenSearch Dashboards und führen Sie Dateioperationen durch. | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/build-an-advanced-mainframe-file-viewer-in-the-aws-cloud.html) | Allgemeines AWS | 

## Zugehörige Ressourcen
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-resources"></a>

**Referenzen**
+ [Beispiel für ein COBOL-Copybook](https://www.ibm.com/docs/en/record-generator/3.0?topic=SSMQ4D_3.0.0/documentation/cobol_rcg_examplecopybook.html) (IBM-Dokumentation)
+ [BMC Compuware File-AID](https://www.bmc.com/it-solutions/bmc-compuware-file-aid.html) (BMC-Dokumentation)

**Tutorials**
+ [Tutorial: Verwenden eines Amazon S3 S3-Triggers zum Aufrufen einer Lambda-Funktion (AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/with-s3-example.html) Lambda-Dokumentation)
+ [Wie erstelle ich einen serverlosen Workflow mit AWS Step Functions und AWS Lambda](https://aws.amazon.com/getting-started/hands-on/create-a-serverless-workflow-step-functions-lambda/) (AWS-Dokumentation)
+ [Verwenden von OpenSearch Dashboards mit Amazon OpenSearch Service](https://docs.aws.amazon.com/opensearch-service/latest/developerguide/dashboards.html) (AWS-Dokumentation)

## Zusätzliche Informationen
<a name="build-an-advanced-mainframe-file-viewer-in-the-aws-cloud-additional"></a>

**Diagramm der Step Functions**

Das folgende Beispiel zeigt ein Step Functions Functions-Diagramm. Das Diagramm zeigt den Ausführungsstatus der in diesem Muster verwendeten Lambda-Funktionen.

![\[Das Diagramm Step Functions zeigt den Ausführungsstatus der in diesem Muster verwendeten Lambda-Funktionen.\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/36d72b00-d163-455f-9e59-e2c872e7c28a/images/11093e5d-2f9e-4bbf-8abc-f3b2980dd550.png)


**CloudWatch Zustellungsprotokolle**

Das folgende Beispiel zeigt erfolgreiche Zustellungsprotokolle für die Ausführung der `s3toelasticsearch` Ausführung.


| 
| 
| 2022-08-10T 15:53:33.033-05:00 | Anzahl der Verarbeitungsdokumente: 100 |  | 
| --- |--- |--- |
|  | 2022-08-10T 15:53:33.171-05:00 | [INFO] 20.08.2022 20:53:33.171 Z a1b2c3d4-5678-90ab-cdef- Beitrag:443/\$1Bulk [Status:200 Anfrage:0,100s] EXAMPLE11111 https://search-essearch-3h4uqclifeqaj2vg4mphe7ffle.us-east-2.es.amazonaws.com | 
|  | 10.08.2022 UM 15:53:33.172-05:00 | Massen-Schreibvorgänge waren erfolgreich: 100 Dokumente | 