Mainframe Connector te permite publicar mensajes en Pub/Sub desde tu mainframe. Puedes usar esta función, por ejemplo, para integrar tu mainframe con BigQuery o Cloud Storage, aumentar los datos de los mensajes con Dataflow o activar funciones de Cloud Run.
Antes de comenzar
- Si aún no lo hiciste, instala Mainframe Connector en tu sistema mainframe.
- Para ejecutar comandos de Pub/Sub, verifica que hayas asignado el rol de publicador de Pub/Sub a tu cuenta de usuario. Para obtener información sobre cómo asignar roles a una cuenta de usuario, consulta Cómo administrar el acceso con IAM.
- Configura las Credenciales predeterminadas de la aplicación.
Publica un mensaje en un tema de Pub/Sub
Para publicar un mensaje de Pub/Sub no estructurado desde tu sistema central, usa el comando pubsub topics publish de la siguiente manera:
//STEP01 EXEC BQSH //STDIN DD * pubsub topics publish TOPIC --data="Hello,World" /*
Reemplaza TOPIC por el nombre del tema de Pub/Sub. El formato obligatorio es projects/{project}/topics/{topic}.
Publica mensajes en un tema de Pub/Sub
El conector de Mainframe te permite publicar mensajes estructurados desde un mainframe en un tema de Pub/Sub. Por ejemplo, puedes usar esta función para transferir registros del método de acceso secuencial en cola (QSAM) de tu mainframe a BigQuery con Pub/Sub. Estas son algunas de las ventajas de usar este enfoque:
- Puedes transformar datos o aumentarlos con IA a través de Dataflow o a través de la multitarea simultánea (SMT) de Pub/Sub.
- Puedes mover registros de un mainframe a Cloud Storage.
- Puedes sincronizar las actualizaciones de las aplicaciones de la unidad central con sistemas basados en la nube similares a la captura de datos modificados (CDC).
Para publicar mensajes estructurados desde tu mainframe en un tema de Pub/Sub, sigue estos pasos:
- Crea un tema de Pub/Sub para publicar mensajes. De forma opcional, puedes crear un tema con un esquema para aplicar más restricciones. Para obtener más información, consulta Crea un tema o Crea y asocia un esquema cuando creas un tema.
- Crea un tema de Pub/Sub para capturar información sobre los registros que no se transcodifican. Este tema se denomina tema de desbordamiento. Para obtener información sobre cómo crear un tema de Pub/Sub, consulta Crea un tema.
- Para convertir los registros a JSON antes de enviarlos a Pub/Sub, configura el archivo de configuración JSON (opcional). Si no proporcionas un archivo de configuración, se usa la configuración JSON predeterminada.
De forma opcional, los mensajes de Pub/Sub no contienen claves ni atributos de orden. Los mensajes de desbordamiento se envían al tema de desbordamiento con el sufijo
_spillover. Para cambiar los valores predeterminados, puedes configurar el archivo de configuración de publicación de Pub/Sub. Por ejemplo, puedes usar la siguiente configuración:{ "spillover-configuration": { "name": SPILLOVER_TOPIC_NAME } }Reemplaza
SPILLOVER_TOPIC_NAMEpor el nombre del tema de desbordamiento que creaste en el paso 2. El formato obligatorio esprojects/{project}/topics/{topic}. La información sobre los mensajes que no se decodifican correctamente se guarda en este tema de desbordamiento.Para publicar registros de mainframe en Pub/Sub con el comando
qsam decode, ejecuta el siguiente JCL://STEP01 EXEC BQSH //STDIN DD * qsam decode
INPUTOUTPUT\ --copybookCOPYBOOK--transcode-configurationTRANSCODE-CONFIG--output-format=JSONL --input-parameter=json-dialect=JSON_CONFIGURATION--input-parameter=pubsub-publish-configuration=PUBSUB_CONFIGURATION/*Reemplaza lo siguiente:
INPUT: La ruta de acceso a los datos del archivo QSAM.OUTPUT: Es la ruta de datos del tema de Pub/Sub que creaste en el paso 1. El formato requerido espubsub:projects/{project}/topics/{topic}.TRANSCODE-CONFIG: Es la ruta de acceso a los datos del archivo que contiene la configuración de transcodificación. Para obtener más información sobre el formato de configuración del transcodificador, consulta Configuración del transcodificador.JSON_CONFIGURATION: Es la ruta de datos (opcional) del archivo de configuración JSON. Si no proporcionas un archivo de configuración, se usará la configuración JSON predeterminada.PUBSUB_CONFIGURATION: (opcional) La ruta de acceso a los datos del archivo de configuración de publicación de Pub/Sub. Si no especificas un archivo de configuración, se usa la configuración predeterminada de Pub/Sub.