기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
고급 매핑 기능 사용
DynamoDB Enhanced Client 의 고급 테이블 스키마 기능에 대해 알아봅니다API.
테이블 스키마 유형 이해
TableSchema
는 DynamoDB Enhanced Client 의 매핑 기능에 대한 인터페이스입니다API. 의 맵에서 데이터 객체를 매핑할 수 있습니다AttributeValuesTableSchema
객체는 매핑하려는 테이블의 구조를 알아야 합니다. 이 구조 정보는 TableMetadata
향상된 클라이언트API에는 다음과 같은 몇 가지 의 구현TableSchema
이 있습니다.
주석이 달린 클래스에서 생성된 테이블 스키마
주석이 달린 클래스로 TableSchema
를 빌드하는 작업은 비용이 다소 많이 들기 때문에 애플리케이션을 시작할 때 한 번 수행하는 것이 좋습니다.
-
BeanTableSchema
-
이 구현은 Bean 클래스의 속성 및 주석을 기반으로 빌드됩니다. 이 접근 방식의 예제는 시작하기 단원에 나와 있습니다.
참고
BeanTableSchema
가 예상대로 작동하지 않는 경우software.amazon.awssdk.enhanced.dynamodb.beans
에 대한 디버그 로깅을 활성화하세요. - ImmutableTableSchema
-
이 구현은 변경할 수 없는 데이터 클래스를 기반으로 구축되었습니다. 이 접근은 변경할 수 없는 데이터 클래스로 작업 단원에서 설명합니다.
빌더로 생성된 테이블 스키마
다음 TableSchema
은 빌더를 사용하여 코드로 빌드됩니다. 이 접근 방식은 주석이 달린 데이터 클래스를 사용하는 접근 방식보다 비용이 저렴합니다. 빌더 접근 방식은 주석 사용을 피하고 JavaBean 이름 지정 표준을 요구하지 않습니다.
- StaticTableSchema
-
이 구현은 변경 가능한 데이터 클래스용으로 구축되었습니다. 이 가이드의 시작하기 단원에서는 빌더를 사용하여 StaticTableSchema를 생성하는 방법을 보여 주었습니다.
- StaticImmutableTableSchema
-
StaticTableSchema
를 빌드하는 방법과 마찬가지로 변경할 수 없는 데이터 클래스와 함께 사용할 빌더를 사용하여 이러한 유형의 TableSchema
구현을 생성합니다.
고정 스키마가 없는 데이터에 대한 테이블 스키마
- DocumentTableSchema
-
TableSchema
의 다른 구현과 달리DocumentTableSchema
인스턴스의 속성은 정의하지 않습니다. 일반적으로 기본 키와 특성 변환기 공급자만 지정합니다.EnhancedDocument
인스턴스는 개별 요소 또는 JSON 문자열에서 빌드하는 속성을 제공합니다.