DynamoDB란 무엇입니까?

Q: Amazon DynamoDB란 무엇입니까?

DynamoDB는 모든 규모에서 빠르고 유연한 비관계형 데이터베이스입니다. DynamoDB를 통해 고객은 분산 데이터베이스를 운영하고 AWS로 확장하는 데 따른 관리 부담에서 벗어날 수 있으며, 하드웨어 프로비저닝, 설정 및 구성, 처리 능력 계획, 복제, 소프트웨어 패치 또는 클러스터 확장에 대해서도 걱정할 필요가 없습니다.

Q: DynamoDB가 사용자 대신 무엇을 관리합니까?

DynamoDB를 사용하면 데이터베이스 소프트웨어의 관리와 이를 실행할 하드웨어의 프로비저닝이라는 데이터베이스 확장의 주요 장애물 하나를 제거할 수 있습니다. 비관계형 데이터베이스를 단 몇 분 만에 배포할 수 있습니다. DynamoDB는 워크로드 수요에 맞춰 자동으로 처리 능력을 확장하며 테이블 크기가 증가함에 따라 데이터를 파티셔닝 및 재파티셔닝합니다. 또한, DynamoDB가 AWS 리전의 세 개 시설에 데이터를 동기적으로 복제하여 높은 가용성과 데이터 안정성을 제공합니다.

Q: DynamoDB의 일관성 모델은 무엇입니까?

DynamoDB에서 데이터를 읽을 때, 사용자는 읽기를 최종적 일관된 읽기나 강력한 일관된 읽기로 지정할 수 있습니다.

  • 최종적 일관된 읽기(기본값) – 최종 일관성 옵션은 읽기 처리량을 최대화합니다. 그러나 최종적 일관된 읽기는 최근 완료한 쓰기 결과를 반영하지 못할 수 있습니다. 모든 데이터 사본은 일반적으로 1초 내에 일관성을 가지게 됩니다. 짧은 시간 이후 읽기를 반복하여 갱신한 데이터를 반환해야 합니다.
  • 강력한 일관된 읽기 – DynamoDB는 최종 일관성 외에도 애플리케이션 또는 애플리케이션의 요소에서 요구하는 경우 강력한 일관된 읽기를 요청할 수 있는 유연성과 제어도 제공합니다. 강력한 일관된 읽기는 읽기 전에 성공적인 응답을 수신한 모든 쓰기를 반영한 결과를 반환합니다.

시작하기

Q: DynamoDB는 어떤 종류의 쿼리 기능을 지원합니까?

DynamoDB에서는 사용자가 정의한 기본 키를 사용하여 GET/PUT 작업을 지원합니다. 기본 키는 테이블 항목에 필요한 유일한 속성입니다.. 사용자가 표를 생성할 때 기본 키를 명시하며, 이 기본 키가 각 항목을 고유하게 식별합니다. 또한, DynamoDB는 글로벌 보조 인덱스로컬 보조 인덱스를 사용하여 기본이 아닌 키 속성을 쿼리할 수 있어 유연한 쿼리 기능을 이용할 수 있습니다.

기본 키는 단일 속성 파티션 키 또는 복합 파티션-정렬 키 중 하나가 될 수 있습니다. 예를 들어 단일 속성 파티션 키는 UserID가 될 수 있습니다. 이러한 단일 속성 파티션 키를 사용하면 해당 사용자 ID와 관련된 항목의 데이터를 빠르게 읽고 쓸 수 있습니다.

DynamoDB는 복합 파티션-정렬 키를 파티션 키 요소 및 정렬 키 요소로 인덱싱합니다. 이 멀티-파트 키를 통해 첫 번째와 두 번째 요소 값 사이의 계층 구조가 유지됩니다. 예를 들어, 복합 파티션-정렬 키는 UserID(파티션)와 Timestamp(정렬)의 조합이 될 수 있습니다. 파티션 키 요소를 일정하게 유지함으로써 정렬 키 요소를 검색하여 항목을 찾을 수 있습니다. 예를 들어, Query API를 사용하여 일정 범위의 timestamp에 걸쳐 단일 UserID에 대한 모든 항목을 검색할 수 있습니다.

Q: DynamoDB에서 어떻게 데이터 항목을 업데이트하고 쿼리합니까?

DynamoDB 콘솔 또는 CreateTable API를 사용하여 테이블을 만든 후 PutItem 또는 BatchWriteItem API를 사용하여 항목을 삽입할 수 있습니다. 그런 다음, GetItem 또는 BatchGetItem를 사용하거나 테이블에서 복합 기본 키가 활성화되어 사용되고 있는 경우에는 Query API를 사용하여 테이블에 추가한 항목을 검색할 수 있습니다.

Q: DynamoDB는 어떤 운영 체제에서 실행되는 애플리케이션에서나 사용할 수 있습니까?

예. DynamoDB는 API를 통해 액세스하는 완전관리형 클라우드 서비스입니다. 어떤 운영 체제(Linux, Windows, iOS, Android, Solaris, AIX, HP-UX 등)에서 실행되는 애플리케이션이든 DynamoDB를 사용할 수 있습니다. DynamoDB는 AWS SDK를 사용해 시작하는 것이 좋습니다.

계획

Q: DynamoDB의 사용료는 어떻게 청구됩니까?

각 DynamoDB 테이블에는 프로비저닝된 읽기 처리량과 쓰기 처리량이 지정되어 있습니다. 프리 티어를 초과하는 경우 그 처리 능력에 1시간 단위로 요금이 부과됩니다. 테이블로 요청을 전송했는지 여부와 관계없이 처리 능력에 대해 시간당 요금이 부과됩니다. 테이블의 프로비저닝된 처리 능력을 변경하려면 AWS Management Console이나 Auto Scaling용 UpdateTable API 또는 PutScalingPolicy API를 사용하면 됩니다. 또한 DynamoDB에서 데이터 스토리지 요금과 함께 표준 인터넷 데이터 전송 요금이 부과됩니다.

DynamoDB 요금에 대한 자세한 내용은 DynamoDB 요금 페이지를 참조하십시오.

Q: 단일 DynamoDB 테이블에 프로비저닝할 수 있는 최대 처리량은 얼마입니까?

DynamoDB는 제한 없이 확장되도록 설계되었습니다. 하지만 개별 테이블에 대해 10,000개의 쓰기 용량 유닛 또는 10,000개의 읽기 용량 유닛의 처리 비율을 초과하기 원한다면 먼저 Amazon에 문의을 주십시오. 또한, 하나의 가입 계정에서 20,000개 이상의 쓰기 용량 유닛 또는 20,000개 이상의 읽기 용량 유닛을 프로비저닝하는 경우에도 먼저 AWS에 연락하여 한도 증가를 요청해 주십시오.

Q: 단일 DynamoDB 테이블에 프로비저닝할 수 있는 최소 처리량은 얼마입니까?

Auto Scaling과 수동 처리량 프로비저닝 모두 요청할 수 있는 프로비저닝된 처리량의 최소 크기는 1개의 쓰기 용량 유닛과 1개의 읽기 용량 유닛입니다. 이러한 프로비저닝은 25개의 쓰기 용량 유닛과 25개의 읽기 용량 유닛을 허용하는 프리 티어 범위 내에서 이루어집니다. 프리 티어는 테이블 수준이 아닌 계정 수준에 적용됩니다. 즉, 전체 테이블의 프로비저닝 용량을 합산하여 전체 용량이 25개의 쓰기 용량 유닛, 25개의 읽기 용량 유닛을 초과하지 않으면 프로비저닝 용량이 프리 티어 적용 범위에 속하게 됩니다.

작동 방식

Q: 데이터 모델 및 API

데이터 모델과 API에 관한 자세한 내용은 Amazon DynamoDB: 작동 방식을 참조하십시오.

Q: 확장성, 가용성 및 내구성

확장성, 가용성 및 내구성에 관한 정보는 Amazon DynamoDB 제품 세부 정보 섹션을 참조하십시오.

Q: Auto Scaling

DynamoDB Auto Scaling에 관한 정보는 DynamoDB Auto Scaling을 활용한 처리 능력 자동 관리 섹션을 참조하십시오.

Q: 보안 및 제어

DynamoDB 보안 및 제어에 관한 정보는 Amazon DynamoDB의 인증 및 액세스 제어 섹션을 참조하십시오.

웹 페이지 이미지
요금 페이지로 이동하기

Amazon DynamoDB 요금을 확인하십시오.

자세히 알아보기 
계정 가입 이미지
무료 계정에 가입

AWS 프리 티어에 즉시 액세스할 수 있습니다. 

가입하기 
Toolbox 이미지
콘솔에서 구축 시작

AWS Management Console에서 Amazon DynamoDB를 사용하여 구축을 시작하십시오.

로그인