如何使用gcloud命令运行官方默认Dataflow模板创建任务
gcloud使用官方模板创建Dataflow任务操作指南
通用命令规则
官方预置的Dataflow模板统一存放在公共GCS存储桶中,无需自行上传模板即可直接调用,基础命令结构如下:
gcloud dataflow jobs run [自定义作业名称] \ --region=[作业运行区域] \ --gcs-location=[官方模板GCS路径] \ --parameters [模板参数1=值1,参数2=值2...]
核心参数说明
- 自定义作业名称:仅支持小写字母、数字、横杠,同一区域内不可重复
--region:必填参数,指定作业运行的GCP区域,例如us-central1、asia-east1--gcs-location:官方模板的存储路径,所有预置模板均存放在gs://dataflow-templates/路径下--parameters:对应模板的自定义配置项,多个参数用英文逗号分隔,无需空格
Pub/Sub Topic to BigQuery场景完整示例
前置准备
- 已创建目标Pub/Sub Topic、BigQuery数据集及目标表,表结构与Pub/Sub消息格式匹配
- 本地gcloud CLI已完成认证,且已配置当前操作的GCP项目:
gcloud config set project [你的项目ID]
可直接运行的命令示例
gcloud dataflow jobs run pubsub-to-bq-sync \ --region=asia-east1 \ --gcs-location=gs://dataflow-templates/latest/PubSub_to_BigQuery \ --parameters \ inputTopic=projects/你的项目ID/topics/你的Topic名,\ outputTableSpec=你的项目ID:目标数据集名.目标表名,\ outputDeadletterTable=你的项目ID:目标数据集名.死信表名
场景专属参数说明
inputTopic:输入Pub/Sub Topic的完整资源路径outputTableSpec:目标BigQuery表的完整路径,格式固定为项目ID:数据集名.表名outputDeadletterTable:写入BigQuery失败的消息会存入该死信表,避免作业中断,建议配置
常见操作补充
- 若需要固定模板版本避免自动更新带来的兼容性问题,可将路径中的
latest替换为对应版本号,例如gs://dataflow-templates/2024-05-20-00_RC00/PubSub_to_BigQuery - 执行命令后可通过
gcloud dataflow jobs list --region [你的区域]查看作业运行状态 - 如需调整作业资源配置,可额外添加
--max-workers [最大Worker数]、--service-account-email [运行服务账号]等可选参数
内容的提问来源于stack exchange,提问作者AK91
相关产品推荐
相关产品推荐

