PutMongoRecord 프로세서
PutMongoRecord 프로세서
PutMongoRecord는 MongoDB에 데이터를 삽입/업서트하는 레코드 인지 프로세서예요.
출처: Snowflake 문서
본문
이 프로세서는 일반 사용 가능(Generally Available) 상태예요. OpenFlow Snowflake 배포는 AWS, Azure, GCP 상용(Commercial) 리전의 모든 계정에서 사용할 수 있고, OpenFlow BYOC 배포는 AWS 상용 리전의 모든 계정에서 사용할 수 있어요.
Bundle org.apache.nifi | nifi-mongodb-nar
설명
이 프로세서는 MongoDB에 데이터를 삽입/업서트하는 레코드 인지 프로세서예요. 설정된 레코드 리더와 스키마를 사용해 flowfile 본문에서 들어오는 레코드 집합을 읽고, 그 레코드 배치를 설정된 MongoDB 컬렉션에 삽입/업서트해요. 이 프로세서는 삭제(delete)를 지원하지 않아요. 한 번에 삽입/업서트할 문서 수는 'Batch Size' 설정 속성으로 제어돼요. MongoDB가 한 번에 너무 많은 연산으로 과부하되지 않도록 이 값을 적절한 크기로 설정해야 해요.
Tags insert, mongodb, put, record, update, upsert
입력 요구 사항 필수(REQUIRED)
민감 동적 속성 지원 아니요(false)
속성 (Properties)
| 속성 | 설명 |
|---|---|
| Mongo Collection Name | 사용할 컬렉션 이름이에요. |
| Mongo Database Name | 사용할 데이터베이스 이름이에요. |
| bypass-validation | 삽입 또는 업데이트 연산 중 문서 스키마 검증을 건너뛸지 여부를 활성화/비활성화해요. 문서 검증 건너뛰기는 MongoDB의 Privilege Action이에요. 이 속성을 활성화하면 제한된 권한을 가진 사용자에게 인가 오류가 발생할 수 있어요. |
| insert_count | MongoDB에 대한 단일 삽입/업서트 연산으로 묶을 레코드 수예요. |
| mongo-client-service | 설정하면 연결 풀링에 할당된 클라이언트 서비스를 사용해요. |
| ordered | 순서 있는 연산 또는 순서 없는 연산을 수행해요. |
| record-reader | 들어오는 데이터를 파싱하고 데이터의 스키마를 결정하는 데 사용할 Controller Service를 지정해요. |
| update-key-fields | 업데이트할 문서를 식별하는 기준이 되는 필드의 쉼표로 구분된 목록이에요. 이 속성이 설정되면 NiFi는 모든 문서에 업서트 연산을 시도해요. 이 속성이 설정되지 않으면 모든 문서가 삽입돼요. |
| update-mode | 들어오는 레코드당 단일 문서를 업데이트할지 여러 문서를 업데이트할지 선택해요. |
관계 (Relationships)
| 이름 | 설명 |
|---|---|
| failure | MongoDB에 기록할 수 없는 모든 FlowFile이 이 관계로 라우팅돼요. |
| success | MongoDB에 기록된 모든 FlowFile이 이 관계로 라우팅돼요. |