本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
在 AWS Glue 中取得及設定工作流程執行屬性
在您的 AWS Glue 工作流程中,使用工作流程回合屬性在任務中共享和管理狀態。您可以在建立工作流程時設定預設回合屬性。然後,當任務執行時,它們可以擷取回合屬性值並選擇性修改它們,供後續工作流程中的任務輸入使用。當任務修改回合屬性時,只有工作流程回合有新的值。預設的執行屬性不會受到影響。
如果您的 AWS Glue 任務並非工作流程的一部分,則系統將不會設定這些屬性。
以下來自擷取、轉換和載入 (ETL) 任務的範本 Python 程式碼,會示範如何取得工作流程回合屬性。
import sys import boto3 from awsglue.transforms import * from awsglue.utils import getResolvedOptions from awsglue.context import GlueContext from pyspark.context import SparkContext glue_client = boto3.client("glue") args = getResolvedOptions(sys.argv, ['JOB_NAME','WORKFLOW_NAME', 'WORKFLOW_RUN_ID']) workflow_name = args['WORKFLOW_NAME'] workflow_run_id = args['WORKFLOW_RUN_ID'] workflow_params = glue_client.get_workflow_run_properties(Name=workflow_name, RunId=workflow_run_id)["RunProperties"] target_database = workflow_params['target_database'] target_s3_location = workflow_params['target_s3_location']
將 target_format
回合屬性設為 'csv'
即可繼續以下程式碼。
workflow_params['target_format'] = 'csv' glue_client.put_workflow_run_properties(Name=workflow_name, RunId=workflow_run_id, RunProperties=workflow_params)
如需詳細資訊,請參閱下列內容: