PutDynamoDB 프로세서

PutDynamoDB 프로세서

PutDynamoDB는 해시 키와 범위 키를 기준으로 DynamoDB 항목을 저장하는 OpenFlow 프로세서예요.

출처: Snowflake 문서

본문

이 프로세서는 일반 사용 가능(Generally Available) 상태예요. OpenFlow Snowflake 배포는 AWS, Azure, GCP 상용(Commercial) 리전의 모든 계정에서 사용할 수 있고, OpenFlow BYOC 배포는 AWS 상용 리전의 모든 계정에서 사용할 수 있어요. Bundle org.apache.nifi | nifi-aws-nar 설명 해시 키와 범위 키를 기준으로 DynamoDB의 문서를 저장해요. 테이블은 해시+범위 키 또는 해시 키만 가질 수 있어요. 현재 지원하는 키 타입은 string과 number이고, 값은 JSON 문서일 수 있어요. 해시 키와 범위 키를 모두 쓰는 경우 연산에 두 키가 모두 필요해요. FlowFile 내용은 JSON이어야 하고, DynamoDB 항목의 지정된 Json Document 속성에 매핑돼요. Tags AWS, Amazon, DynamoDB, Insert, Put 입력 요구 사항 필수(REQUIRED) 민감 동적 속성 지원 아니요(false)

속성 (Properties)

속성 설명
AWS Credentials Provider service AWS 자격 증명 공급자를 얻기 위해 사용하는 Controller Service예요.
Batch items for each request (between 1 and 50) 한 배치에서 처리할 항목 수(1~50)예요.
Character set of document 문서 데이터의 문자 집합이에요.
Communications Timeout AWS와 통신할 때의 타임아웃이에요.
Endpoint Override URL scheme, host, port, path를 포함해 AWS 기본값 대신 사용할 Endpoint URL이에요. AWS 라이브러리는 AWS 리전을 기준으로 endpoint URL을 선택하지만, 이 속성은 선택된 endpoint URL을 덮어써서 다른 S3 호환 endpoint와 함께 사용할 수 있게 해줘요.
Hash Key Name 항목의 해시 키 이름이에요.
Hash Key Value 항목의 해시 키 값이에요.
Hash Key Value Type 항목의 해시 키 값 타입이에요.
Json Document attribute DynamoDB 항목에서 가져올 JSON 문서(스키마의 's' 타입)예요.
Range Key Name 항목의 범위 키 이름이에요.
Range Key Value 항목의 범위 키 값이에요.
Range Key Value Type 항목의 범위 키 값 타입이에요.
Region 연결할 AWS 리전이에요.
SSL Context Service 제공되면 연결을 만드는 데 사용되는 선택적 SSL Context Service를 지정해요.
Table Name DynamoDB 테이블 이름이에요.
proxy-configuration-service 네트워크 요청을 프록시할 Proxy Configuration Controller Service를 지정해요.

관계 (Relationships)

이름 설명
failure FlowFile이 failure 관계로 라우팅돼요.
success FlowFile이 success 관계로 라우팅돼요.
unprocessed DynamoDB가 요청의 모든 항목을 처리하지 못할 때 FlowFile이 unprocessed 관계로 라우팅돼요. 대표적인 이유는 테이블 처리 용량 부족과 요청당 최대 바이트 초과예요. unprocessed FlowFile은 새 요청으로 재시도할 수 있어요.

기록되는 속성 (Writes attributes)

속성 설명
dynamodb.key.error.unprocessed DynamoDB가 처리하지 못한 키들이에요.
dynmodb.range.key.value.error DynamoDB 범위 키 오류예요.
dynamodb.key.error.not.found DynamoDB 키를 찾지 못했어요.
dynamodb.error.exception.message DynamoDB 예외 메시지예요.
dynamodb.error.code DynamoDB 오류 코드예요.
dynamodb.error.message DynamoDB 오류 메시지예요.
dynamodb.error.service DynamoDB 오류 서비스예요.
dynamodb.error.retryable DynamoDB 오류가 재시도 가능한지 여부예요.
dynamodb.error.request.id DynamoDB 오류 요청 ID예요.
dynamodb.error.status.code DynamoDB 오류 상태 코드예요.
dynamodb.item.io.error 항목 생성 중 발생한 IO 예외 메시지예요.

더 알아보기 (Learn more)