管道结构和执行
管线结构
Amazon SageMaker Pipelines 实例由 name
、parameters
和 steps
组成。(account, region)
对中的管道名称必须是唯一的。步骤定义中使用的所有参数都必须在管道中定义。列出的管道步骤会根据彼此之间的数据依赖关系自动确定其执行顺序。管道服务会解析数据依赖 DAG 中各步骤之间的关系,创建一系列执行完成的步骤。以下是管道结构的示例。
from sagemaker.workflow.pipeline import Pipeline pipeline_name = f"AbalonePipeline" pipeline = Pipeline( name=pipeline_name, parameters=[ processing_instance_type, processing_instance_count, training_instance_type, model_approval_status, input_data, batch_data, ], steps=[step_process, step_train, step_eval, step_cond], )
使用并行配置执行管道
默认情况下,管线会执行所有可并行运行的步骤。创建或更新管线以及启动或重试管线执行时,您可以使用 ParallelismConfiguration
属性来控制此行为。
每个执行都会应用并行配置。例如,如果启动了两个执行,则每个执行最多可以同时运行 50 个步骤,总共可以同时运行 100 个步骤。此外,启动、重试或更新执行时指定的 ParallelismConfiguration
优先于管道中定义的并行配置。
例 使用 ParallelismConfiguration
创建管道执行
pipeline = Pipeline( name="
myPipeline
", steps=[step_process, step_train] ) pipeline.create(role, parallelism_config={"MaxParallelExecutionSteps": 50})