참고 자료
DynamoDB
AWS에서 제공하는 매우 빠르고 확장 가능한 완전 관리형 클라우드 NoSQL 데이터 베이스
* NoSQL: RDB의 데이터 일관성 제약 일부 완화, 수평적으로 확장 가능한 성능, 스키마 없는 데이터 모델에 최적화. 몇 가지 방법으로 데이터를 효율적으로 쿼리할 수 있으나, 그 외에는 쿼리 비용이 높고 속도가 느림
* Read 방식
* Eventually Consistent Read: 기본, 최근 완료된 쓰기 작업의 결과가 반영되지 않을 수도 있음
* Strongly Consistent Read: 가장 최신 데이터로 응답, 네트워크 지연 또는 중단 발생 시, 사용이 어려움
* 과금 방식
* 스토리지 요금
* 읽기/쓰기 용량 유닛 요금
* 1읽기 용량 유닛 = 초당 최대 2건의 읽기 작업 제공
* 1쓰기 용량 유닛 = 초당 최대 1건의 쓰기 작업 제공
(프리티어: 매월 25GB 스토리지 및 읽기/쓰기 용량 유닛이 각 25개씩 제공)
DynamoDB 기본 구성
Table
Attribute1 | Attribute2 | |
Item1 | Value | Value |
Item2 | Value | Value |
Table: Item의 집합
Item: Attribute의 집합
Attribute: Key(문자열)-Value 방식의 데이터
DynamoDB 데이터 타입
* 스칼라 데이터 형식: 하나의 값만 표현
* Number: 양수, 음수 또는 0
* String: 문자열
* Binary: 압축 텍스트
* Boolean: true/false
* Null: null
* 문서 형식: 내포 속성이 있는 복잡한 구조를 표현
* List: 순서가 지정된 값 모음
* Map: 정렬되지 않은 이름-값 쌍의 모음
* 다중 값 형식: 여러 스칼라 값을 표현
* String Set, Number Set, Binary Set
DynamoDB 파티션
DynamoDB가 데이터를 저장하는 곳
* Primary Key
* Table 내에서 각 Item을 구분하는 고유 식별자
* 단순 기본 키: 파티션 키만 사용 / 복합 기본 키: 파티션 키와 정렬 키를 함께 사용
* Partition Key
* 데이터가 저장되어 있는 파티션을 결정하기 위한 키
* 내부 해시 함수에 대한 입력으로 파티션 키 값을 사용
* 출력에 따라 항목을 저장할 파티션이 결정됨
* Sort Key
* 파티션 키가 동일한 모든 항목들을 정렬하는 키 값
보조 인덱스
* Local Secondary Index: 테이블과 파티션 키는 동일하지만 정렬 키는 다른 인덱스
* 테이블 당 최대 5개
* 파티션 키와 다른 정렬 키를 사용해서 테이블 내에 아이템을 찾을 수 있음
* 예: 테이블의 파티션 키: Name, 정렬 키: Subject -> LSI: 파티션 키: Name, 정렬 키: Score
* Global Secondary Index: 파티션 키 및 정렬 키가 테이블의 파티션 키 및 정렬 키와 다를 수 있는 인덱스
* 테이블 당 최대 20개
* 다른 값으로 파티션을 나눌 수 있고, 해당하는 파티션 내에서 아이템들을 정렬할 수 있음
* 예: 테이블의 파티션 키: Name, 정렬 키: Subject -> GSI: 파티션 키: Subject , 정렬 키: Score
DynamoDB 데이터 조회 방식
* Query: 기본 키 값을 기반으로 항목을 찾는 방식
* Scan: 테이블 또는 보조 인덱스의 모든 항목을 읽어와서 필터링하는 방식
* Query 방식은 학번을 곧바로 부르는 방식, Scan은 한 명씩 불러 학번이 일치하는지 확인하는 방식으로 데이터를 조회할 때는 되도록이면 Query를 사용하는 것이 좋음
DynamoDB 테이블 생성
1. 테이블 생성 클릭
2. 테이블 이름, 파티션 키, 정렬 키 입력, 테이블 설정 선택
* 보조 인덱스 생성 시, 설정 사용자 지정 선택
3. 테이블 생성 클릭
DynamoDB 데이터 입력
1. 작업 - Create Item
* 새 속성 추가를 통해 값 입력
2. 항목 생성 클릭
DynamoDB 데이터 조회
1. 표 항목 탐색 클릭
2. 쿼리 선택 - 테이블 또는 인덱스 선택 - 파티션 키 입력 후 실행 클릭
3. 스캔 선택 - 필터 클릭 - 속성 이름, 유형, 조건, 값 입력 후 실행 클릭
* Query 방식은 학번을 곧바로 부르는 방식, Scan은 한 명씩 불러 학번이 일치하는지 확인하는 방식으로 데이터를 조회할 때는 되도록이면 Query를 사용하는 것이 좋음
DynamoDB 테이블 삭제
1. 테이블 선택 후 삭제 클릭
'PlayGround > AWS 연습' 카테고리의 다른 글
[AWS] AWS SDK, CLI (1) | 2025.04.10 |
---|---|
[AWS] Lambda (0) | 2025.04.09 |
[AWS] CloudFront (0) | 2025.04.07 |
[AWS] S3 (1) | 2025.04.06 |
[AWS] CloudWatch (1) | 2025.03.31 |