AWS 데이터베이스

모든 애플리케이션 요구에 맞춰 특별히 구축된 데이터베이스

클라우드 덕분에 스토리지 및 컴퓨팅 비용이 지속적으로 하락함에 따라 새로운 세대의 애플리케이션이 등장하여 데이터베이스에 대한 새로운 요구 사항들이 제기되고 있습니다. 이러한 애플리케이션은 데이터베이스를 테라바이트에서 페타바이트 규모로 저장하고, 밀리초 단위 지연 시간으로 데이터에 액세스하고, 초당 수백만 건의 요청을 처리하고, 전 세계적으로 수백만 명의 사용자를 지원하도록 확장할 수 있어야 합니다. 이러한 요구 사항을 지원하려면 애플리케이션의 특정 요구를 처리하도록 특별히 구축된 관계형 및 비관계형 데이터베이스가 모두 필요합니다. AWS에서는 특정 애플리케이션 사용 사례에 맞출 수 있도록 특별히 구축된 매우 다양한 데이터베이스를 제공합니다. 

AWS 완전관리형 데이터베이스 서비스에는 트랜잭션 애플리케이션을 위한 관계형 데이터베이스, 인터넷 규모의 애플리케이션을 위한 비관계형 데이터베이스, 분석을 위한 데이터 웨어하우스, 캐싱 및 실시간 워크로드를 위한 인 메모리 데이터 스토어, 상호연결성이 높은 데이터가 있는 애플리케이션 구축을 위한 그래프 데이터베이스, 시간에 따른 변화를 측정하기 위한 시계열 데이터베이스, 완전하고 검증 가능한 트랜잭션 레코드를 유지 관리하기 위한 원장 데이터베이스가 있습니다. 기존 데이터베이스를 AWS로 마이그레이션하려고 검토 중이라면, AWS Database Migration Service를 사용해 쉽고 비용 효율적으로 마이그레이션하십시오.

AWS의 특별히 구축된 데이터베이스

데이터베이스 서비스

Relational Databases
관계형

관계형 데이터베이스는 미리 정의된 스키마와 데이터 간의 관계로 데이터를 저장하며, ACID 트랜잭션 지원, 참조 무결성 유지, 데이터 일관성을 위해 설계됩니다.

용도: 기존 애플리케이션, ERP, CRM, 전자 상거래.

In-Memory Databases
인 메모리

인 메모리 데이터베이스는 데이터에 실시간으로 액세스해야 하는 애플리케이션에 사용됩니다. 이러한 데이터베이스는 데이터를 메모리에 직접 저장하여 밀리초 지연 시간으로 충분하지 않은 경우에 마이크로초 지연 시간을 제공합니다.

용도: 캐싱, 게임 순위표, 실시간 분석.

LD
원장

원장 데이터베이스는 확장 가능하고 완전하며 암호로 검증 가능한 트랜잭션 레코드를 유지 관리하기 위해 신뢰할 수 있는 중앙 기관이 필요한 경우에 사용됩니다.

용도: 레코드 시스템, 공급망, 등록, 은행 거래.

Key-Value Databases
키-값

키-값 데이터베이스는 키-값 페어를 대량으로 밀리초 단위로 저장 및 검색하는 데 최적화되어 있으며, 관계형 데이터베이스의 규모 제한 및 성능 오버헤드가 없습니다.

용도: 인터넷 규모의 애플리케이션, 실시간 입찰, 장바구니, 고객 선호도.

AWS 제품

 
Graph Databases
그래프

그래프 데이터베이스는 수백만 명의 사용자가 밀리초 지연 시간으로 상호 연결성이 높은 그래프 데이터 세트 간의 관계를 쿼리 및 탐색할 수 있어야 하는 애플리케이션에 사용됩니다.

사용 대상: 부정 탐지, 소셜 네트워킹 및 추천 엔진

AWS 제품:

 
 
Document Databases
문서

문서 데이터베이스는 반구조화된 데이터를 개발자가 직관적으로 사용할 수 있는 문서로 저장하도록 설계되었습니다. 이러한 데이터는 일반적으로 가독 가능한 문서로 표시되기 때문입니다.

용도: 콘텐츠 관리, 개인화, 모바일 애플리케이션.

TS
시계열

시계열 데이터베이스는 시간에 따라 변화하는 엄청난 양의 데이터(시계열 데이터라고 함)를 수집 및 종합하고 통찰력을 도출하는 데 사용됩니다.

용도: IoT 애플리케이션, DevOps, 산업 원격 측정.

AWS 제품:

 
 

왜 AWS 데이터베이스를 사용해야 합니까?

수십 만의 고객은 클라우드 데이터베이스 서비스를 위해 구축된 AWS의 데이터베이스를 사용합니다. 이전 가드 데이터베이스 제품보다 경제적이고 보다 안정적이며, 관리하기 쉽고 뛰어난 성능과 확장성을 지원하기 때문입니다.

특별히 구축된 데이터베이스

AWS의 특별히 구축된 데이터베이스 포트폴리오는 다양한 데이터 모델을 지원하며, 사용 사례에 기반하고 확장성이 뛰어난 분산 애플리케이션을 구축할 수 있도록 합니다. 특정 문제나 문제군을 해결하기 위한 최상의 데이터베이스를 선택하여 하나로 모든 요구를 처리하려는 제한적인 데이터베이스에서 탈피하여 고객 비즈니스 요구에 적합한 애플리케이션을 구축하는 데 초점을 맞춥니다.

확장성

AWS 데이터베이스를 사용하면 소규모로 시작하여 애플리케이션의 성장에 따라 규모를 확장할 수 있습니다. 대부분의 경우 가동을 중단하지 않고 마우스 클릭 몇 번 또는 한 번의 API 호출만으로도 데이터베이스의 컴퓨팅 및 스토리지 리소스를 확장할 수 있습니다. 특별히 구축된 데이터베이스는 필요한 데이터 모델에 최적화되어 있기 때문에, 획일적인 범용 데이터베이스를 사용하여 구축했을 때보다 애플리케이션을 더 잘 확장하고 실행할 수 있습니다.

완전관리형 또는 서버리스

AWS 데이터베이스를 사용하면 서버 프로비저닝, 패치, 설정, 구성, 백업 또는 복구와 같은 데이터베이스 관리 작업에 대해 걱정할 필요가 없습니다. 워크로드가 계속 실행될 수 있도록 AWS에서 클러스터를 지속적으로 모니터링하므로 사용자는 더 중요한 애플리케이션 개발에 집중할 수 있습니다.

엔터프라이즈급

AWS 데이터베이스는 뛰어난 가용성과 안정성을 제공하며 비즈니스에 중요한 엔터프라이즈 워크로드를 위해 구축되었습니다. Amazon VPC를 사용한 네트워크 격리, AWS Key Management Service(KMS)를 통해 사용자가 생성하고 제어하는 키를 사용한 저장 데이터 암호화, 전송 중 암호화를 비롯하여 데이터에 대한 다양한 수준의 보안을 제공합니다.

AWS 데이터베이스에 의존하는 수십만 명의 고객

21st Century Fox 8up logo
yelp 8up logo
Samsung 8up logo
Adobe 8up logo
Hilton 8up logo
McD 8up logo
Dow Jones 8up logo
Comcast 8up logo
lyft 8up logo
hulu 8up logo
Netflix 8up logo
intuit 8up logo
Autodesk 8up logo
Alexa 8up logo
Siemens 8up logo
ASU 8up logo

일반 사용 사례

실시간

게임 순위표, 앱 기반 차량 호출(라이드 헤일링), 소셜 미디어 메시징, 온라인 쇼핑 등의 실시간 애플리케이션 사용 사례에는 마이크로초 단위의 지연 시간과 높은 처리량이 필요합니다. 더 느린 디스크 기반 데이터베이스에 전적으로 의존하기보다는, 빠른 관리형 인 메모리 데이터 스토어 및 캐시에서 정보를 검색하여 실시간 애플리케이션 사용 사례의 성능을 개선할 수 있습니다. Amazon ElastiCache는 클라우드에서 인 메모리 데이터 스토어 및 캐시를 손쉽게 배포, 실행 및 확장할 수 있게 지원하는 Redis 또는 Memcached 호환 인 메모리 데이터 스토어 및 캐싱 서비스입니다.  Amazon ElastiCache는 오픈 소스 Redis 및 Memcached의 속도, 단순성 및 다목적성과 Amazon의 관리 효율성, 보안 및 확장성을 결합하여 가장 까다로운 실시간 애플리케이션을 지원합니다.

인 메모리 캐싱 예:

Real Time Applications - Caching
Tapjoy-logo
"Tapjoy의 모바일 애플리케이션 네트워크에는 스마트폰과 태블릿 장치로 9,000개 이상의 애플리케이션과 전 세계 2억 5천명 이상의 사용자가 액세스합니다. 우리는 모바일 애플리케이션과 관련된 실시간 통계와 메타데이터를 캐시화하여 더 빠른 액세스를 구현합니다. Amazon ElastiCache를 도입하면서 캐시 노드 장애 발생이 크게 줄었습니다. 캐시 클러스터의 작동 상태를 지속적으로 모니터링하여 장애가 발생한 노드를 자동으로 교체하기 때문입니다. Amazon ElastiCache의 뛰어난 관리 능력에 매우 만족하고 있으며, 처리량이 매우 높은 일부 미션 크리티컬 애플리케이션의 운용에도 사용하고 있습니다."

Tapjoy의 기술 부사장, Ryan Johns

인터넷 규모의 사용 사례

수백 테라바이트 이상의 데이터에 대한 초당 수백만 개의 요청을 처리하는 글로벌로 분산된 인터넷 규모의 애플리케이션을 구축합니다. 이 서비스는 예측 불가능한 트래픽 및 워크로드 변화에 따라 자동으로 확장 및 축소되므로, 사용한 리소스에 대한 요금만 지불하여 비용을 절약할 수 있습니다. 서버, 업그레이드 또는 패치를 유지 관리할 필요가 없으며, 애플리케이션은 자동으로 고가용성이 유지됩니다.

 

게임 애플리케이션 예:

Internet Scale Applications - Gaming
zynga_logo
"Zynga Poker에서는 관리에 내부 전담 리소스가 필요한 MySQL 팜을 완전관리형 서비스인 Amazon DynamoDB로 옮겼습니다. 그러자 운영 오버헤드가 극적으로 줄어들었으며... 별도로, Zynga Poker 데이터베이스 클러스터에서 대규모로 성능이 개선되면서 전에는 30초가 걸리던 쿼리가 이제는 1초로 줄었습니다. 이것이 가능한 이유는 아키텍처의 현대적 인스턴스 클래스를 이용한 것도 있지만, 무엇보다도 시스템에 대한 AWS의 지속적인 혁신 및 투자와 AWS에서 제공하는 일정한 할인을 활용했기 때문입니다.

Zynga의 최고 정보 책임자, Dorion Carroll

종합 관리형 오픈 소스 데이터베이스로 마이그레이션

모바일 및 웹 애플리케이션은 하루에 수백만 개의 읽기 및 쓰기 요청을 생성하여 MySQL, PostgreSQL 및 Redis 같은 인기 있는 오픈 소스 데이터베이스에 대한 성능 요구를 높입니다. 오픈 소스 데이터베이스를 Amazon RDS 및 Amazon ElastiCache와 같은 완전관리형 서비스로 이전하면 고유한 클러스터를 구축하고 관리할 필요가 없으므로 뛰어난 가용성과 성능을 보장하며 운영 오버헤드를 줄일 수 있습니다.

캐싱을 사용한 트랜잭션 데이터베이스 예:

Managed Open Source
Aurora_logo-talentbin-nb
"TalentBin by Monster는 MySQL의 운영 오버헤드 및 관리를 줄임으로써 개발팀이 혁신에 집중할 수 있도록 하기 위해 Aurora로 이전했습니다. Aurora는 복제 속도가 현저히 빠르므로, 다운스트림 애플리케이션에 전혀 영향을 주지 않고 대규모 쓰기 작업을 지원할 수 있었습니다. 또한, Aurora의 도구에서는 사용 및 수요 증가에 대비하여 추가 스토리지를 할당할 필요가 없으므로 가치는 올라가고 비용을 절감되었습니다. 우리 팀은 Aurora를 사용하면서 다양한 데이터베이스를 통합하여 데이터베이스 인스턴스 수를 약 40% 줄일 수 있었습니다. 그뿐만 아니라 자동 스냅샷과 특정 시점으로 복원을 통해 실질적인 운영 개선을 이룰 수 있었습니다. 이러한 모든 기능을 검토하면서 쉽게 Aurora로 마이그레이션을 결정하게 되었습니다."

TalentBin의 사이트 안정성 엔지니어, Travis Theune, Sr.

사례 연구

Airbnb

Airbnb는 데이터 볼륨과 빠른 조회에 대한 필요성 때문에 개인화된 검색을 지원할 수 있도록 DynamoDB를 사용하여 사용자 검색 기록을 저장하고, 더 빠른(1밀리초 미만) 사이트 렌더링을 위해 ElastiCache를 사용하여 세션 상태 인 메모리를 저장하며, RDS를 기본 트랜잭션 데이터베이스로 사용합니다.

자세히 알아보기 >>

Capital One

Capital OneRDS를 사용하여 상태 관리를 위한 트랜잭션 데이터를 저장하고, Redshift를 사용하여 집계가 필요한 분석용 웹 로그를 저장하며, 고객이 모바일 앱을 통해 빠르게 액세스할 수 있도록 DynamoDB를 사용하여 사용자 데이터를 저장합니다.

자세히 알아보기 >>

Johnson and Johnson

Johnson and Johnson은 데이터 수집 및 프로비저닝에 들어가는 시간과 노력을 최소화하고 빠르게 통찰력을 확보하기 위해 RDS, DynamoDBRedshift를 사용하고 있습니다. AWS 데이터베이스 서비스는 Johnson and Johnson이 의료 규정 준수 상태를 개선하고, 공급망을 최적화하고, 신약을 개발하도록 지원하고 있습니다.

자세히 알아보기 >>

Expedia

ExpediaAurora, RedshiftElastiCache를 사용하여 내부 시장 분석을 위해 숙소 시장 요금 및 가용성 데이터용 실시간 데이터 웨어하우스를 구축했습니다. 이 시스템에서는 대용량의 숙소 요금과 가용성 데이터를 처리하여 24시간 룩백 윈도우로 다중 스트림 통합 및 셀프 조인을 수행합니다. 

자세히 알아보기 >>

웹 사이트: 데이터베이스 마이그레이션
완전관리형 데이터베이스로 시간과 비용을 절약합니다.

고가용성과 안정성을 바탕으로 대규모로 실행되도록 데이터베이스를 관리하는 일은 시간과 비용이 많이 소비되는 어려운 일입니다. 조직이 데이터베이스를 AWS로 마이그레이션하는 방법과 무료로 시작하는 방법을 알아보십시오.

블로그: 특별히 구축된 데이터베이스
범용 데이터베이스가 누구에게나 적합한 것은 아닙니다.

Werner Vogels의 블로그에서는 특별히 구축된 데이터베이스의 등장과 향상된 기능, 성능 및 확장을 필요로 하는 현대적 애플리케이션 워크로드의 진화에 대해 다룹니다.

비디오: 특별히 구축된 데이터베이스
각 작업에 적절한 도구 선택

이 테크 톡에 참석하여 특정 애플리케이션 문제를 해결하기 위해 서로 다른 데이터베이스 서비스를 선택해야 하는 이유를 알아보고, 각 데이터베이스 서비스에 맞는 애플리케이션 사용 사례에 대한 데모를 시청하십시오.

자습서: 현대적 웹 앱 구축
서버리스 서비스-Fargate, Lambda 및 Python을 이용한 DynamoDB 사용

이 자습서에서는 AWS에 첫 현대적 애플리케이션을 구축합니다. 현대적 애플리케이션은 기본 인프라를 추상화하는 복원력이 뛰어나고 확장 가능한 독립적인 서비스 모음입니다.