Publier des messages dans Pub/Sub à partir de votre mainframe

Mainframe Connector vous permet de publier des messages dans Pub/Sub à partir de votre mainframe. Vous pouvez utiliser cette fonctionnalité, par exemple, pour intégrer votre mainframe à BigQuery ou Cloud Storage, enrichir les données de message avec Dataflow ou déclencher des fonctions Cloud Run.

Avant de commencer

Publier un message dans un sujet Pub/Sub

Pour publier un message Pub/Sub non structuré à partir de votre mainframe, utilisez la commande pubsub topics publish comme suit:

//STEP01 EXEC BQSH
//STDIN DD *
pubsub topics publish TOPIC --data="Hello,World"
/*

Remplacez TOPIC par le nom du sujet Pub/Sub. Le format requis est projects/{project}/topics/{topic}.

Publier des messages dans un sujet Pub/Sub

Le connecteur mainframe vous permet de publier des messages structurés à partir d'un mainframe dans un sujet Pub/Sub. Par exemple, vous pouvez utiliser cette fonctionnalité pour transférer des enregistrements QSAM (Queued Sequential Access Method) de votre mainframe vers BigQuery à l'aide de Pub/Sub. Voici quelques-uns des avantages de cette approche:

  • Vous pouvez transformer ou enrichir des données avec l'IA via Dataflow ou via le multithreading simultané (SMT) de Pub/Sub.
  • Vous pouvez déplacer des enregistrements d'un mainframe vers Cloud Storage.
  • Vous pouvez synchroniser les mises à jour des applications mainframe avec des systèmes cloud, comme la capture des données modifiées (CDC).

Pour publier des messages structurés à partir de votre mainframe dans un sujet Pub/Sub, procédez comme suit:

  1. Créez un sujet Pub/Sub pour publier des messages. Vous pouvez également créer un sujet avec un schéma pour appliquer des restrictions supplémentaires. Pour en savoir plus, consultez les sections Créer un sujet ou Créer et associer un schéma lorsque vous créez un sujet.
  2. Créez un sujet Pub/Sub pour capturer des informations sur les enregistrements qui ne sont pas transcodés. Ce sujet est appelé "sujet de débordement". Pour savoir comment créer un sujet Pub/Sub, consultez la section Créer un sujet.
  3. (Facultatif) Pour convertir les enregistrements au format JSON avant de les envoyer à Pub/Sub, configurez le fichier de configuration JSON. Si vous ne fournissez pas de fichier de configuration, la configuration JSON par défaut est utilisée.
  4. (Facultatif) Par défaut, les messages Pub/Sub ne contiennent pas de clés de tri ni d'attributs. Les messages de débordement sont envoyés au sujet de débordement avec le suffixe _spillover. Pour modifier les valeurs par défaut, vous pouvez configurer le fichier de configuration de publication Pub/Sub. Par exemple, vous pouvez utiliser la configuration suivante:

    {
      "spillover-configuration": {
        "name": SPILLOVER_TOPIC_NAME
      }
    }
    

    Remplacez SPILLOVER_TOPIC_NAME par le nom du sujet de débordement que vous avez créé à l'étape 2. Le format requis est projects/{project}/topics/{topic}. Les informations sur les messages qui ne sont pas décodés correctement sont enregistrées dans ce sujet de débordement.

  5. Pour publier des enregistrements de mainframe dans Pub/Sub à l'aide de la commande qsam decode, exécutez le JCL suivant:

    //STEP01 EXEC BQSH
    //STDIN DD *
    qsam decode INPUT OUTPUT \
     --copybook COPYBOOK
     --transcode-configuration TRANSCODE-CONFIG
         --output-format=JSONL
         --input-parameter=json-dialect=JSON_CONFIGURATION
         --input-parameter=pubsub-publish-configuration=PUBSUB_CONFIGURATION
    /*
    

    Remplacez les éléments suivants :