기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
변수 및 JSONata를 사용하여 상태 관리
Step Functions는 최근에 상태를 관리하고 데이터를 변환하기 위해 변수와 JSONata를 추가했습니다.
블로그 게시물에서 변수 및 JSONata를 사용한 개발자 경험 간소화에서 AWS Step Functions
Step Functions 실행이 JSON 입력을 수신하면 해당 데이터를 워크플로의 첫 번째 상태로 입력으로 전달합니다.
JSONata를 사용하면에서 상태 입력을 검색할 수 있습니다$states.input
. 또한 상태 시스템 실행은에서 초기 입력 데이터를 제공합니다컨텍스트 객체. 에서 워크플로의 언제든지 원래 상태 시스템 입력을 검색할 수 있습니다$states.context.Execution.Input
.
상태가 종료되면 상태 시스템의 바로 다음 상태에서 출력을 사용할 수 있습니다. 상태 출력을 수정하지 않는 한 상태 입력은 기본적으로 상태 출력으로 전달됩니다. 이후 단계에서 필요할 수 있는 데이터의 경우 변수에 저장하는 것이 좋습니다. 자세한 내용은 변수를 사용하여 상태 간에 데이터 전달 섹션을 참조하세요.
QueryLanguage 권장 사항
새 상태 시스템의 경우 JSONata 쿼리 언어를 사용하는 것이 좋습니다. 쿼리 언어를 지정하지 않는 상태 시스템에서 상태 시스템은 기본값이 이전 버전과의 호환성을 위해 JSONPath입니다. 상태 시스템 또는 개별 상태에 JSONata를 사용하려면 옵트인해야 합니다.
JSONata로 입력 및 출력 처리
JSONata 표현식을 사용하면 데이터를 선택하고 변환할 수 있습니다. Arguments
필드에서 작업에 전송된 데이터를 사용자 지정할 수 있습니다. 결과는 Output
필드에서 사용자 지정 상태 출력으로 변환할 수 있습니다. Assign
필드의 변수에 데이터를 저장할 수도 있습니다. 자세한 내용은 JSONata로 데이터 변환을 참조하세요.
다음 다이어그램은 JSON 정보가 JSONata 작업 상태를 이동하는 방법을 보여줍니다.

JSONPath를 사용하여 입력 및 출력 처리
상태 관리 및 데이터 변환
변수를 사용하여 상태 간 데이터 전달과 JSONata를 사용하여 데이터 변환에 대해 알아봅니다.
JSONPath를 사용하는 상태 시스템의 경우 , InputPath
, Parameters
, ResultSelector
ResultPath
, 필드는 상태 간 데이터 흐름을 제어합니다OutputPath
. 각 JSONPath 필드는 워크플로의 각 상태를 이동할 때 JSON을 조작할 수 있습니다.
JSONPath 필드는 경로를 사용하여 입력 또는 결과에서 JSON의 일부를 선택할 수 있습니다. 경로는 JSON 텍스트 내의 노드를 식별하는 $
로 시작하는 문자열입니다. Step Functions 경로는 JsonPath
다음 다이어그램은 JSON 정보가 JSONPath 작업 상태를 이동하는 방법을 보여줍니다. 는 JSON 입력의 일부를 InputPath
선택하여 Task
상태 작업(예: AWS Lambda 함수)에 전달합니다. Parameters
필드에서 작업에 전송되는 데이터를 조정할 수 있습니다. 그런 다음를 사용하면 작업 결과의 일부를 선택하여 이월할 ResultSelector
수 있습니다. 그런 ResultPath
다음는 출력에 전달할 상태 입력 및 작업 결과의 조합을 선택합니다.는 JSON 출력을 필터링하여 출력에 전달되는 정보를 추가로 제한할 OutputPath
수 있습니다.
