

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

# RDBMS 테이블 스키마 및 매핑
<a name="rdbms-schema"></a>

다음 다이어그램은 소스 RDBMS 스키마의 테이블과 관계를 보여줍니다.

 ![RDMS schema](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-rdbms-dynamodb/images/rdbms-table.png) 

이전 다이어그램에서 볼 수 있듯이 `production_apps` 테이블에는 `id` 및 `production_app_configs` 테이블과 one-to-many 관계가 있는 `production_app_properties` 및 `version` 열이 있습니다. 따라서 DynamoDB 설계에서는 다음 JSON 코드와 `production_app item`같이 `production_app_properties` 및 `production_app_configs` 테이블이 내에 포함됩니다. `production_app_properties` 및는 여러 값을 가질 `production_app_configs` 수 있으므로 이러한 테이블은 JSON 코드에 배열로 추가됩니다. `changed_apps` 및 `test_apps` 테이블도 유사하게 매핑됩니다.

 ![Mapping from RDMS schema to DynamoDB](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-rdbms-dynamodb/images/table-mapping.png) 

## 단일 테이블 설계
<a name="single-tables"></a>

DynamoDB는 관계를 유지하지 않으며 고정 테이블 스키마를 지원합니다. 따라서 항목 유형을 식별하는 속성()을 사용하여 여러 유형의 항목(예: SQL 테이블`ItemType`)을 단일 DynamoDB 테이블에 저장할 수 있습니다.

DynamoDB에서 파티션 키(PK)와 정렬 키(SK)의 조합은 고유해야 하므로 이러한 키는 항목 유형에 따라 다릅니다.

 ![Single table design in DynamoDB](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-rdbms-dynamodb/images/single-table-design.png) 

## 글로벌 보조 인덱스
<a name="gsi"></a>

인덱스는 데이터를 더 빠르게 검색하고 애플리케이션 성능을 개선하는 데 도움이 됩니다. 샘플 애플리케이션의 경우 다음 인덱스가 생성되었습니다. PKs와 SKs는 고유 항목을 식별할 수 있는 방법에 따라 선택되었습니다.


****  

| **인덱스 이름** | **설명** | **파티션 키(PK)** | **정렬 키(SK)** | **Projected\_Attributes** | 
| --- | --- | --- | --- | --- | 
| Version-index | 지정된에 대한 모든 프로덕션 애플리케이션을 가져옵니다version. | version |  | id, name | 
| Release-index | 지정된에 대한 모든 테스트 애플리케이션을 가져옵니다release-id. | release-id |  | id, name | 
| Change-index | 와 연결된 모든 (변경된) 애플리케이션을 가져옵니다change-id. | change-id |  | id, modified-by, date | 