본문 바로가기
서버/SAA-C03

[SAA-C03] AWS Neptune

by jamong1014 2024. 5. 25.
반응형

사례

한 소셜 미디어 회사의 개발 팀에서 “사용자 A의 친구가 올린 동영상의 좋아요 개수는 몇 개인가?”와 같은 복잡한 쿼리를 처리하려고 합니다.

솔루션 아키텍트의 관점에서 위와 같은 사례를 처리하기에 가장 적절한 AWS 데이터베이스 서비스는 다음 중 무엇입니까?

 

본론

Amazon Neptune

Amazon Neptune은 긴밀히 연결된 데이터셋들을 이용하는 애플리케이션을 쉽게 구축하고 실행할 수 있게 해주며 완벽히 관리되는 빠르고 안정적인 그래프 데이터베이스 서비스이다. Amazon Neptune의 핵심은 목적에 맞게 구축된 고성능 그래프 데이터베이스 엔진으로서 수십억 개의 관계를 저장하고 밀리 초 단위의 레이턴시로 그래프를 쿼리할 수 있게 최적화되어 있다. Neptune은 추천 엔진, 사기 탐지, 지식 그래프, 약품 발견, 네트워크 보안 등 그래프 활용 사례에 힘을 더해줌.

 

Amazon Neptune은 읽기 전용 레플리카(read replicas), PITR(Point-In-Time Recovery), Amazon S3에 대한 연속적인 백업, 가용 영역 간 복제 등 가용성이 높다. Neptune은 HTTPS 암호화 클라이언트 연결 및 저장 중 암호화(encryption at rest)를 지원하여 매우 안전하다.

 

Neptune은 완벽히 관리되므로 하드웨어 프로비저닝, 소프트웨어 패칭, 설정, 구성, 백업 등의 데이터베이스 관리 작업을 더 이상 걱정할 필요가 없다.

Amazon Neptune은 많은 양의 사용자 프로필 세트와 상호작용을 빠르게 쉽게 처리하여 소셜 네트워킹 애플리케이션을 구축할 수 있다. Neptune을 사용하면 빠른 처리 속도의 고도화된 대화형 방식 그래프 쿼리를 사용하여 소셜 기능을 애플리케이션에 추가할 수 있다.

 

예를 들어 여러분이 애플리케이션에 공급되는 소셜 피드를 구축한다면 Neptune을 사용하여 가족의 최신 업데이트, ‘좋아요’를 한 친구들의 업데이트, 가까이 있는 친구들의 최신 업데이트를 보여주는 우선순위화된 결과를 제공할 수 있다.

 

Neptune을 사용한 소셜 네트워킹 예
Neptune을 사용한 아이덴티티 그래프 예


Amazon ElasticSearch - Elasticsearch는 Lucene 라이브러리를 기반으로 하는 검색 엔진이다.

Amazon Elasticsearch 서비스는 간단하게 다양한 스케일의 Elasticsearch를 경제적으로 배포, 확보, 실행할 수 있게 해주는 완벽히 관리되는 서비스이다.

 

원하는 스케일로 선호하는 툴을 이용하여 애플리케이션을 구축하고 모니터링하며 문제를 해결할 수 있다. 이 서비스는 오픈소스 Elasticsearch API, 매니지드 Kibana, Logstash 및 기타 AWS 서비스와의 통합, 내장형 경보, SQL 쿼리를 지원.

.

Amazon Redshift - Amazon Redshift는 대규모 데이터셋 저장 및 분석을 위해 제작된 완벽히 관리되는 페타바이트 스케일 클라우드 기반 데이터 웨어하우스 제품이다. 제공된 활용 사례는 데이터 웨어하우싱에 관한 것이 아니므로 이 선택지는 정답이 아니다.

 

Amazon Aurora - Amazon Aurora는 클라우드를 위해 제작된 MySQL 및 PostgreSQL 호환 관계형 데이터베이스로서 기존의 엔터프라이즈 데이터베이스의 성능 및 가용성과 오픈소스 데이터베이스의 단순성과 경제성을 결합한 것

Amazon Aurora는 데이터베이스 인스턴스당 최대 64TB까지 자동으로 스케일링되는 분산식, 고장내성, 자가치유 스토리지 시스템이다.

Aurora는 인메모리 데이터베이스가 아님. 여기서는 긴밀히 연결된 데이터셋과 쿼리로 인해 그래프 데이터베이스가 필요하므로 Neptune이 적합하다.

반응형