반응형

참고 자료

📖 소플의 처음 만난 AWS

 

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