GlobalTableNotFoundException
TL;DR — DescribeGlobalTable / UpdateGlobalTable 버전 2017.11.29(레거시) 전역 테이블만 참조하세요. 사용해야 하는 버전 2019.11.21(현재)을 기반으로 구축된 글로벌 테이블은 DescribeTable / UpdateTable까지 _레플리카가 있는 일반 테이블_로 관리되며 레거시 API에서는 존재하지 않는 것으로 보고합니다. 테이블이 없어졌다고 가정하기 전에 현재 사용 중인 버전을 확인하세요.
무엇을 의미하는가
GlobalTableNotFoundException: The specified global table does not exist.
# what the engine actually returns, reproduced against the live DynamoDB service:
GlobalTableNotFoundException: Global table not found: Global table with name: 'no-such-global-table' does not exist.DynamoDB에는 두 개의 분리된 API 표면이 있는 두 개의 전역 테이블 세대가 있습니다. 레거시(2017.11.29) 세대는 DescribeGlobalTable, UpdateGlobalTable 및 UpdateGlobalTableSettings가 작동하는 명명된 "전역 테이블" 개체를 등록합니다. 현재(2019.11.21) 세대에는 그러한 객체가 없습니다. 복제본은 테이블 자체에 존재합니다. 따라서 테이블이 완벽하게 복제되더라도 해당 레거시 호출은 이 예외로 응답합니다.
왜 발생하는가
- 테이블은 현재 버전(2019.11.21) 전역 테이블입니다 — 단연 일반적인 원인은 레거시 API가 이를 인덱싱하지 않는다는 것입니다.
- 해당 이름으로 생성된 전역 테이블이 없습니다 — 테이블이 존재하지만 복제본이 없거나 이전에 복제 설정이 실패했습니다.
- 잘못된 지역 또는 이름 오타 — 레거시 전역 테이블 등록은 정확한 이름으로 조회됩니다.
어떻게 해결하는가
버전 확인:
aws dynamodb describe-table --table-name orders \ --query 'Table.GlobalTableVersion' # "2019.11.21" → use DescribeTable/UpdateTable, not the legacy APIsUpdateTable을 통해 현재 버전 복제본을 관리합니다.aws dynamodb update-table --table-name orders \ --replica-updates '[{"Create": {"RegionName": "eu-west-1"}}]'describe-global-table
대신describe-table(Replicas` 필드)로 검사합니다.레거시 도구 사용? 2017.11.29 전역 테이블을 실제로 운영하는 경우 등록의 이름과 리전을 확인하고 유연성과 복제 쓰기 비용 절감을 위해 AWS에서 권장하는 2019.11.21로의 업그레이드를 계획하십시오.
처음부터 생성: 테이블을 생성한 다음
UpdateTable를 통해 복제본을 추가합니다. 새 코드에서는CreateGlobalTable(레거시)에 접근하지 마세요.호출할 때마다 지역을 확인하세요. 레거시 전역 테이블 API는 지역 범위입니다.
us-east-1에 존재하는 이름은eu-west-1에서 확인되지 않을 수 있습니다.
DynoTable에서 크기 확인
DynoTable은 하나의 창에서 모든 지역에 연결됩니다. ⌘P로 전환하고 각 프로필에서 동일한 테이블 이름을 열어 복제본이 존재하는지 확인하고 데이터를 제공합니다. 테이블 사이드바에는 레거시 전역 테이블 API를 호출하지 않고 복제 메타데이터가 표시됩니다.
복제본을 추가하기 전에 pricing calculator을 사용하여 복제 쓰기 비용을 추정합니다. UpdateTable 복제본 업데이트를 실행하기 전에 설정 → 프로필에서 각 지역을 구성하고 연결 테스트를 실행하세요. Connect to AWS 및 Install을 참조하세요. 레거시 툴링이 DescribeGlobalTable을 호출하는 경우 DescribeTable에서 GlobalTableVersion를 먼저 확인하십시오. — 현재 버전 테이블은 2019.11.21을 반환하고 UpdateTable를 통해 관리되어야 합니다. 레거시 API는 복제가 정상인 경우에도 이를 볼 수 없습니다. CreateGlobalTable 대신 현재 버전 테이블에 대해 ReplicaUpdates로 UpdateTable을 호출하도록 도구를 업그레이드합니다.
출처
- DynamoDB global tables versions (2026-07-13 인증)
- UpdateTable — Amazon DynamoDB API Reference (2026-07-13 확인)
관련 오류
- Global table version mismatch — 동일한 2세대 분할, 업그레이드 경로에서 히트.
- ReplicaNotFoundException — 지역이 복제 그룹의 일부가 아닙니다.
- ReplicaAlreadyExistsException — 해당 지역이 이미 있습니다.
- 학습: DynamoDB global tables
참고 자료
- UpdateGlobalTable — Amazon DynamoDB API Reference
- DynamoDB global tables versions (determining the version) — Amazon DynamoDB Developer Guide
- UpdateTable — Amazon DynamoDB API Reference
- CreateGlobalTable — Amazon DynamoDB API Reference
위에 링크된 공식 AWS 문서를 기준으로 2026년 7월 13일에 마지막으로 확인되었습니다.