You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DataflowStartFlexTemplateOperator中指定输出文件名前缀

Dataflow BigQuery转Parquet模板文件名前缀配置方法

谷歌官方提供的BigQuery_to_Parquet Flex模板自带输出文件名前缀配置参数,你只需要在算子的parameters字段中新增outputFilenamePrefix配置项即可实现自定义前缀。
默认规则为:配置后输出的完整文件名格式为 {prefix值}-{分片序号}-of-{总分片数}.parquet,不配置时默认前缀为output。

修改后的代码如下:

export_to_gcs = DataflowStartFlexTemplateOperator(
    task_id=f'export_to_gcs_day_{day_num}',
    project_id=PROJECT_ID,
    body={
        'launchParameter': {
            'containerSpecGcsPath': 'gs://dataflow-templates-us-central1/latest/flex/BigQuery_to_Parquet',
            'jobName': f'tivo-export-to-gcs-{run_date}',
            'environment': {
                'stagingLocation': f'gs://{GCS_BUCKET_NAME}/{STAGING_LOCATION}',
                'numWorkers': '1',
                'maxWorkers': '20',
                'workerRegion': 'us-central1',
                'serviceAccountEmail': DF_SA_NAME,
                'machineType': 'n1-standard-4',
                'ipConfiguration': 'WORKER_IP_PRIVATE',
                'tempLocation': f'gs://{GCS_BUCKET_NAME}/{TEMP_LOCATION}',
                'subnetwork': SUBNETWORK,
                'enableStreamingEngine': False
            },
            'parameters': {
                'tableRef': f'{PROJECT_ID}:{DATASET_NAME}.native_firehose_table',
                'bucket': f'gs://{GCS_BUCKET_NAME}/Tivo/site_activity/{run_date}/',
                'numShards': '25',
                # 新增此行配置文件名前缀,可根据需求自定义值
                'outputFilenamePrefix': f'tivo-site-activity-{run_date}'
            },
        }
    },
    location=REGION_NAME,
    wait_until_finished=True,
    dag=dag
)

补充说明:

  • 前缀值可以包含特殊字符、日期变量,只要符合GCS对象命名规范即可
  • 不需要手动添加.parquet后缀,模板会自动在最终文件名中补全
  • 如果需要进一步修改完整的命名规则,才需要自定义Flex模板,仅改前缀用原生参数即可满足需求

内容的提问来源于stack exchange,提问作者GURUDAS K S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 10:36:06