Amazon Keyspaces에서 변경 데이터 캡처(CDC) 스트림이 작동하는 방식 - Amazon Keyspaces(Apache Cassandra용)

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

Amazon Keyspaces에서 변경 데이터 캡처(CDC) 스트림이 작동하는 방식

이 섹션에서는 Amazon Keyspaces에서 변경 데이터 캡처(CDC) 스트림이 작동하는 방식에 대한 개요를 제공합니다.

Amazon Keyspaces 변경 데이터 캡처(CDC)는 정렬된 행 수준 수정 시퀀스를 Amazon Keyspaces 테이블에 기록하고이 정보를 최대 24시간 동안 스트림이라는 로그에 저장합니다. 모든 행 수준 수정은 기본 키 열 정보와 모든 열을 포함한 행의 “이전” 및 “이후” 상태를 포함하는 새 CDC 레코드를 생성합니다. 애플리케이션은 스트림에 액세스하고 거의 실시간으로 변형을 볼 수 있습니다.

테이블에서 CDC를 활성화하면 Amazon Keyspaces는 새 CDC 스트림을 생성하고 테이블의 모든 수정에 대한 정보를 캡처하기 시작합니다. CDC 스트림의 Amazon 리소스 이름(ARN) 형식은 다음과 같습니다.

arn:${Partition}:cassandra:{Region}:${Account}:/keyspace/${keyspaceName}/table/${tableName}/stream/${streamLabel}

CDC 스트림을 처음 활성화할 때 CDC 스트림이 각 레코드에 대해 수집하는 정보 유형 또는 뷰 유형을 선택할 수 있습니다. 나중에 스트림의 보기 유형을 변경할 수 없습니다. Amazon Keyspaces는 다음 뷰 유형을 지원합니다.

  • NEW_AND_OLD_IMAGES - 변형 이전과 이후의 행 버전을 캡처합니다. 이 값이 기본값입니다.

  • NEW_IMAGE - 변형 이후의 행 버전을 캡처합니다.

  • OLD_IMAGE - 변형 이전의 행 버전을 캡처합니다.

  • KEYS_ONLY - 변형된 행의 파티션 및 클러스터링 키를 캡처합니다.

모든 CDC 스트림은 레코드로 구성됩니다. 각 레코드는 Amazon Keyspaces 테이블에서 단일 행 수정을 나타냅니다. 레코드는 샤드라고 하는 그룹으로 논리적으로 구성됩니다. 이러한 그룹은 프라이머리 키의 범위(파티션 키의 조합, 클러스터링 키 범위)별로 논리적으로 구성되며 Amazon Keyspaces의 내부 구성입니다. 각 샤드는 여러 레코드의 컨테이너 역할을 하며 이러한 레코드에 액세스하고 반복하는 데 필요한 정보를 포함합니다.

Amazon Keyspaces CDC 스트림은 행 변형 모음의 CDC 레코드를 나타내는 샤드로 구성됩니다.

각 CDC 레코드에는 샤드 내에 레코드가 게시된 순서를 반영하는 시퀀스 번호가 할당됩니다. 시퀀스 번호는 각 샤드 내에서 증가하며 고유합니다.

Amazon Keyspaces는 샤드를 자동으로 생성하고 삭제합니다. 트래픽 부하에 따라 Amazon Keyspaces는 시간 경과에 따라 샤드를 분할하거나 병합할 수도 있습니다. 예를 들어 Amazon Keyspaces는 하나의 샤드를 여러 개의 새 샤드로 분할하거나 샤드를 새 단일 샤드로 병합할 수 있습니다. Amazon Keyspaces APIs 샤드 및 CDC 스트림 정보를 게시하여 소비 애플리케이션이 샤드의 전체 계보 그래프에 액세스하여 올바른 순서로 레코드를 처리할 수 있도록 합니다.

Amazon Keyspaces CDC는 애플리케이션을 빌드할 때 신뢰할 수 있는 다음 원칙을 기반으로 합니다.

  • 각 행 수준 변형 레코드는 CDC 스트림에 정확히 한 번 표시됩니다.

  • 계보 순서대로 샤드를 사용하는 경우 각 행 수준 변형 레코드는 기본 키의 실제 변형 순서와 동일한 순서로 나타납니다.

Amazon Keyspaces의 CDC 스트림에 대한 데이터 보존 작동 방식

Amazon Keyspaces는 24시간 동안 CDC 스트림에 레코드를 보관합니다. 보존 기간은 변경할 수 없습니다. 테이블에서 CDC를 비활성화하면 스트림의 데이터를 24시간 동안 계속 읽을 수 있습니다. 이 시간이 지나면 데이터가 만료되고 레코드가 자동으로 삭제됩니다.

Amazon Keyspaces의 CDC 스트림에서 TTL(Time To Live) 데이터 만료 작동 방식

Amazon Keyspaces는 열/셀 수준의 만료 시간과 CDC 변경 레코드에서 라는 메타데이터 필드expirationTime의 행 수준을 표시합니다. Amazon Keyspaces TTL이 셀의 만료를 감지하면 CDC는 TTL을 변경의 오리진으로 표시하는 새 변경 레코드를 생성합니다. TTL에 대한 자세한 내용은 Amazon Keyspaces(Apache Cassandra용)의 TTL(Time to Live)을 사용하여 데이터 만료 섹션을 참조하세요.

Amazon Keyspaces의 CDC 스트림에 대한 배치 작업 작동 방식

배치 작업은 내부적으로 개별 행 수준 수정으로 나뉩니다. Amazon Keyspaces는 배치 작업에서 수정이 발생했더라도 행 수준에서 CDC 스트림 내의 모든 레코드를 유지합니다. Amazon Keyspaces는 행 수준 또는 기본 키에서 발생한 변형 순서와 동일한 순서로 CDC 스트림 내의 레코드 순서를 유지합니다.

Amazon Keyspaces의 CDC 스트림에서 정적 열이 작동하는 방식

정적 열 값은 Cassandra의 파티션에 있는 모든 행 간에 공유됩니다. 이러한 동작으로 인해 Amazon Keyspaces는 정적 열에 대한 모든 업데이트를 CDC 스트림의 별도 레코드로 캡처합니다. 다음 예제에서는 정적 열 변형의 동작을 요약합니다.

  • 정적 열만 업데이트되면 CDC 스트림에는 정적 열에 대한 행 수정이 행의 유일한 열로 포함됩니다.

  • 정적 열을 변경하지 않고 행을 업데이트하면 CDC 스트림에는 정적 열을 제외한 모든 열을 포함하는 행 수정이 포함됩니다.

  • 행이 정적 열과 함께 업데이트되면 CDC 스트림에는 두 개의 개별 행 수정이 포함됩니다. 하나는 정적 열용이고 다른 하나는 나머지 행용입니다.

Amazon Keyspaces의 CDC 스트림에 대한 저장 데이터 암호화 작동 방식

CDC 정렬 로그에서 저장 데이터를 암호화하기 위해 Amazon Keyspaces는 테이블에 이미 사용된 것과 동일한 암호화 키를 사용합니다. 저장된 암호화에 대한 자세한 내용은 Amazon Keyspaces에서 저장 시 암호화 섹션을 참조하세요.

Amazon Keyspaces의 CDC 스트림에 대한 다중 리전 복제 작동 방식

update-table API 또는 ALTER TABLE CQL 명령을 사용하여 다중 리전 테이블의 개별 복제본에 대해 CDC 스트림을 활성화 및 비활성화할 수 있습니다. 비동기식 복제 및 충돌 해결로 인해 다중 리전 테이블의 CDC 스트림은 전체적으로 일관되지 않습니다 AWS 리전. 따라서 Amazon Keyspaces가 스트림에서 캡처하는 레코드는 리전마다 다른 순서로 표시될 수 있습니다.

다중 리전 복제에 대한 자세한 내용은 섹션을 참조하세요Amazon Keyspaces에 대한 다중 리전 복제(Apache Cassandra용).

CDC 스트림 및 서비스와의 AWS 통합

Amazon Keyspaces에서 CDC 스트림에 대한 VPC 엔드포인트를 사용하는 방법

VPC 엔드포인트를 사용하여 Amazon Keyspaces CDC 스트림에 액세스할 수 있습니다. 스트림에 대한 VPC 엔드포인트를 생성하고 액세스하는 방법에 대한 자세한 내용은 섹션을 참조하세요인터페이스 VPC 엔드포인트와 함께 Amazon Keyspaces CDC 스트림 사용.

Amazon Keyspaces의 CDC 스트림에 대한 CloudWatch 모니터링 작동 방식

Amazon CloudWatch를 사용하여 Amazon Keyspaces CDC 엔드포인트에 대한 API 호출을 모니터링할 수 있습니다. 사용 가능한 지표에 대한 자세한 내용은 섹션을 참조하세요Amazon Keyspaces 변경 데이터 캡처(CDC)에 대한 지표.

CloudTrail을 사용한 로깅이 Amazon Keyspaces의 CDC 스트림에서 작동하는 방식

Amazon Keyspaces CDC는 Amazon Keyspaces에서 사용자 AWS CloudTrail, 역할 또는 서비스가 수행한 작업에 대한 레코드를 제공하는 AWS 서비스와 통합됩니다. CloudTrail은 Amazon Keyspaces에 대한 데이터 정의 언어(DDL) API 직접 호출 및 데이터 조작 언어(DML) API 직접 호출을 이벤트로 캡처합니다. 캡처되는 호출에는 Amazon Keyspaces 콘솔에서 수행한 직접 호출과 Amazon Keyspaces API 작업에 대한 프로그램 방식의 직접 호출이 포함됩니다.

CloudTrail에서 캡처한 CDC 이벤트에 대한 자세한 내용은 섹션을 참조하세요를 사용하여 Amazon Keyspaces API 호출 로깅 AWS CloudTrail.

Amazon Keyspaces의 CDC 스트림에 대한 태그 지정 작동 방식

Amazon Keyspaces CDC 스트림은 태그 지정 가능한 리소스입니다. CQL, AWS SDK 또는를 사용하여 프로그래밍 방식으로 테이블을 생성할 때 스트림에 태그를 지정할 수 있습니다 AWS CLI. 기존 스트림에 태그를 지정하거나, 태그를 삭제하거나, 스트림의 태그를 볼 수도 있습니다. 자세한 내용은 Amazon Keyspaces에서 키스페이스, 테이블 및 스트림에 태그 지정 단원을 참조하십시오.