Referencia de la API de Mainframe Connector

En la siguiente tabla, se enumeran los comandos de BigQuery, Cloud Storage y otros comandos de Google Cloud que puedes usar con el conector de Mainframe.

Producto Comando Descripción Admite la transcodificación remota
Comandos de BigQuery bq export Usa este comando para crear un archivo binario. El comando acepta un LIBRO DD. como entrada.

Nota: El comando bq export falla en las solicitudes. para exportar tablas de Bigtable grandes. Para evitar errores, agrega la marca -allowLargeResults al comando bq export cuando quieras exportar tablas grandes.
bq load Usa este comando para cargar datos en una tabla. Para obtener más información, consulta bq load. No
bq mk Usa este comando para crear recursos de BigQuery, como integradas o externas, que necesitan partición y agrupamiento en clústeres para no se puede configurar. Para obtener más información, consulta bq mk. No
bq query Usa este comando para crear un trabajo de consulta que ejecute la consulta de SQL especificada.

Usa la marca --follow=true para generar un informe que muestre los resultados de una consulta de selección. Para escribir este informe en un archivo en el sistema de procesamiento principal, define una sentencia DD AUDITL que apunte al archivo que debe contener el informe de registros de auditoría. No uses la marca --follow si deseas un comportamiento de registro normal.

Algunos resultados de la consulta pueden mostrar una gran cantidad de filas, a veces en millones. Para que el resultado siga siendo legible por humanos, se refiere a la cantidad de líneas que se muestra está limitada. Para controlar el número de filas que se muestran, utiliza el --report_row_limit. Por ejemplo, usa --report_row_limit 10 para limitar los resultados a 10 líneas. De forma predeterminada, la cantidad de líneas que se muestran se limita a 30.

Para obtener más información, consulta bq query.
bq rm Usa este comando para borrar de forma permanente un recurso de BigQuery. Como este comando borra un recurso de forma permanente, por lo que te recomendamos que lo uses con precaución. Para obtener más información, consulta bq rm. No
Comandos de Cloud Storage scp Usa este comando para copiar texto o datos binarios a Cloud Storage. Tú puedes usar el modo de copia de objeto binario simple para copiar un conjunto de datos de IBM z/OS a Cloud Storage no se modificó como parte de una canalización de datos. De manera opcional, puedes convertir la codificación de caracteres del código de intercambio decimal codificado en binario extendido (EBCDIC) a ASCII UTF-8 y agregar saltos de línea.

También puedes usar este comando para copiar el código fuente de la aplicación definido en Lenguaje de control del trabajo (JCL).
No
Servicio público de gsutil gsutil cp Usa este comando para transcodificar un conjunto de datos y escribirlo en Cloud Storage en el formato de archivo Optimized Row Columnar (ORC). El comando lee los datos del conjunto de datos INFILE y el diseño de registro del DD COPYBOOK. A continuación, el comando abre una cantidad configurable de conexiones paralelas al API de Cloud Storage y transcodifica el conjunto de datos COBOL a columnas y Formato de archivo ORC comprimido en GZIP. Puedes esperar un índice de compresión de alrededor del 35%.

De forma opcional, puedes usar este comando para interactuar con el Servicio gRPC del conector de unidad central que se ejecuta en una VM en la unidad central. Para ello, configura el SRVHOST y las variables de entorno SRVPORT, o proporciona el nombre de host y el número de puerto con las opciones de la línea de comandos. Cuando se usa el servicio de gRPC, el conector de Mainframe primero copia el conjunto de datos de entrada en Cloud Storage y, luego, se realiza una llamada de procedimiento remoto (RPC) para indicarle al servicio de gRPC que transcodifique el archivo.

El comando gsutil cp también admite algunos ajustes de rendimiento capacidades de integración. Para obtener más información, consulta Mejoras de rendimiento del comando gsutil cp.
gsutil rm Usa este comando para borrar buckets u objetos dentro de un bucket. Para ver más consulta rm - Quita objetos. No
Utilidad gszutil gszutil La utilidad gszutil se ejecuta con el SDK de IBM JZOS Java y proporciona un emulador de shell. que acepte gsutil y la línea de comandos de BigQuery con JCL.

La utilidad gszutil amplía la funcionalidad de la la utilidad gsutil aceptando un esquema en forma de un LIBRO DD., utilizándolo para transcodificar conjuntos de datos de COBOL directamente en ORC antes de subirlos en Google Cloud Storage. La utilidad gszutil también te permite ejecutar query y load de BigQuery con JCL.

La utilidad gszutil funciona con el servidor gRPC, que te ayuda a reducir el consumo de millones de instrucciones por segundo (MIPS). Te recomendamos que uses la utilidad gszutil en tu entorno de producción para convertir archivos binarios en Cloud Storage al formato ORC.
No
Otros comandos gcloud pubsub topics send Usa este comando para enviar un mensaje a un tema de Pub/Sub. Puedes proporcionar el mensaje usando la línea de comandos o un conjunto de datos. No
gcloud dataflow flex-template run Usa este comando para activar la ejecución de una instancia de Dataflow Flex plantilla. El comando ejecuta un trabajo desde la ruta de acceso de la plantilla de Flex especificada. Para Para obtener más información, consulta gcloud dataflow flex-template run. No
curl Usa este comando para realizar una solicitud HTTP a un servicio web o las APIs de REST. No

Configuración del ajuste de rendimiento del comando gsutil cp

El conector de Mainframe admite la siguiente configuración de ajuste de rendimiento para el comando gsutil cp.

  • Usa la marca --parallelism para establecer la cantidad de subprocesos. El el valor predeterminado es 1 (un subproceso).
  • Usa el argumento --maxChunkSize para establecer el tamaño máximo de cada una bloque. Cada fragmento tendrá su propio archivo Optimized Row Columnar (ORC). Aumenta este valor para reducir la cantidad de fragmentos creados a costa de requisitos de memoria más grandes durante el proceso de transcodificación. Para obtener más información, consulta Cómo analizar el argumento maxChunkSize. El valor predeterminado es 128 MiB.
  • Usa el argumento --preload_chunk_count para establecer la cantidad de datos en precarga en la memoria mientras todos los trabajadores están ocupados. Este argumento puede mejorar el rendimiento a costa de la memoria. El valor predeterminado es 2.

Ejemplo de ejecución

gsutil cp \
  --replace \
  --parser_type=copybook \
  --parallelism=8 \
  --maxChunkSize=256MiB \
  gs://$BUCKET/test.orc

En este ejemplo, consideramos un archivo grande y, por lo tanto, usamos 8 subprocesos en los que se alcanza la tasa de línea. Si tienes suficiente memoria, te recomendamos que aumentes el tamaño del fragmento a 256 MiB o incluso a 512 MiB, ya que reduce la sobrecarga de creación y la finalización de objetos de Cloud Storage. En el caso de los archivos pequeños, usar menos subprocesos y fragmentos más pequeños podría producir mejores resultados.

Analiza el argumento maxChunkSize

La marca maxChunkSize acepta valores en forma de un importe y una unidad de medida, por ejemplo, 5 MiB. Puedes usar espacios en blanco entre la cantidad y la magnitud.

Puedes proporcionar el valor en los siguientes formatos:

  • Formato Java: b/k/m/g/t para bytes, kibibyte, mebibyte, gibibyte y tebibyte, respectivamente
  • Formato internacional: KiB/MiB/GiB/TiB, para kibibyte, mebibyte, gibibyte y tebibyte, respectivamente
  • Formato métrico: b/kb/mb/gb/tb, para kilobytes, megabytes, gigabytes y terabytes, respectivamente

El análisis del tamaño de los datos no distingue mayúsculas de minúsculas. Ten en cuenta que no puedes especificar importes. Por ejemplo, usa 716 KiB en lugar de 0.7 MiB.