Mainframe Connector 命令行参考文档

本文档介绍了 Mainframe Connector 命令行工具的语法、命令、标志和参数。

命令

bq export

从 BigQuery 导出表。

摘要

bq export [options]

标志和参数

如需运行此命令,您必须提供 SQL 查询(请参阅标志 --sqlquery_dsn)和副本簿(请参阅标志 cobDsn)。您可以在本地、远程和独立模式下运行此命令。对于远程模式,请参阅标志 --bucket--remoteHost--remotePort--remoteUrlbq export 命令使用以下标志和参数:

--project_id=ID
指定用于执行此命令的项目。
--allow_large_results
(可选)为旧版 SQL 查询使用较大的目标表大小。
--batch
(可选)以批量模式运行查询。
--bucket=BUCKET
(可选)将命令的输出写入 Cloud Storage 存储桶中的某个位置。输出文件会写入目标路径 gs://BUCKET/EXPORT/。远程模式需要此参数。
--cobDsn=DSN
(可选)指定要使用的副本簿 DSN。如果您未提供值,Mainframe Connector 会从 DD COPYBOOK 读取。
--dataset_id=ID
(可选)指定要与命令搭配使用的默认数据集。您可以将该值设置为 [PROJECT_ID]:[DATASET][DATASET]。如果未提供 [PROJECT_ID],则使用默认项目。
--destination_table=TABLE
(可选)指定要将查询结果写入到的目标表。
--dry_run
(可选)在不运行查询的情况下对其进行验证。
--encoding=ENCODING
(可选)指定用于编码和解码字符字段的字符集。如果提供,此值会替换由 ENCODING 环境变量设置的默认值。
--exporter_thread_count=COUNT
(可选)设置导出器线程数。默认值为 4。
--help-h
显示此帮助文本。
--keepAliveTimeInSeconds=SECONDS
(可选)为 HTTP 通道指定保持连接超时(以秒为单位)。默认值为 480 秒。
--location=LOCATION
(可选)指定要执行命令的区域或多区域位置。默认值为美国。
--max_read_queue=NUMBER
(可选)设置 Avro 记录队列的大小上限。默认值为线程数的两倍。
--max_read_streams=NUMBER
(可选)设置读取流线程的数量上限。默认值为 4。
--maximum_bytes_billed=BYTES
(可选)限制查询的计费字节数。
--order_response
(可选)按 BigQuery 返回的顺序保留响应。
--outDD=OUTPUT
(可选)将输出记录写入 z/OS 中的指定数据集。默认值为 DD OUTFILE
--parser_type=TYPE
(可选)将配置解析器设置为 legacycopybookauto。默认值为 auto
--query_dsn=DSN
(可选)从 z/OS 中的指定数据集中读取查询。请使用 HLQ.MEMBERHLQ.PDS(MEMBER) 格式。如果您未提供值,Mainframe 连接器将从 DD QUERY 读取。
--remoteHost=HOST
(可选)指定远程主机的 IP 地址。如需在远程模式下运行 Mainframe Connector,请设置 --bucket 标志。
--remotePort=PORT
(可选)指定远程端口。默认值为 51770。如需在远程模式下运行 Mainframe Connector,请设置 --bucket 标志。
--remoteUrl=URL
(可选)指定远程网址。如需在远程模式下运行 Mainframe Connector,请设置 --bucket 标志。
--run_mode=MODE
(可选)选择导出实现方式。您可以使用以下任一选项:
  • directstorage:二进制文件保存在本地(默认)
  • gcsoutput:二进制文件保存在 Cloud Storage 中
--sql=SQL
(可选)指定要执行的 BigQuery SQL 查询。
--stats_table=TABLE
(可选)指定要将统计信息插入的表。
--timeOutMinutes=MINUTES
(可选)为远程 grpc 调用设置超时(以分钟为单位)。默认值为 90 分钟。
--transcoding_buffer=BUFFER
(可选)设置每个线程的转码缓冲区大小(以 MB 为单位)。默认值为 20。
--use_cache={true|false}
(可选)如需缓存查询结果,请将其设置为 true。
--use_legacy_sql
(可选)使用旧版 SQL 而非标准 SQL。

bq load

将数据加载到 BigQuery 表中。

摘要

bq load [options] tablespec path

标志和参数

bq load 命令使用以下标志和参数:

path
指定以英文逗号分隔的源文件 URI 列表。支持的格式为 gs://bucket/path。示例:gs://my-bucket/data.orc,gs://my-bucket/more-data.orc
tablespec
指定数据的目标表。支持的格式为 [PROJECT]:[DATASET].[TABLE]
--project_id=ID
指定用于执行此命令的项目。
--allow_jagged_rows
(可选)允许 CSV 数据末尾缺少可选列。
--allow_quoted_newlines
(可选)允许 CSV 数据中包含带英文引号的换行符。
--append_table
(可选)将加载的数据附加到目标表中的现有数据。
--autodetect
(可选)为 CSV 和 JSON 数据启用自动架构检测。
--clustering_fields=FIELDS
(可选)如果指定此标志,系统会使用以英文逗号分隔列的列表为查询中的目标表划分聚簇。此标志必须与时间分区标志一起使用,用于创建按注入时间分区表或按 DATETIMESTAMP 列分区的表。指定此标志时,系统首先会对表进行分区,然后使用所提供的列为表划分聚簇。
--dataset_id=ID
(可选)指定要与命令搭配使用的默认数据集。您可以将该值设置为 [PROJECT_ID]:[DATASET][DATASET]。如果未提供 [PROJECT_ID],则使用默认项目。
--debug_mode={true|false}
(可选)将日志记录级别设置为“调试”。
--destination_kms_key=KEY
(可选)用于加密目标表数据的 Cloud KMS 密钥。
--encoding-E=ENCODING
(可选)指定用于编码和解码字符字段的字符集。指定此值后,此值会替换 ENCODING 环境变量设置的默认值。
--field_delimiter-F=FIELD
(可选)指定 CSV 数据中的列分隔符。使用 \ttab 作为制表符分隔符。
--help-h
显示此帮助文本。
--ignore_unknown_values=VALUES
(可选)忽略 CSV 或 JSON 数据中无法识别的额外值。
--location=LOCATION
(可选)指定要执行命令的区域或多区域位置。默认值为美国。
--max_bad_records=RECORDS
(可选)设置作业失败之前允许的无效记录数上限。无论 --max_bad_records 值为何,系统最多只会返回 5 个任意类型的错误。此标志仅适用于加载 CSV、JSON 和 Google 表格数据。默认值为 0。
--max_polling_interval_ms=MILLISECONDS
(可选)BigQuery 作业的等待时长上限。
--null_marker=MARKER
(可选)指定一个自定义字符串,该字符串代表 CSV 数据中的一个 NULL 值。
--projection_fields=FIELDS
(可选)如果将 --source_format 设置为 DATASTORE_BACKUP,则此标志表示要从 Datastore 导出文件中加载的实体属性。以英文逗号分隔的列表形式指定属性名称。属性名称区分大小写,且必须是顶级属性。您还可以将此标志与 Firestore 导出文件一起使用。
--quote=QUOTE
(可选)指定用于括起 CSV 数据中字段的英文引号字符。您可以将任何单字节字符指定为参数。默认值为英文双引号 (")。如需指定无英文引号字符,请使用空字符串。
--replace
(可选)将目标表中的现有数据替换为加载的数据。
--require_partition_filter={true|false}
(可选)如需对所提供的表的查询使用分区过滤条件,请设置为 true。此参数仅适用于分区表,并且 --time_partitioning_field 标志设置为 true。默认值为 false。
--schema=SCHEMA
(可选)定义目标表的架构。将值指定为 [FIELD]:[DATA_TYPE] 形式的列定义的英文逗号分隔列表。示例:name:STRING,age:INTEGER,city:STRING
--schema_update_option=OPTION
(可选)在将数据附加到表时(在加载作业或查询作业中),或者覆盖表分区时,此标志可指定如何更新目标表的架构。请使用以下某个值:
  • ALLOW_FIELD_ADDITION:允许添加新字段
  • ALLOW_FIELD_RELAXATION:允许将 REQUIRED 字段放宽为 NULLABLE
重复使用此标志可指定多个架构更新选项。
--skip_leading_rows=NUMBER
(可选)指定在源文件开头处要跳过的行数。默认值为 0。
--source_format=FORMAT
(可选)指定源数据的格式。您可以使用以下值之一:CSVNEWLINE_DELIMITED_JSONAVRODATASTORE_BACKUP(对于 Filestore 使用此值)、PARQUETORC。默认值为 ORC
--stats_table=TABLE
(可选)指定要将统计信息插入的表。
--time_partitioning_expiration=SECONDS
(可选)指定应在何时删除基于时间的分区(以秒为单位)。到期时间以分区的世界协调时间 (UTC) 日期加上指定值为准。如果您提供负数,基于时间的分区将永不过期。
--time_partitioning_field=FIELD
(可选)指定用于确定如何创建基于时间的分区的字段。如果在未使用此值的情况下启用了基于时间的分区,表会根据加载时间进行分区。
--time_partitioning_type=TYPE
(可选)使用以下值对表启用基于时间的分区,并设置分区类型:DAY
--use_avro_logical_types={true|false}
(可选)如果 --source_format 设置为 AVRO,则将此标志设置为 true 可将逻辑类型转换为对应的类型(如 TIMESTAMP),而不是仅使用其原始类型(如 INTEGER)。默认值为 false。

bq mk

创建 BigQuery 资源,例如需要设置分区和分片的内置表或外部表。您还可以使用 bq mk 命令通过使用 --schema_from_copybook 标志解析 COBOL 副本库直接生成 BigQuery 表。

摘要

bq mk [options]

标志和参数

bq mk 命令使用以下标志和参数:

--project_id=ID
指定用于执行此命令的项目。
--tablespec=TABLE
指定数据的目标表。支持的格式为 [PROJECT]:[DATASET].[TABLE]
--clustering_fields=FIELDS
(可选)指定一个以英文逗号分隔的列名称列表(最多包含 4 个列名称),指定要用于表聚簇的字段。
--dataset_id=ID
(可选)指定要与命令搭配使用的默认数据集。您可以将该值设置为 [PROJECT_ID]:[DATASET][DATASET]。如果未提供 [PROJECT_ID],则使用默认项目。
--description=DESCRIPTION
(可选)为数据集或表提供说明。
--dry_run
(可选)输出表的数据定义语言 (DDL) 语句。
--encoding=ENCODING
(可选)指定用于编码和解码字符字段的字符集。指定此值后,此值会替换 ENCODING 环境变量设置的默认值。
--expiration=EXPIRATION
(可选)指定表的生命周期。如果您未指定值,则 BigQuery 会使用数据集的默认表有效期创建表,否则表不会过期。
--external_table_definition-e=TABLE
(可选)指定名称和架构定义以创建外部表。示例:ORC=gs://bucket/table_part1.orc/,gs://bucket/table_part2.orc/.
--help-h
显示此帮助文本。
--location=LOCATION
(可选)指定要执行命令的区域或多区域位置。默认值为美国。
--parser_type=TYPE
(可选)将配置解析器设置为 legacycopybookauto。默认值为 auto
--require_partition_filter={true|false}
(可选)如需对所提供的表的查询使用分区过滤条件,请设置为 true。此参数仅适用于分区表,并且 --time_partitioning_field 标志设置为 true。默认值为 true。
--schema=SCHEMA
(可选)指定本地 JSON 架构文件的路径,或以 FIELD:DATA_TYPEFIELD:DATA_TYPE 等格式表示的英文逗号分隔的列定义列表。
--schema_from_copybook=SCHEMA
(可选)根据副本簿生成架构。
--table-t=TABLE
(可选)创建表格。
--time_partitioning_expiration=SECONDS
(可选)指定应在何时删除基于时间的分区(以秒为单位)。到期时间以分区的世界协调时间 (UTC) 日期加上指定值为准。如果您提供负数,基于时间的分区将永不过期。
--time_partitioning_field=FIELD
(可选)指定用于确定如何创建基于时间的分区的字段。如果在未使用此值的情况下启用了基于时间的分区,表会根据加载时间进行分区。
--view
(可选)创建视图。

bq query

执行 BigQuery 查询。

摘要

bq query [options]

标志和参数

您可以在本地和远程模式下运行此命令。对于远程模式,请参阅标志 --remoteHost--remotePort--remoteUrl,以及环境变量 BQ_QUERY_REMOTE_EXECUTIONbq query 命令使用以下标志和参数:

--project_id=ID
指定用于执行此命令的项目。
--allow_large_results
(可选)为旧版 SQL 查询使用较大的目标表大小。
--append_table
(可选)将加载的数据附加到目标表中的现有数据。
--batch
(可选)以批量模式运行查询。
--clustering_fields=FIELDS
(可选)指定一个以英文逗号分隔的列名称列表(最多包含 4 个列名称),指定要用于表聚簇的字段。如果您将此值与分区一起指定,系统首先会对表进行分区,然后使用所提供的列对每个分区进行聚簇。
--create_if_needed
(可选)如果目标表不存在,则创建目标表。
--dataset_id=ID
(可选)指定要与命令搭配使用的默认数据集。您可以将该值设置为 [PROJECT_ID]:[DATASET][DATASET]。如果未提供 [PROJECT_ID],则使用默认项目。
--destination_table=TABLE
(可选)指定要将查询结果写入到的目标表。
--dry_run
(可选)在不运行查询的情况下对其进行验证。
--follow={true|false}
(可选)如需跟踪单个查询步骤或整个脚本,请将其设置为 true。默认值为 false。
--help-h
显示此帮助文本。
--location=LOCATION
(可选)指定要执行命令的区域或多区域位置。默认值为美国。
--maximum_bytes_billed=BYTES
(可选)指定查询的收费字节数上限。
--parameters=PARAMETERS
(可选)使用 [NAME]:[TYPE]:[VALUE] 格式指定以逗号分隔的查询参数。如果名称为空,则系统会创建一个定位参数。您可以省略 [TYPE],以假定 STRING 值的格式为 name::value::valueNULL 会生成 null 值。
--query_dsn=DSN
(可选)指定要从中读取查询的 DSN,格式为 HLQ.MEMBER 或 HLQ.PDS(MEMBER)。如果未提供 query_dsn,则系统会使用 QUERY DD
--remoteHost=HOST
(可选)指定远程主机的 IP 地址。如需在远程模式下运行查询,请设置 BQ_QUERY_REMOTE_EXECUTION 环境变量。
--remotePort=PORT
(可选)指定远程端口。默认值为 51770。如需在远程模式下运行查询,请设置 BQ_QUERY_REMOTE_EXECUTION 环境变量。
--remoteUrl=URL
(可选)指定远程网址。如需在远程模式下运行查询,请设置 BQ_QUERY_REMOTE_EXECUTION 环境变量。
--replace
(可选)使用查询结果覆盖目标表。
--report_row_limit=LIMIT
(可选)指定要在审核报告中输出的行数上限。默认值为 30。
--require_partition_filter={true|false}
(可选)如需对所提供的表的查询使用分区过滤条件,请设置为 true。默认值为 true。
--schema_update_option=OPTION
(可选)在附加数据时更新目标表的架构。请使用以下值:
  • ALLOW_FIELD_ADDITION:允许添加新字段。
  • ALLOW_FIELD_RELAXATION:允许将 REQUIRED 字段放宽为 NULLABLE
--split_sql={true|false}
(可选)如需将输入 SQL 脚本拆分为单个查询,请将其设置为 true。默认值为 true。
--stats_table=TABLE
(可选)指定要将统计信息插入的表。
--sync={true|false}
(可选)在同步模式下运行该命令。
--synchronous_mode={true|false}
(可选)--sync 的替代项。
--timeOutMinutes=MINUTES
(可选)指定 BigQuery 作业响应的超时时间(以分钟为单位)。默认值为 240 分钟。
--time_partitioning_expiration=SECONDS
(可选)指定应在何时删除基于时间的分区(以秒为单位)。到期时间以分区的世界协调时间 (UTC) 日期加上指定值为准。如果您提供负数,基于时间的分区将永不过期。
--time_partitioning_field=FIELD
(可选)指定用于确定如何创建基于时间的分区的字段。如果在未使用此值的情况下启用了基于时间的分区,表会根据加载时间进行分区。
--time_partitioning_type=TYPE
(可选)在表上启用基于时间的分区,并使用以下值之一设置分区类型:DAYHOURMONTHYEAR
--use_cache={true|false}
(可选)如需缓存查询结果,请将其设置为 true。默认值为 true。
--use_legacy_sql
(可选)使用旧版 SQL 而非标准 SQL。

cloud run job cancel

取消特定作业的执行。

摘要

cloud run job cancel [-h] --project=PROJECT
                            --region=REGION EXECUTION

标志和参数

cloud run job cancel 命令使用以下标志和参数:

EXECUTION
指定 Cloud Run 作业执行 ID 的名称。
--help-h
(可选)显示此帮助消息。
--project=PROJECT
指定项目 ID。
--region=REGION
指定资源所在的区域。

cloud run job execute

执行特定作业。

摘要

cloud run job execute [-h] [--async] [--tail-logs] [--wait]
                             [--dump-execution-id=EXECUTION-ID]
                             [--polling-interval=POLLINGINTERVAL]
                             --project=PROJECT
                             --region=REGION
                             [--task-timeout=TIMEOUT]
                             [--args=ARGS]...
                             [--update-env-vars=ENVVARS]...
                             JOB

标志和参数

cloud run job execute 命令使用以下标志和参数:

JOB
指定要执行的 Cloud Run 作业的名称。
--args=ARGS
(可选)传递给容器映像运行的命令的逗号分隔参数。如果提供,系统会使用输入值创建执行作业。
--async
(可选)如果您希望立即返回结果,而无需等待正在进行的操作完成,请指定此标志。
--dump-execution-id=EXECUTION-ID : DataPath
(可选)指定要将执行 ID 写入到的文件。
--help-h
(可选)显示此帮助消息。
--polling-interval=POLLINGINTERVAL
(可选)设置在启用 --tail_logs 时用于显示日志的轮询间隔。默认值为 60 秒。
--project=PROJECT
指定项目 ID。
--region=REGION
指定资源所在的区域。
--tail-logs
(可选)如果您通过指定 --tail_logs 标志在同步模式下运行该命令,Mainframe Connector 会在屏幕上显示进度日志。如果您同时指定了 --tail_logs--async 标志,系统会显示一条错误消息。由于 Cloud Logging 不支持实时日志记录,因此该命令只会显示已记录在日志中的日志。因此,使用 --tail_logs 标志时,系统可能会缺少某些日志。如需查看完整的作业日志,请在作业完成后使用 cloud run job log 命令。
--task-timeout=TIMEOUT
(可选)显示作业任务尝试可运行的最长时间(截止期限)。如果未指定,则使用作业默认值。
--update-env-vars=ENVVARS
(可选)要设置为作业执行环境变量替换项的键值对列表。
--wait
(可选)如果您希望命令等待执行完成后再退出,请指定此标志。

cloud run job log

显示 Cloud Run 日志

摘要

cloud run job log [-h] [--tail] [--log-filter=FILTER]
                         [--polling-interval=POLLINGINTERVAL]
                         --project=PROJECT
                         --region=REGION
                         [--timeout=TIMEOUT] EXECUTION_ID

标志和参数

cloud run job log 命令使用以下标志和参数:

EXECUTION_ID
Cloud Run 作业执行 ID 的名称。
--help-h
(可选)显示此帮助消息。
--log-filter=FILTER
(可选)用于指定要返回的日志条目的过滤表达式。
--polling-interval=POLLINGINTERVAL
(可选)设置在启用 --tail_logs 时用于显示日志的轮询间隔。默认值为 60 秒。
--project=PROJECT
指定项目 ID。
--region=REGION
指定资源所在的区域。
--tail
(可选)设置后,仅显示从现在开始的新日志。如果未设置,系统会显示所有作业日志。
--timeout=TIMEOUT
(可选)超时时间,命令会在超时后退出。如果未设置,则命令将在执行退出时超时。

copy text

复制文本数据集。

摘要

copy text [-h] [--buffer-size=BUFFERSIZE] INPUT
                 OUTPUT

标志和参数

copy text 命令使用以下标志和参数:

INPUT : DataPath
指定要复制的输入文件的数据路径。
OUTPUT : DataPath
指定要复制和编码到的输出文件的数据路径。
--buffer-size=BUFFERSIZE : DataSize
(可选)指明每个批量读取的内存大小。默认值为 64 MiB。
--help-h
(可选)显示此帮助消息。

gsutil cp

将数据从大型机转码到 Cloud Storage 存储桶。

摘要

gsutil cp [options] gcsUri [dest]

标志和参数

您可以使用此命令来执行以下不同用途:

  • 将文件从大型机或 Linux 环境复制并转码到 Cloud Storage。
    • 来源:--inDSN。如果未提供,则由 DD INFILE 指定。
    • 目标位置:gcsUri
  • 在 Cloud Storage 中复制和转码文件
    • 来源:gcsUri
    • 目标位置:--destPath
  • 将文件从 Cloud Storage 复制到大型机。
    • 来源:gcsUri
    • 目标位置:--destDSN
    • 相关标志:--lrecl--blksize--recfm--noseek
  • 将文件从 Cloud Storage 复制到 Linux 环境。
    • 来源:gcsUri
    • 目标位置:--destPath
此命令可在本地、远程和独立模式下运行。对于远程模式,请参阅标志 --remote--remoteHost--remotePort--remoteUrlgsutil cp 命令使用以下标志和参数:

dest
(可选)本地路径或数据源名称 (DSN)。示例格式:/path/to/fileDATASET.MEMBER
gcsUri
Cloud Storage URI,格式为 gs://bucket/path。可以同时表示来源和目的地位置,具体取决于用途。
--batchSize=SIZE
(可选)指定每批要使用的分块。默认值为 1000。
--blksize=SIZE
(可选)指定要复制到大型机的文件的块大小。如果 blksize=0recfm 不是 U,主机系统会确定文件的最佳分块大小。
--cobDsn=DSN
(可选)指定要使用的副本簿 DSN。如果您未提供值,Mainframe Connector 会从 DD COPYBOOK 读取。
--connections=NUMBER
(可选)指定可以与远程接收器建立的连接数量。默认值为 10。
--dataset_id=ID
(可选)指定要与命令搭配使用的默认数据集。您可以将该值设置为 [PROJECT_ID]:[DATASET][DATASET]。如果未提供 [PROJECT_ID],则使用默认项目。
--destDSN=OUTPUT
(可选)指定目标 DSN。
--destPath=OUTPUT
(可选)指定目标路径。
--dry_run
(可选)测试对 QSAM 文件的副本簿解析和解码。
--encoding=ENCODING
(可选)指定用于编码和解码字符字段的字符集。指定此值后,此值会替换 ENCODING 环境变量设置的默认值。
--help-h
显示此帮助文本。
--inDsn=DSN
(可选)指定您要使用的 infile DSN。如果您不提供值,Mainframe Connector 会从 DD INFILE 读取。
--keepAliveTimeInSeconds=SECONDS
(可选)为 HTTP 通道指定保持连接超时(以秒为单位)。默认值为 480 秒。
--location=LOCATION
(可选)指定要执行命令的区域或多区域位置。默认值为美国。
--lowerCaseColumnNames
(可选)为副本簿字段创建小写列名称。
--lrecl=LRECL
(可选)指定要复制到大型机的文件的逻辑记录长度 (lrecl)。
--maxChunkSize=SIZE
(可选)指定每个批次的最大分块大小。您应使用 K、KiB、KB、M、MiB、MB、G、GiB、GB、T、TiB 或 TB 来描述大小。默认值为 128 MiB。
--max_error_pct=PCT
(可选)指定行解码错误的作业失败阈值。有效值应介于 [0.0, 1.0] 之间。默认值为 0。
--noseek
(可选)提高从 Cloud Storage 到大型机的下载性能。
--parallel-m
(可选)将并发写入器数量设置为 4。
--parallelism-p=NUMBER
(可选)指定并发写入器的数量。默认值为 4。
--parser_type=TYPE
(可选)将配置解析器设置为 legacycopybookauto。默认值为 auto
--preload_chunk_count=NUMBER
(可选)指定在所有工作器都处于忙碌状态时从磁盘预加载的块数量。默认值为 2。
--project_id=ID
(可选)指定用于执行此命令的项目。
--recfm=REFCM
(可选)指定要复制到大型机的文件的 recfm。您可以使用以下任一值:F、FB、V、VB、U。默认值为 FB。
--remote
(可选)使用远程解码器。
--remoteHost=HOST
(可选)指定远程主机的 IP 地址。如需在远程模式下运行 Mainframe Connector,请设置 --remote 标志。
--remotePort=PORT
(可选)指定要使用的远程端口。默认值为 51770。如需在远程模式下运行 Mainframe Connector,请设置 --remote 标志。
--remoteUrl=URL
(可选)指定远程网址。如需在远程模式下运行 Mainframe Connector,请设置 --remote 标志。
--replace
(可选)在上传之前递归删除目标位置。
--stats_table=TABLE
(可选)指定要将统计信息插入的表。
--tfDSN=DSN
(可选)指定 DSNDATASET.MEMBERPDS(MBR) 中的转换。
--tfGCS=GCS
(可选)指定 Cloud Storage 中的转换文件。
--timeOutMinutes=MINUTES
(可选)指定远程 grpc 调用的超时时间(以分钟为单位)。默认值为 Cloud Storage 90 分钟,主机 50 分钟。

gsutil rm

移除 Cloud Storage 对象。

摘要

gsutil rm [-hR] URL...

标志和参数

gsutil rm 命令使用以下标志和参数:

URL
使用 gs://bucket/prefix 格式指定 Cloud Storage 位置。
--help-h
(可选)显示此帮助消息。
-R-r
(可选)递归删除与路径表达式匹配的目录或对象的内容。如果目录或对象不存在,则不会抛出错误。

pubsub topics publish

向 Pub/Sub 主题发布消息。

借助此命令,您可以使用 --data 标志直接发送消息数据,也可以使用 --data-path 标志通过文件发送消息数据。您还可以添加属性、排序键,并应用消息属性。此外,您还可以对消息内容应用动态字符串替换。

摘要

pubsub topics publish [-h] [--data=DATA]
                             [--data-path=DATAPATH]
                             [--ordering-key=ORDERING-KEY]
                             [--attributes=NAME=VALUE[,
                             NAME=VALUE...]]...
                             [--message-property=KEY=VALUE]...
                             [--substitution=KEY=VALUE]...
                             TOPIC

标志和参数

pubsub topics publish 命令使用以下标志和参数:

TOPIC
projects/{project}/topics/{topic} 格式指定主题的名称。
--attributes=NAME=VALUE
(可选)指定以英文逗号分隔的属性列表。每个 ATTRIBUTE 的格式为 name=value。您最多可以指定 100 个属性。如需查看属性准则的完整列表,请参阅使用属性发布消息
--data-path=DATAPATH : DataPath
(可选)指定包含消息数据的文件的路径。您必须设置 --data--data-path 标志之一,但不能同时设置这两者。如需详细了解消息格式和大小限制,请参阅将消息发布到主题
--data=DATA
(可选)指定要发布到给定主题名称的消息正文。您必须设置 --data--data-path 标志之一,但不能同时设置这两者。如需详细了解消息格式和大小限制,请参阅将消息发布到主题
--help-h
(可选)显示此帮助消息。
--message-property=KEY=VALUE
(可选)指定要应用于消息的属性。有效的媒体资源键为 encoding。此属性键用于指定要为消息字符串使用的字符编码。消息字符串会先使用此编码转换为字节,然后再发送到 Pub/Sub 主题。如需查看支持的编码值列表,请参阅支持的编码。默认值为 UTF-8
--ordering-key=ORDERING-KEY
(可选)指定用于按顺序向订阅者传送消息的键。具有相同排序键的所有消息都会按 Pub/Sub 接收消息的顺序发送给订阅者。
--substitution=KEY=VALUE

(可选)使用 --data--data-path 指定要用于对 Pub/Sub 消息数据应用的动态替换的键值对。Mainframe Connector 会扫描消息数据以查找占位符,并将其替换为相应值。使用语法 ${KEY} 定义数据中的占位符,例如 ${NAME}。使用 KEY=VALUE 格式将每个替换项指定为键值对。您可以通过重复选项 --substitution key1=value1 --substitution key2=value2 来指定多个替换项。

例如,如果输入数据为 Hello, ${username}!,并且您使用 --substitution username=World,则发送到 Pub/Sub 的消息将为 Hello, World!

qsam decode

解码 QSAM 数据。

此命令会将 QSAM 文件中的记录解码为您使用 --output-format 参数指定的格式。系统会根据您使用 --max-chunk-size 参数指定的值将原始 QSAM 文件拆分为多个分块。转码后的输出会以字典顺序排列的文件形式保存在目标路径中。

摘要

qsam decode [-h] [--replace] [--chunk-size=CHUNK-SIZE]
                   --copybook=COPYBOOK
                   [--max-error-percent=MAX_ERROR_PERCENT]
                   [--output-format=FORMAT]
                   [--parallelism=COUNT]
                   [--preload-chunk-count=PRELOAD_CHUNK_COUNT]
                   [--transcode-configuration=CONFIG]
                   [--input-parameter=KEY=VALUE]... INPUT
                   OUTPUT

标志和参数

qsam decode 命令使用以下标志和参数:

INPUT : DataPath
指定要解码的 QSAM 文件的数据路径。
OUTPUT : DataPath
指定输出前缀的数据路径。所有输出都存储在此前缀下。
--chunk-size=CHUNK-SIZE : DataSize
(可选)指定要将多少输入数据包含在每个输出文件中。输出文件的大小可能会更大或更小。块大小会向下舍入为最接近逻辑记录长度的倍数。默认值为 128 MiB。
--copybook=COPYBOOK : DataPath
指定包含复制簿的文件的数据路径。
--help-h
(可选)显示此帮助消息。
--input-parameter=KEY=VALUE

(可选)指定用于配置输入的参数。每个参数都定义为 KEY=VALUE。支持的输入参数键包括:

  • csv-dialect:配置 CSV 解析。该值是指向 CSV 配置文件DataPath
  • json-dialect:配置 JSON 解析。该值是指向 JSON 配置文件DataPath
  • pubsub-publish-configuration:配置发送到 Pub/Sub 的消息。该值是一个指向 Pub/Sub 配置文件DataPath
--max-error-percent=MAX_ERROR_PERCENT

(可选)指定在转码流程失败之前允许的已处理记录错误百分比。该值的范围介于 0.0(如果存在任何转码错误,则失败)和 1.0(如果存在转码错误,则不会失败)之间。默认值为 0。

--output-format=FORMAT : TranscodeFormat

(可选)指定输出文件的格式。如果您将 Pub/Sub 主题的 DataPath 作为 OUTPUT 的值提供,则默认输出格式为 JSONL。对于所有其他 DataPaths,默认输出格式为 ORC

--parallelism=COUNT

(可选)指定处理线程数。该值应等于或小于可用核心数。默认值为 1。

--preload-chunk-count=PRELOAD_CHUNK_COUNT

(可选)指定在所有线程处理时要预加载的数据块的数量。默认值为 1。

--replace

(可选)如果指定,则会在写入解码结果之前递归删除输出路径。

--transcode-configuration=CONFIG : DataPath

(可选)指定包含转码配置的文件。如需详细了解转码器配置格式,请参阅转码器配置

qsam encode

对 QSAM 数据进行编码。

此命令会从外部来源获取数据,并将其转换为 QSAM 文件。输入由您使用 --input-format 参数指定的值定义。

摘要

qsam encode [-h] --copybook=COPYBOOK
                   --input-format=FORMAT
                   [--input-stream-count=COUNT]
                   [--parallelism=COUNT]
                   [--spillover=SPILLOVER]
                   [--transcode-configuration=CONFIG]
                   [--input-parameter=KEY=VALUE]... INPUT
                   OUTPUT

标志和参数

qsam encode 命令使用以下标志和参数:

INPUT : DataPath
指定要编码为 QSAM 文件的输入文件的数据路径。
OUTPUT : DataPath
指定要编码到的 QSAM 文件的数据路径。
--copybook=COPYBOOK : DataPath
指定包含复制簿的文件的数据路径。
--help-h
(可选)显示此帮助消息。
--input-format=FORMAT : TranscodeInputFormat
指定输入的格式。
--input-parameter=KEY=VALUE
(可选)指定用于配置输入的参数。如需详细了解如何指定输入参数,请参阅 CSV 输入配置
--input-stream-count=COUNT
(可选)指定输入数据流的数量。这是上限值,实际使用的数据流可能会更少。默认值为 1。
--parallelism=COUNT
(可选)指定处理线程数。该值应等于或小于可用核心数。默认值为 1。
--spillover=SPILLOVER : DataPath
(可选)为溢出数据集指定数据路径。如果您未指定此信息,系统会舍弃错误详情。
--transcode-configuration=CONFIG : DataPath
(可选)指定包含转码配置的文件。如需详细了解转码器配置格式,请参阅转码器配置

scp

将文件复制到 Cloud Storage。

摘要

scp [options] [input] [output]

标志和参数

如需使用此命令,您必须确保:

  • 通过 input--inDD--inDsn 设置一个唯一的输入值。
  • 通过输出或 --gcsOutUri 设置一个唯一的输出值。

scp 命令使用以下标志和参数:

input
(可选)指定要复制的 DD 或 DSN。您可以改用 --inDD--inDsn
output
(可选)使用格式 gs://[BUCKET]/[PREFIX] 指定输出的 URI。您可以改用 --gcsOutUri
--compress
(可选)使用 gzip 压缩输出。
--count-n=RECORDS
(可选)指定要复制的记录数。默认值为无限制。
--encoding=ENCODING
(可选)指定输入字符编码。默认值为 CP037。
--gcsOutUri=URI
(可选)指定文件副本的目标 Cloud Storage URI。
--help-h
显示此帮助文本。
--inDD=INPUT
(可选)指定要复制的 DD 文件。默认值为 DD INFILE
--inDsn=INPUT
(可选)指定要复制的 DSN。
--noConvert
(可选)停用将字符输入转换为 ASCII 的功能。字符转换功能默认处于启用状态。

systemreport

提供系统报告。

摘要

systemreport [-h] [--available_security_providers] [--supported_ciphers]

标志和参数

systemreport 命令使用以下标志和参数:

--available_security_providers
(可选)打印支持的安全提供程序。
--help-h
(可选)显示此帮助消息。
--supported_ciphers
(可选)输出支持的密码。

参数类型

主机连接器命令中使用的这些常用类型。

DataPath

DataPath 是一个字符串,表示输入或输出。每种 DataPath 类型都有自己的前缀和参数,如下所示:

  • DD: - 在作业控制语言 (JCL) 作业中运行时,带有此前缀的数据路径会指向数据定义语句 (DD)。您可以通过向 DD 添加 encoding= 来更改 DD 编码。例如 DD:DDNAMEDD:DDNAME?encoding=UTF-8。默认的 DD 编码是默认的操作系统编码。

  • DSN: - 在大型机上运行时,带有此前缀的数据路径会指向数据源名称 (DSN)。您可以通过向 DSN 添加 encoding= 来更改 DSN 编码。例如 DSN:HQ.FOO.BARDSN:HQ.FOO.BAR?encoding=cp037

  • file: - 带有此前缀的数据路径指向 Unix 文件。您可以在 Unix 文件中指定以下内容:

    • : 之前添加 #lrecl,以便获取逻辑记录长度 (LRECL)。
    • : 前面添加 &recfm,以便设置记录格式 (RECFM)。默认 RECFM 为 F
    • : 前面添加 &encoding 进行编码。默认编码为 UTF-8

    例如 file:/path/to/filefile?80:/path/to/filefile?80&recfm=FB/path/to/filefile?80&recfm=FB&encoding=cp037/path/to/file

  • gs:// - 带有此前缀的数据路径指向 Cloud Storage 中的文件。您可以在该文件中指定以下内容:

    • 在存储桶前缀后面添加 ?lrecl=lrecl 以设置 LRECL。
    • 在存储桶前缀后面添加 ?recfm=recfm 即可创建 RECFM。默认 RECFM 为 F
    • 在存储桶前缀后面添加 ?encoding= 进行编码。默认编码为 UTF-8

    例如 gs://my_bucket/my/file.txtgs://my_bucket/my/file.txt?encoding=cp037gs://my_bucket/my/file.txt?recfm=fb&encoding=cp037gs://my_bucket/my/file.txt?lrecl=80&recfm=fb&encoding=recfm

  • pubsub: - 带有此前缀的数据路径指向 Pub/Sub 资源。例如 pubsub:projects/projectId/topics/topicId

对于 Cloud Storage 或 Unix 文件,如果 RECFM 设置为 V,Mainframe 连接器会以 zzLL 格式读取和写入文件,如下所示:

  • 前两个字节始终为 0x0000。
  • 后续的两个字节表示数据大小。
  • 其余字节构成实际记录数据。

DataSize

DataSize 以数量和测量单位的形式表示大小,例如 5 MiB。您可以在数量和幅度之间使用空格。数据大小解析不区分大小写,因此您可以使用大写和小写形式指定测量单位。

您可以使用以下格式指定该值:

  • Java 格式:b/k/m/g/t,分别代表字节、千字节、兆字节、吉比字节和太比字节。
  • 国际格式:KiB/MiB/GiB/TiB,分别代表千字节、兆字节、吉比字节和太比字节。
  • 公制格式:b/kb/mb/gb/tb,分别表示千字节、兆字节、千兆字节和太字节。

TranscodeFormat

TranscodeFormat 表示在转码过程中要使用的格式。

有效值包括:

  • ORC - ORC 是一种自描述的类型感知列式文件格式。
  • CSV - CSV 是一种纯文本格式,用于存储表格数据,其中每行代表一行。您可以使用 csv-dialect 输入参数指定 CSV 参数。您可以将其定义为 --input-parameter csv-dialect=DataPath,其中 DataPath 指向这些参数的位置。
  • JSONL - JSONL 是一种纯文本格式,用于存储表格数据,其中每行代表一行。您可以使用 json-dialect 输入参数指定 JSON 参数。您可以将其定义为 --input-parameter json-dialect=DataPath,其中 DataPath 指向这些参数的位置。

TranscodeInputFormat

转码期间要使用的格式。

有效值包括:

  • BIGQUERY - 直接从 big-query 中拉取数据。INPUT 必须是查询文件的路径。

    可用的输入参数包括:

    • keep_order - 如果记录的确切顺序很重要,请使用此值。请注意,这会限制输入流。
    • project_id - 执行作业时要使用的项目 ID。
    • location - 执行作业时要使用的地点。
  • CSV - CSV 是一种纯文本格式,用于存储表格数据,其中每行代表一行。您可以使用 csv-dialect 输入参数指定 CSV 参数。您可以将其定义为 --input-parameter csv-dialect=DataPath,其中 DataPath 指向这些参数的位置。

  • JSONL - JSONL 是一种纯文本格式,用于存储表格数据,其中每行代表一行。您可以使用 json-dialect 输入参数指定 JSON 参数。您可以将其定义为 --input-parameter json-dialect=DataPath,其中 DataPath 指向这些参数的位置。