[DynamoDB] 핵심 구성 요소
by 뚜부니
DynamoDB 테이블에서 항목 및 속성은 작업 시 필요한 핵심 구성 요소이다. 테이블은 항목 집합이고, 각 항목은 속성의 집합이다. DynamoDB는 기본 키를 사용하여 테이블의 각 항목을 고유하게 식별하고 보조 인덱스를 사용하여 보다 유연하게 쿼리를 작성할 수 있도록 도와준다.
DynamoDB는 크기 제한이 있다. 이에 대한 내용은 아래 링크에 접속하여 내용을 확인하면 된다.
1. 테이블, 항목 및 속성
DynamoDB의 기본 구성 요소는 다음과 같다.
Element | Description |
테이블 | 데이터(항목) 집합. 다른 DB 시스템과 마찬가지로 데이터를 테이블에 저장. |
항목 | 각 테이블에는 0개 이상의 항목 존재. 각 항목은 하나 이상의 속성 집합. |
속성 | 기본적인 데이터 요소로 더 이상 나뉠 필요가 없는 것. |
왼쪽 그림에 대해 설명하면,
People
이라는 하나의 테이블에 총 3개의 항목이 들어가 있고 각 항목은 PersonID
라는 기본키(Primary Key)를 통해 구분된다.
첫 번째 항목은 PersonID, LastName, FirstName, Phone이라는 속성을 가지며, 두 번째 항목은 PersonID, LastName, FirstName, Address라는 속성을 가지는 것으로 보아 각 항목의 속성은 다르게 구성할 수 있음을 알 수 있다.
Address를 보면 하위에 속성이 있는 것을 확인 할 수 있는데 이를 **내포 속성**
이라고 한다. 다시 말해, 내포 속성은 Depth를 가지고 있는 속성이고 DynamoDB는 32 Depth까지 지원한다.
2. 기본 키
기본 키는 테이블의 각 항목을 나타내는 고유 식별자로, 테이블을 생성할 때 지정해야 한다.
DynamoDB는 두 가지의 기본 키를 지원한다.
Key | Description |
Partition Key (파티션키) | Partition Key(파티션키)로 알려진 하나의 속성으로 구성되는 단순 기본 키. |
Partition key and sort key (파티션키 및 정렬키) | Composite Primary Key(복합 기본키)로 지칭되며, 파티션키와 정렬키라는 두 개의 속성으로 구성됨. |
3. 보조 인덱스
테이블에서 하나 이상의 보조 인덱스를 생성할 수 있다. 보조 인덱스는 기본 키에 대한 쿼리는 물론 대체 키를 사용하여 테이블의 데이터에 대한 쿼리까지 실행할 수 있다. 보조 인덱스를 생성한 후 인덱스를 통해 데이터를 읽을 수 있으며, 인덱스의 종류는 두 가지이다.
Index | Description |
Global Secondary Index | 기본키(파티션키+정렬키)가 테이블의 기본키와 다를 수 있는 인덱스 |
Local Secondary Index | 테이블의 파티션키와 동일하지만 정렬키는 다른 인덱스 |
4. DynamoDB 스트림
DynamoDB 스트림은 DynamoDB 테이블의 데이터 수정 이벤트를 캡처하는 선택적 기능이다. 각 이벤트는 스트림 레코드에 의해 나타나고, 스트림을 설정하면 다음 이벤트마다 스트림 레코드를 기록한다.
- 항목 추가 : 모든 속성을 포함하여 전체 항목의 이미지 캡처
- 항목 업데이트 : 항목에서 수정된 속성의 이전 및 이후 이미지 캡처
- 항목 삭제 : 삭제하기 전 전체 항목의 이미지 캡처
스트림에 대한 추가적인 내용은 아래 링크에 접속하면 확인할 수 있다.
🔗Reference
👉 Amazon DynamoDB의 핵심 구성 요소
👉 Dynamo DB 공식 문서 정리 1편 - 핵심 구성 요소
'DB > DynamoDB' 카테고리의 다른 글
[DynamoDB] Java와 DynamoDB 시작하기 (0) | 2021.02.03 |
---|---|
[DynamoDB] 웹 서비스 설정 (0) | 2021.01.31 |
[DynamoDB] 이름 지정 규칙 및 데이터 형식 (0) | 2021.01.30 |
[DynamoDB] DynamoDB API (0) | 2021.01.29 |
블로그의 정보
개발하는 두부
뚜부니