Cloud/AWS

Amazon DynamoDB

NelchuPapa 2025. 6. 5. 16:15
반응형

Amazon DynamoDB란?

Amazon DynamoDB는 AWS에서 제공하는 완전 관리형 서버리스 NoSQL 데이터베이스 서비스입니다.

쉽게 말해, 인프라나 서버를 직접 관리할 필요 없이 바로 사용할 수 있는 데이터베이스.

빠르고, 확장성 높고, 관리 걱정 없는 서버리스 데이터베이스

 


테이블, 항목, 속성 – 데이터 저장의 기본

DynamoDB에서는 데이터를 "테이블"이라는 단위에 저장합니다.

테이블은 데이터를 저장하고 쿼리 하는 공간이며, 각각의 데이터는 "항목(아이템)"과 "속성(필드)"으로 구성됩니다.

  • 항목(아이템): 한 줄의 데이터(예: 한 명의 사용자 정보)
  • 속성(필드): 각 항목이 가지는 데이터 값(예: 이름, 이메일 등)

특징적으로, 테이블에 항목이 1개든 2백만 개든 DynamoDB가 자동으로 스토리지를 관리해 줍니다.

따라서 데이터가 많아져도 별도의 확장이나 조정이 필요 없습니다.


고가용성 & 데이터 중복 저장

DynamoDB는 여러 가용 영역(Availability Zone)과 여러 드라이브에 데이터를 자동으로 중복 저장합니다.

덕분에 서버 장애나 데이터 손실 걱정 없이 안정적으로 데이터를 운영할 수 있습니다.

 

 

NoSQL과 유연한 데이터 구조

DynamoDB는 전통적인 관계형 데이터베이스(RDB)와 다르게

  • 고정된 스키마가 필요 없음.
  • 테이블의 각 항목마다 속성을 자유롭게 추가/삭제할 수 있음.
  • SQL 대신 자체 쿼리 방식을 사용하며, 파티션 키 기반의 단순한 쿼리가 가능.

이런 유연성 덕분에 데이터 구조가 자주 바뀌거나, 빠르게 접근해야 하는 데이터에 매우 적합합니다.

 


DynamoDB의 한계와 적합한 사용 사례

  • 복잡한 SQL 쿼리나 여러 테이블을 조인하는 작업에는 적합하지 않습니다.
  • 단일 테이블 내에서 빠르고 유연하게 데이터를 저장/조회하는 데 최적화되어 있습니다.

 

DynamoDB 총정리

  • 완전 관리형
  • 고가용성
  • 뛰어난 확장성
  • 밀리초 단위의 빠른 응답 속도
  • 높은 확장성

 

RDS와 DynamoDB 차이점

간단하게 각각의 특징을 위주로 차이점을 비교해 볼 수 있다. RDS에 대한 자세한 글은 아래 링크 페이지로 확인할 수 있습니다.

  • Amazon RDS(관계형 데이터베이스)
    • 자동 고가용성, 복구 기능 제공
    • 데이터, 스키마, 네트워크 제어 가능
    • 복잡한 관계형 조인과 비즈니스 분석에 적합
    • 예시: 판매/공급망 관리 등 복잡한 데이터 분석이 필요한 경우에 선택
  • Amazon DynamoDB(NoSQL 데이터베이스)
    • 고급 스키마 없이 키-밸류 구조
    • 버튼 하나로 글로벌 확장 가능, 페타바이트급 확장성
    • 빠른 처리, 세분화된 API 액세스
    • 예시: 직원 연락처 목록 등 단순한 룩업 테이블, 복잡한 조인이 필요 없는 경우 최적

 

결론적으로 어떤 데이터베이스가 최적인지는 사용 사례에 따라 다르다. 복잡한 관계형 데이터 분석에는 RDS가 적합하며, 단순하고 빠른 데이터 처리, 확장성 중시한다면 DynamoDB가 맞을 수 있다.

 

 

 

Amazon RDS 👇👇👇

https://daebong-monk.tistory.com/entry/Amazone-RDS

 

Amazone RDS

AWS RDS와 관계형 데이터베이스현대의 많은 서비스는 단순한 데이터 저장을 넘어 데이터 간의 관계를 추적하고 활용하는 기능을 필요로 합니다. 예를 들어, 커피숍에서 고객이 특정 음료를 반복

daebong-monk.tistory.com

 

 

 

 

 

반응형