참고
다중 리전 강력한 일관성(MRSC)을 미리 보기에서 사용할 수 있으며 변경될 수 있습니다.
다중 리전 강력한 일관성(MRSC)은 미리 보기에서 사용할 수 있는 새로운 DynamoDB 글로벌 테이블 기능입니다. MRSC용으로 구성된 글로벌 테이블은 다중 리전 범위로 강력하게 일관된 읽기를 수행할 수 있는 기능을 제공합니다. MRSC 테이블에서 강력하게 일관된 읽기를 수행하면 읽기를 수행하는 리전에 관계없이 항상 항목의 최신 버전을 읽을 수 있습니다.
다중 리전 강력하게 일관된 글로벌 테이블을 사용하여 목표 복구 시점(RPO)이 0인 애플리케이션을 구축할 수 있습니다. RPO가 0이면 애플리케이션 중단으로 인해 트래픽을 다른 AWS 리전으로 전환하더라도 애플리케이션이 항상 최신 버전의 DynamoDB 데이터를 읽을 수 있습니다.
MRSC 미리 보기는 글로벌 테이블 버전 2019.11.21(현재)에 대해서만 지원됩니다.
글로벌 테이블의 일관성 모드
글로벌 테이블을 만들 때 일관성 모드를 구성할 수 있습니다. 글로벌 테이블은 최종 일관성 및 강력한 일관성(미리 보기)의 다중 리전 일관성 모드를 제공합니다.
글로벌 테이블을 만들 때 일관성 모드를 지정하지 않으면 글로벌 테이블은 기본적으로 다중 리전 최종 일관성(MREC)으로 설정됩니다. 글로벌 테이블에는 서로 다른 일관성 모드로 구성된 복제본이 포함될 수 없습니다. 글로벌 테이블의 일관성 모드는 변경할 수 없습니다.
다중 리전 최종 일관성(MREC)
다중 리전 최종 일관성(MREC)은 글로벌 테이블의 기본 일관성 모드입니다. MREC 글로벌 테이블 복제본의 항목에 대한 변경 사항은 일반적으로 1초 이내에 다른 모든 복제본에 복제됩니다. 즉, ConsistentRead 파라미터를 true
로 설정하여 수행한 읽기 작업(강력하게 일관된 읽기)은 읽기가 발생한 리전에서 항목이 업데이트된 경우 항상 항목의 최신 버전을 반환하지만, 항목이 다른 리전에서 업데이트된 경우 오래된 데이터를 반환할 수 있습니다.
동일한 항목이 여러 리전에서 동시에 수정되어 발생하는 충돌은 최종 쓰기 우선 접근 방식으로 해결됩니다.
MREC 글로벌 테이블은 MRSC 글로벌 테이블에 비해 쓰기 및 강력하게 일관된 읽기 지연 시간이 짧습니다.
다음과 같은 경우 MREC 모드를 사용해야 합니다.
-
애플리케이션이 강력하게 일관된 읽기 작업에서 반환된 오래된 데이터를 허용할 수 있습니다(다른 리전에서 데이터가 업데이트된 경우).
-
다중 리전 읽기 일관성보다 짧은 쓰기 및 강력하게 일관된 읽기 지연 시간을 우선시합니다.
-
다중 리전 고가용성 전략은 0보다 큰 RPO를 허용할 수 있습니다.
다중 리전 강력한 일관성(미리 보기)
참고
다중 리전 강력한 일관성(MRSC)을 미리 보기에서 사용할 수 있으며 변경될 수 있습니다.
MRSC 글로벌 테이블 복제본의 항목에 대한 변경 사항은 강력하게 일관된 읽기를 사용하여 글로벌 테이블의 다른 복제본 테이블에서 즉시 읽을 수 있습니다. 즉, ConsistentRead
파라미터가 true
(강력하게 일관된 읽기)로 설정된 읽기 작업은 어떤 복제본 테이블에서든 항상 항목의 최신 버전을 반환합니다.
쓰기 작업이 다른 리전에서 이미 수정 중인 항목을 수정하는 경우 해당 쓰기 작업은 ReplicatedWriteConflictException
에서 실패합니다. ReplicatedWriteConflictException
으로 실패한 쓰기는 재시도할 수 있으며, 충돌하는 업데이트가 해결되고 충돌하는 다른 업데이트가 진행 중이지 않은 경우 성공합니다.
MRSC 글로벌 테이블은 MREC 글로벌 테이블에 비해 쓰기 및 강력하게 일관된 읽기 지연 시간이 높습니다.
다음과 같은 경우 MRSC 모드를 사용해야 합니다.
-
다중 리전 범위의 강력하게 일관된 읽기 보증이 필요합니다.
-
짧은 쓰기 지연 시간보다 글로벌 읽기 일관성을 우선시합니다.
-
다중 리전 고가용성 전략에 0의 RPO가 필요합니다.
MRSC 미리 보기의 리전 가용성
MRSC 미리 보기는 다음 AWS 리전에서 사용 가능합니다.
-
미국 동부(버지니아 북부) - us-east-1
-
미국 동부(오하이오) - us-east-2
-
미국 서부(오레곤) - us-west-2
MRSC 미리 보기 고려 사항
MRSC에서 글로벌 테이블을 사용하는 경우 미리 보기에 다음 고려 사항이 적용됩니다.
워크로드 고려 사항
-
MRSC가 있는 글로벌 테이블은 미리 보기에서만 사용할 수 있습니다. 프로덕션 워크로드에 사용해서는 안 됩니다.
-
MRSC 테이블의 성능 및 처리량 특성은 미리 보기가 진행되는 중에 변경될 수 있습니다.
기능 지원
-
미리 보기에는 Amazon 소유 키만 지원됩니다.
-
AWS 관리형 키는 미리 보기에서 지원되지 않습니다.
-
고객 관리형 키는 미리 보기에서 지원되지 않습니다.
-
리소스 기반 정책은 리전 간 복제를 중단하는 데 사용할 수 없습니다.
-
CloudWatch Contributor Insights 정보는 미리 보기에서 MRSC 글로벌 테이블에 대한 작업이 발생한 리전에 대해서만 보고됩니다.
-
미리 보기의 MRSC 글로벌 테이블에는 Time to Live(TTL)가 지원되지 않습니다.
-
미리 보기의 MRSC 글로벌 테이블에는 로컬 보조 인덱스(LSI)가 지원되지 않습니다.
-
트랜잭션 API는 미리 보기에서 지원되지 않습니다.
MREC 글로벌 테이블과의 동작 차이
-
MRSC 미리 보기는 제한된 리전 세트에서 사용할 수 있습니다.
-
MRSC 글로벌 테이블에는 정확히 세 개의 복제본 테이블이 포함되어야 합니다.
-
데이터가 포함되지 않은 기존 단일 리전 테이블에 복제본 테이블 2개를 추가하여 MRSC 글로벌 테이블을 만들어야 합니다.
-
MRSC 글로벌 테이블에서 단일 복제본 테이블을 삭제할 수 없습니다. MRSC 글로벌 테이블을 삭제하려면 단일 작업으로 복제본 테이블 2개를 삭제하여 단일 리전 테이블로 만들어야 합니다. 그런 다음 나머지 단일 리전 테이블을 삭제할 수 있습니다.
-
초기 채우기 기간 이후에 글로벌 보조 인덱스 키 위반이 발생할 수 있습니다.
할당량
-
AWS 계정에는 MRSC를 사용하는 최대 3개의 글로벌 테이블이 있을 수 있습니다.
-
프로비저닝된 용량 모드에서 쓰기 처리량은 복제된 쓰기 용량 단위(rWCU) 10,000개로 제한됩니다.
-
프로비저닝된 용량 모드에서 읽기 처리량은 읽기 용량 단위(RCU) 10,000개로 제한됩니다.
-
온디맨드 용량 모드에서 쓰기 처리량은 복제된 쓰기 요청 단위(rWRU) 10,000개로 제한됩니다.
-
온디맨드 용량 모드에서 읽기 처리량은 읽기 요청 단위(RRU) 10,000개로 제한됩니다.