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。如果您未提供值,主机连接器将从 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。

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。可以同时表示来源和目的地位置,具体取决于用途。
--project_id=ID
指定用于执行此命令的项目。
--batchSize=SIZE
(可选)指定每批要使用的分块。默认值为 1000。
--blksize=SIZE
(可选)指定要复制到大型机的文件的块大小。如果 blksize=0recfm 不是 U,主机系统会确定文件的最佳分块大小。
--cobDsn=DSN
(可选)指定要使用的副本簿 DSN。如果您未提供值,主机连接器将从 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.0。
--noseek
(可选)提高从 Cloud Storage 到大型机的下载性能。
--parallel-m
(可选)将并发写入器数量设置为 4。
--parallelism-p=NUMBER
(可选)指定并发写入器的数量。默认值为 4。
--parser_type=TYPE
(可选)将配置解析器设置为 legacycopybookauto。默认值为 auto
--preload_chunk_count=NUMBER
(可选)指定在所有工作器都处于忙碌状态时从磁盘预加载的块数量。默认值为 2。
--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
递归删除与路径表达式匹配的目录或对象的内容。

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
输出支持的加密方式。