Step Functions를 사용하여 CRUD DynamoDB 작업 수행 - AWS Step Functions

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Step Functions를 사용하여 CRUD DynamoDB 작업 수행

Step Functions를 DynamoDB와 통합하여 DynamoDB 테이블에서 CRUD 작업을 수행할 수 있습니다. 이 페이지는 지원되는 DynamoDB를 나열하고 APIs DynamoDB에서 항목을 검색하는 Task 예제 상태를 제공합니다.

통합에 대해 알아보려면 AWS Step Functions의 서비스에 대해서는 및 을 참조하십시오 서비스 통합. Step API Functions에서 서비스에 파라미터 전달하기

최적화된 DynamoDB 통합의 주요 기능

다음은 DynamoDB에서 보낸 메시지를 검색하는 Task 상태입니다.

"Read Next Message from DynamoDB": { "Type": "Task", "Resource": "arn:aws:states:::dynamodb:getItem", "Parameters": { "TableName": "TransferDataRecords-DDBTable-3I41R5L5EAGT", "Key": { "MessageId": {"S.$": "$.List[0]"} } }, "ResultPath": "$.DynamoDB", "Next": "Send Message to SQS" },

작업 중인 예제에서 이 상태를 보려면 를 사용하여 데이터 레코드 전송 Lambda, DynamoDB, 및 Amazon SQS 샘플 프로젝트를 확인하십시오.

참고

Step Functions에는 작업의 최대 입력 또는 결과 데이터 크기에 대한 할당량이 있습니다. 이렇게 하면 다른 서비스에 데이터를 보내거나 다른 서비스에서 데이터를 받을 때 UTF -8로 인코딩된 문자열로 256KB의 데이터가 제한됩니다. 상태 시스템 실행과 관련된 할당량을 참조하세요.

지원되는 DynamoDB APIs

매개 변수 입력 Step Functions 다음과 같이 표현됩니다. PascalCase

예를 camelCase startSyncExecution 들어 API 액션에 네이티브 API 서비스가 포함되어 있더라도 다음과 같은 매개 변수를 지정합니다StateMachineArn. PascalCase

IAMDynamoDB 호출을 위한 정책

다음 예제 템플릿은 방법을 보여줍니다. AWS Step Functions 스테이트 머신 정의의 리소스를 기반으로 IAM 정책을 생성합니다. 자세한 내용은 Step Functions가 통합 서비스를 위한 IAM 정책을 생성하는 방법Step Functions에서 서비스 통합 패턴을 살펴보세요 단원을 참조하세요.

정적 리소스

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem" ], "Resource": [ "arn:aws:dynamodb:[[region]]:[[accountId]]:table/[[tableName]]" ] } ] }

동적 리소스

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:GetItem", "dynamodb:PutItem", "dynamodb:UpdateItem", "dynamodb:DeleteItem" ], "Resource": "*" } ] }

모든 DynamoDB 작업의 IAM 정책에 대한 자세한 내용은 Amazon API DynamoDB 개발자 안내서의 DynamoDB IAM 관련 정책을 참조하십시오. 또한 DynamoDB용 PartiQL의 IAM 정책에 대한 자세한 내용은 Amazon DynamoDB 개발자 안내서의 DynamoDB용 PartiQL 정책을 IAM 참조하십시오.