Map 워크플로 상태
Map 상태를 사용하여 데이터세트의 항목마다 일련의 워크플로 단계를 실행할 수 있습니다. Map 상태의 반복은 동시에 실행되므로 데이터세트를 빠르게 처리할 수 있습니다. Map 상태는 JSON 배열, Amazon S3 객체 목록 또는 CSV 파일 등 다양한 입력 유형을 사용할 수 있습니다.
Step Functions는 워크플로에서 Map 상태를 사용할 수 있도록 인라인 모드와 분산 모드 등 두 가지 유형의 처리 모드를 제공합니다.
작은 정보
Map 상태를 사용하는 워크플로의 예를 배포하려면 AWS Step Functions 워크숍의 Choice 및 Map을 사용하여 데이터 배열 처리
Map 상태 처리 모드
Step Functions는 데이터세트의 항목을 처리하려는 방식에 따라 Map 상태에 대한 다음과 같은 처리 모드를 제공합니다.
-
인라인 — 제한적 동시성 모드입니다. 이 모드에서는 각
Map상태 반복이Map상태가 포함된 워크플로의 컨텍스트에서 실행됩니다. Step Functions는 이러한 반복 실행 내역을 상위 워크플로 실행 내역에 추가합니다. 기본적으로Map상태는 인라인 모드에서 실행됩니다.이 모드에서
Map상태는 입력으로 JSON 배열만 수락합니다. 또한 이 모드는 동시 반복을 최대 40회까지 지원합니다.자세한 내용은 Step Functions 워크플로의 인라인 모드에서 맵 상태 사용 섹션을 참조하세요.
-
분산 — 동시성이 높은 모드입니다. 이 모드에서
Map상태는 각 반복을 하위 워크플로 실행으로 실행하므로 병렬 하위 워크플로를 동시에 최대 10,000개까지 실행할 수 있습니다. 각 하위 워크플로 실행에는 상위 워크플로와 별개인 자체 실행 내역이 있습니다.이 모드에서
Map상태는 입력으로 JSON 배열이나 CSV 파일과 같은 Amazon S3 데이터 소스를 허용할 수 있습니다.자세한 내용은 분산 모드 섹션을 참조하세요.
사용해야 하는 모드는 데이터세트의 항목을 처리하려는 방식에 따라 달라집니다. 워크플로 실행 내역 항목이 25,000개를 초과하지 않거나 동시 반복이 40회 넘게 필요하지 않은 경우에 인라인 모드에서 Map 상태를 사용합니다.
다음 조건 조합을 모두 충족하는 대규모 병렬 워크로드를 오케스트레이션해야 하는 경우 분산 모드에서 Map 상태를 사용합니다.
데이터세트 크기가 256KiB를 초과합니다.
워크플로의 실행 이벤트 내역 항목이 25,000개를 초과합니다.
동시 반복을 40회 넘게 실행해야 합니다.
인라인 모드와 분산 모드의 차이점
다음 표에는 인라인 모드와 분산 모드 간의 차이점이 강조 표시되어 있습니다.
| 인라인 모드 | 분산 모드 |
|---|---|
| Supported data sources | |
워크플로의 이전 단계에서 전달된 JSON 배열을 입력으로 허용합니다. |
다음 데이터 소스를 입력으로 허용합니다.
|
| Map iterations | |
|
이 모드에서는 각 |
이 모드에서 |
| Maximum concurrency for parallel iterations | |
가능한 한 동시에 반복을 최대 40회까지 실행할 수 있습니다. |
하위 워크플로 실행을 동시에 최대 10,000개까지 실행하여 한 번에 수백만 개의 데이터 항목을 처리할 수 있습니다. |
| Input payload and event history sizes | |
입력 페이로드 크기를 256KiB로 제한하고 실행 이벤트 내역 항목을 25,000개로 제한합니다. |
이 모드에서는 |
| Monitoring and observability | |
|
콘솔에서 또는 또한 CloudWatch 및 X-Ray를 통해 실행 내역을 볼 수 있습니다. |
분산 모드에서 자세한 내용은 Step Functions에서 분산 맵 실행 보기 섹션을 참조하세요. |