사용자 리전에 쓰기 모드(혼합 기본) - AWS 규범적 지침

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

사용자 리전에 쓰기 모드(혼합 기본)

리전에 쓰기 모드에서는 서로 다른 데이터 서브셋을 여러 홈 리전에 할당하고 홈 리전을 통해서만 항목에 쓰기 작업을 수행할 수 있습니다. 이 모드는 액티브-패시브이지만 아이템에 따라 액티브 리전을 할당합니다. 모든 리전은 중복되지 않는 자체 데이터세트의 기본 리전이므로 적절한 지역성을 보장하려면 쓰기 작업을 보호해야 합니다.

이 모드는 각 사용자와 관련된 데이터를 해당 사용자와 가까운 네트워크에 배치할 수 있기 때문에 쓰기 작업 지연 시간이 짧다는 점을 제외하면 한 지역에 쓰기 모드와 유사합니다. 또한 주변 인프라가 지역 간에 더 균등하게 분산되고 모든 리전이 인프라의 일부가 이미 활성화되어 있기 때문에 장애 조치 시나리오 중에 인프라를 구축하는 데 드는 작업이 줄어듭니다.

혼합 기본 쓰기 모드

다음과 같은 여러 가지 방법으로 아이템의 홈 지역을 결정할 수 있습니다.

  • 내재적: 특수 속성이나 파티션 키에 내장된 값과 같은 데이터의 일부 측면을 통해 홈 리전이 명확해집니다. 이 기법은 Amazon DynamoDB 글로벌 테이블의 항목에 대한 홈 리전을 설정하기 위한 리전 고정 사용 블로그 게시물에 설명되어 있습니다.

  • 협상됨: 각 데이터세트의 홈 리전은 할당을 유지 관리하는 별도의 글로벌 서비스와 같은 외부 방식으로 협상됩니다. 배정 기간이 한정될 수 있으며 그 이후에는 재협상 대상이 될 수 있습니다.

  • 테이블 기반: 하나의 복제 글로벌 테이블을 만드는 대신 리전을 복제하는 것과 동일한 수의 글로벌 테이블을 생성합니다. 각 테이블의 이름은 해당 테이블의 홈 리전을 나타냅니다. 표준 운영에서는 모든 데이터를 홈 리전에 쓰고 다른 리전들은 읽기 전용 사본을 유지합니다. 페일오버 중에는 다른 리전이 해당 테이블에 대한 쓰기 작업을 일시적으로 채택합니다.

예를 들어 게임 회사에서 일하고 있다고 가정해 봅시다. 전 세계 모든 게이머에게 지연 시간이 짧은 읽기 및 쓰기 작업이 필요합니다. 각 게이머에게 가장 가까운 지역에 배정합니다. 해당 지역은 모든 읽기 및 쓰기 작업을 대신하여 강력한 read-after-write 일관성을 보장합니다. 하지만 게이머가 여행을 떠나거나 홈 지역에 정전이 발생한 경우 대체 리전에서 전체 데이터 사본을 사용할 수 있으며 게이머를 다른 홈 리전에 배정할 수 있습니다.

또 다른 예로, 여러분이 화상 회의 회사에서 일하고 있다고 가정해 봅시다. 각 컨퍼런스 콜의 메타데이터는 특정 지역에 할당됩니다. 발신자는 가장 가까운 지역을 사용하여 지연 시간을 최소화할 수 있습니다. 지역 장애가 발생한 경우 글로벌 테이블을 사용하면 시스템에서 호출 처리를 복제된 데이터 사본이 이미 있는 다른 지역으로 이동할 수 있으므로 빠른 복구가 가능합니다.