마이크로서비스 아키텍처로 만들어진 현대 애플리케이션에서는 관계형 데이터베이스 이외에도 각 마이크로서비스의 특징에 맞는 데이터베이스를 사용하는 것은 중요합니다. 오픈소스 데이터베이스들은 서로 닮아가며 진화하고 있기에 내 서비스에 적합한 데이터베이스를 선택하는 것은 여전히 어려운 과제입니다. 이 세션에서는 다양한 워크로드에 따른 적합한 오픈소스 데이터베이스를 알아보고, 이와 매핑되는 AWS 매니지드 데이터베이스 서비스를 함께 소개합니다.
5. 다양한 문제를 해결하기 위해 그 어느 때보다 많은 데이터베이스가 새롭게 등장
관계형과 NoSQL 데이터베이스
https://db-engines.com
6. 기업들은 왜 오픈소스 데이터베이스에 주목하는가?
오픈소스 데이터베이스
https://db-engines.com
7. 모던 애플리케이션
사용자 100만 이상
데이터 양 테라바이트 ~ 엑사바이트
성능 1/1000 초 ~ 1/1,000,000 초
요청 량 초당 수백만
접근 다양한 디바이스
확장규모 무제한
지불 방식 사용한 만큼
개발자 접근 관리형 API
SNS
물류 음악
게임 VR
8. 인터넷 스케일의 모던 어플리케이션
Amazon DynamoDB는 Alexa, Amazon.com
사이트 및 모든 Amazon 물류 처리 센터를
포함하여 트래픽이 많은 Amazon 시설과
시스템을 여러 개 지원합니다. Prime Day가
진행되는 66시간 동안 이 소스들을 통해
DynamoDB API로 16조 4,000억 건의 호출이
전송되었고 최대 초당 8,010만 개의 요청을
처리했습니다.
https://aws.amazon.com/ko/blogs/korea/amazon-prime-day-2020-powered-by-aws/
10. DevOps
DevOps팀 서비스 배포 파이프라인
build test release monitor
build test release monitor
build test release monitor
build test release monitor
build test release monitor
build test release monitor
14. 현실 같은 가상의 상황
”사장님 저희 서비스에서 사용하는
데이터베이스 종류가 5개가 넘고..
DevOps라서 개발도 하고 운영도 하는데... 이
데이터베이스들을 언제 배워서
전문가가 될 수 있죠?”
“운영 중에 데이터 유실이라도 되면
어떻게 복구하죠?”
“그동안 즐거웠습니다 사장님..”
“시장에서도 5개 데이터베이스를
모두 잘하는 엔지니어를 찾기가 어렵던데..
그렇다고 우리가 데이터베이스 별로
전문가를 뽑을 수도 없고..”
“음.. 자네의 능력에 한계를 두지 말게!”
16. 목적에 맞는 데이터베이스들
Relational Key value Document In memory Graph Time series Ledger Wide column
Amazon
Aurora
Amazon
RDS
Amazon
DynamoDB
Amazon
DocumentDB
Amazon
ElastiCache
Amazon
Neptune
Amazon
Timestream
Amazon
QLDB
Amazon
Keyspaces
17. 클라우드를 위해 구축된 MySQL 및 PostgreSQL 호환 관계형 데이터베이스 서비스
Amazon Aurora
표준 MySQL보다 5배,
표준 PostgreSQL보다 3배
빠른 성능
15개의 읽기 전용
복제본으로 확장 가능
01
성능 및 확장성
내결함성을 갖춘 자가 복구
분산 스토리지
3개의 가용영역에 걸친 6개의
복사본
Amazon S3로의 지속적인 백업
02
가용성 및 내구성
AmazonVPC를통한
네트워크격리
저장및전송중데이터
암호화
03
뛰어난 보안
하드웨어 프로비저닝,
소프트웨어 패치, 설정, 구성,
백업과 같은 데이터베이스 관리
작업에 대해 걱정할 필요 없음
04
완전 관리형
19. Aurora PostgreSQL를 위한 Babelfish
SQL Server 애플리케이션의 코드 수정을 최소화하여 PostgreSQL에서 수행
기존 쿼리 유지 마이그레이션 가속화 혁신을 위한 자유
번역 계층은 MicrosoftSQLServer의
T-SQL을 AuroraPostgreSQL가
이해할 수 있도록 함
위험을 줄이고 마이그레이션을 더
빠르게 완료하여 수개월에서
수년의 시간을 절약
새로운 오픈소스 기능과 함께
T-SQL 코드를 함께 실행하며
친숙한 도구들과 개발을 지속
T-SQL
PREVIEW
NEW
20. Amazon DynamoDB
어떤 규모에서든 빠르고 유연한 NoSQL 데이터베이스 서비스
큰 규모를 지원하는 성능 관리할 서버 없음 엔터프라이즈 보안 글로벌 복제
어떤 규모에서도 일관되게
수 밀리 초 미만의 응답 시간
제공, 거의 무제한의 처리량
필요한 애플리케이션 구축
가능
서버 프로비저닝, 소프트웨어
패치 적용 및 관리 불필요,
용량에 맞게 테이블 자동
확장/축소하여 성능 유지,
지속적인 데이터 백업
모든 데이터 암호화
(기본 사항),
강력한 보안을 위해 AWS
IAM과 완벽하게 통합
여러 AWS 리전으로
테이블을 쉽게 복제(Global
Table)하여
빠르게 액세스 가능한
글로벌 애플리케이션 구축
21. 빠르고 확장 가능하며 가용성이 뛰어난 MongoDB 호환 데이터베이스 서비스
Amazon DocumentDB(MongoDB 호환)
밀리 초 단위의 지연시간 및 초당 수백만
건의 요청 처리 가능
MongoDB호환 가능 완전관리형
보안 및 규정 준수 대규모 성능 AWS의 다른 서비스와의 통합
22. Amazon ElastiCache
Redis 또는 Memcached와 호환되는 완전관리형 인 메모리 데이터 스토어
확장성 일관된 고성능 완전관리형
샤딩 및 복제를 통해 읽기/쓰기
확장성 보장
밀리 초 단위의 응답시간을 위한 인
메모리 데이터 스토어 및 캐시
AWS가모든하드웨어와소프트웨어
설치,설정,모니터링을관리
23. Amazon Neptune
클라우드용으로 구축된 빠르고 안정적인 그래프 데이터베이스
오픈 뛰어난 성능 가용성 및 내구성 쉬운 사용
PropertyGraph와W3C의
RDF그래프모델지원
응답시간에 수십억 개의
관계 쿼리를 밀리 초
단위로 처리
백업과 복구를 지원하며
3개의 가용 영역에 6개의
사본으로 복제됨
Gremlin과SPARQL로쉽게
강력한쿼리를실행
24. Amazon Timestream
확장이 용이한 고속 서버리스 시계열 데이터베이스
관계형 데이터베이스 대비
최대 10배 저렴하고
1,000배 빠르게
수조 건의 데일리
이벤트를 저장/분석
시계열 분석 서버리스
초당 수백만 개의 데이터를
수집할 수 있는 속도
(10M/second)
적응형 쿼리 처리 엔진은
데이터를 더 간단하고
빠르게 분석
분석에 필요한 함수
기본 탑재(interpolation,
smoothing, and approximation)
서버 프로비저닝, 소프트웨어
패치, 설정, 구성의 자동화
자동으로 확장 또는 축소되면서
용량 및 성능을 조절
25. Amazon QLDB(Quantum Ledger Database)
투명하고 변화 불가능하며 암호화 방식으로 검증 가능한 트랜잭션 로그를 제공하는
완전관리형 원장 데이터베이스
변경 불가능 및 투명성 암호화 방식으로 검증 가능 뛰어난 성능 및 확장성 사용 편의성
추가 전용 저널,
변경 기록에 대한 간편한
액세스
모든 변경 내역은 암호로
체이닝 되어 있고 검증
가능
확장성이 뛰어나며 일반적인
블록체인 프레임워크에서
원장보다 2-3배 더 많은
트랜잭션 실행 가능
SQL과비슷한API에서
익숙한SQL연산자를이용,
데이터조회및변경가능
26. Amazon Keyspaces(Apache Cassandra 호환)
고가용성의 확장 가능한 관리형 Apache Cassandra 호환 데이터베이스 서비스
ApacheCassandra와 호환 서버 관리 불필요 큰 규모를 지원하는 성능 높은 가용성 및 보안
Cassandra와동일한드라이버
및개발자도구사용
서버를 프로비저닝, 패치
또는 관리할 필요 없음
테이블이 자동으로 확장 및
축소하며 사실상 무제한의
처리량과 스토리지
AWS리전내에서99.99%의
SLA를제공하며데이터는
기본적으로암호화되고IAM과
통합하여사용이가능
Apache
Cassandra
28. SNS 예제 아키텍처
사용자
AWS Cloud
Amazon Elastic Container Service
사용자 추천
검색 랭킹
Amazon Neptune
Amazon ElastiCache
for Redis
Amazon Elasticsearch Service
Amazon DynamoDB
Amazon S3
사진/영상
“우리 서비스는 1억명 이상의 사용자가
무제한으로 사진과 동영상을 업로드하고,
오랜 시간을 서비스에서 보낼 수 있도록
다양한 친구와 관심사를 추천해주고,
사람,사진,영상을 빠르게 검색하고,
실시간으로 Hot한 스타 랭킹을 공개해주면
좋겠어요.”
29. 중고차 매매 서비스 예제 아키텍처
차량정보 가격트렌드
회원정보 이력관리
Amazon DocumentDB
Amazon Timestream
Amazon QLDB
Amazon Aurora
Amazon S3
AWS Cloud
Amazon Elastic Container Service
사용자
“우리 서비스는 세상 모든 종류 자동차의
카탈로그를 저장하고,
출고부터 현재까지 매매/보험 이력 정보를
제공하고,
모델 별 매매 가격 트렌드를 볼 수 있고,
회원제로 운영되면 좋겠어요.”