Amazon Kinesis Data Streams용 Openflow 커넥터 유지 관리

Amazon Kinesis Data Streams용 Openflow 커넥터 유지 관리

이 문서에서는 Amazon Kinesis Data Streams용 Openflow 커넥터를 유지 관리하는 방법, 특히 커넥터 상태를 관리하고 재설정하는 방법을 설명합니다.

출처: Snowflake 문서

본문

커넥터 상태 관리

Amazon Kinesis Data Streams용 Openflow 커넥터는 소비자 애플리케이션 상태를 저장하기 위해 DynamoDB를 사용합니다.

커넥터가 만드는 DynamoDB 테이블

커넥터는 AWS Kinesis Application Name에 지정된 이름의 DynamoDB 테이블을 만듭니다. 이 테이블은 스트림에 있는 각 샤드의 체크포인트 시퀀스 번호를 저장하는데, 이를 통해 어떤 레코드가 처리되었는지 추적합니다.

여러 프로세서가 같은 애플리케이션 이름을 사용하면 서로 협력하여 스트림에서 데이터를 소비하고 이 테이블을 공유합니다. 프로세서의 애플리케이션 이름이 서로 다르면 각자 자신의 테이블을 만들어 소비된 레코드를 독립적으로 추적합니다.

커넥터 상태 재설정

DynamoDB의 커넥터 상태가 손상되거나 불일치해졌다면 재설정해야 할 수 있습니다. 커넥터 상태를 재설정하는 방법은 두 가지입니다.

애플리케이션 이름 변경으로 재설정

커넥터 상태를 재설정하는 가장 간단한 방법은 AWS Kinesis Application Name 파라미터를 변경하는 것입니다.

  • 커넥터를 중지합니다.
  • 커넥터의 파라미터 컨텍스트로 이동합니다.
  • AWS Kinesis Application Name 파라미터 값을 새 값으로 변경합니다.
  • 커넥터를 시작합니다.

커넥터는 새 애플리케이션 이름으로 새 DynamoDB 테이블을 만들고, AWS Kinesis Initial Stream Position 파라미터가 지정한 위치부터 레코드 소비를 시작합니다.

참고:

  • 애플리케이션 이름을 바꿔도 커넥터는 이전 DynamoDB 테이블을 삭제하지 않습니다. AWS 콘솔이나 AWS CLI를 통해 테이블을 직접 삭제해야 합니다.
  • IAM 정책이 DynamoDB 접근을 특정 테이블 이름으로 제한한다면 새 테이블 이름에 대한 접근을 허용하도록 정책을 업데이트해야 합니다. IAM 권한 구성에 대한 자세한 내용은 Amazon Kinesis Data Streams용 Openflow 커넥터 설정을 참조하세요.

DynamoDB 테이블 삭제로 재설정

또는 기존 DynamoDB 테이블을 삭제해 상태를 재설정할 수 있습니다.

  • 커넥터를 중지합니다.
  • AWS 콘솔이나 AWS CLI로 애플리케이션 이름과 연결된 DynamoDB 테이블을 삭제합니다.
  • 커넥터를 시작합니다.

커넥터는 테이블을 다시 만들고 AWS Kinesis Initial Stream Position 파라미터가 지정한 위치부터 레코드 소비를 시작합니다.

경고: 커넥터 상태를 재설정하면 커넥터가 초기 스트림 위치가 지정한 위치부터 레코드를 다시 처리합니다. AWS Kinesis Initial Stream Position 설정에 따라 Snowflake로 중복 데이터가 수집되거나 데이터가 전혀 수집되지 않을 수 있습니다.

더 알아보기 (Learn more)