Aurora란?

2026. 7. 1. 14:06·Data Engineering/AWS

1. Aurora란?

storage.googleapis.com/dpgexyfmyrbece/what-is-amazon-aurora-vs-rds.html
 

클라우드 환경에서 데이터베이스를 운영할 때는 성능뿐만 아니라 장애 대응, 확장성, 운영 편의성도 함께 고려해야 합니다.

Amazon Aurora는 AWS에서 제공하는 완전 관리형(Relational Database) 데이터베이스 서비스로, MySQL과 PostgreSQL을 기반으로 개발되었습니다.

 

기존 MySQL이나 PostgreSQL과 높은 호환성을 제공하면서도 AWS가 스토리지 구조를 새롭게 설계하여 더 높은 성능과 가용성을 제공합니다. 따라서 기존 애플리케이션을 큰 수정 없이 이전하면서도 성능과 운영 효율을 함께 얻을 수 있습니다.


2. Aurora의 구조

 
https://aws.amazon.com/ko/blogs/database/improve-application-availability-on-amazon-aurora
 
 
Aurora는 일반적인 데이터베이스와 달리 컴퓨팅(인스턴스) 과 스토리지가 분리되어 있습니다.
 
Writer Instance
  • INSERT, UPDATE, DELETE와 같은 쓰기 작업을 수행하는 Primary 인스턴스

Reader Instance

  • SELECT 조회 작업을 처리하여 읽기 부하를 분산

Shared Storage

  • Writer와 Reader가 하나의 공유 스토리지를 함께 사용

데이터는 자동으로 3개의 Availability Zone(AZ)에 6개의 복사본으로 저장되어 높은 내구성과 가용성을 제공합니다.


3. Aurora를 왜 사용할까?

일반 RDS도 대부분의 서비스에서 충분히 사용할 수 있지만, 트래픽이 증가하거나 장애에 빠르게 대응해야 하는 서비스에서는 더 높은 성능과 가용성이 필요합니다.

 

Aurora는 단순히 성능이 좋은 데이터베이스가 아니라, 확장성·가용성·운영 편의성을 함께 개선한 AWS의 고성능 관계형 데이터베이스 엔진입니다.


일반 RDS에서 고민되는 점 Aurora의 해결 방법
데이터가 증가하면 스토리지 관리가 필요 스토리지 자동 확장
장애 발생 시 복구 시간이 중요 3AZ 6Copy 저장 및 빠른 Failover
조회 요청이 많아짐 Reader Instance로 읽기 부하 분산
서버 장애로 인한 데이터 손실 우려 자동 복제 및 Self Healing
운영 작업이 많음 백업, 패치, 복구 등을 AWS가 자동 관리

3-1) Aurora가 적합한 서비스

  • 쇼핑몰과 같이 주문이 지속적으로 발생하는 서비스
  • 금융 서비스처럼 높은 가용성이 필요한 시스템
  • 조회 요청이 많은 웹 서비스
  • 데이터가 지속적으로 증가하는 서비스
  • 장애 발생 시 빠른 복구가 필요한 시스템

4. Aurora의 주요 특징

기능 설명
스토리지 자동 확장 데이터가 증가하면 스토리지가 자동으로 확장되어 용량을 미리 크게 설정할 필요가 없습니다.
3AZ 6Copy 저장 데이터를 3개의 AZ에 6개의 복사본으로 저장하여 장애 발생 시에도 안정적으로 데이터를 보호합니다.
자동 복제 데이터 변경 사항이 공유 스토리지에 자동으로 반영되며 별도의 복제 구성을 직접 관리할 필요가 없습니다.
Self Healing 스토리지 오류를 자동으로 감지하고 정상 복사본을 이용해 데이터를 복구합니다.
Writer / Reader 구조 하나의 Writer Instance가 쓰기 작업을 담당하고 여러 Reader Instance가 조회 작업을 처리합니다.
Writer / Reader Endpoint 읽기와 쓰기용 Endpoint를 별도로 제공하여 애플리케이션에서 쉽게 역할을 분리할 수 있습니다.
로드 밸런싱 Reader Endpoint로 들어온 조회 요청을 여러 Reader Instance에 자동으로 분산합니다.

5. Aurora가 빠른 이유

https://aws.amazon.com/ko/blogs/industries/amazon-aurora-for-core-banking-systems

Aurora는 단순히 높은 사양의 서버를 사용하는 것이 아니라 내부 구조를 최적화하여 성능을 향상시켰습니다.

5-1) 로그 중심의 저장 구조

  • Aurora는 변경 사항을 효율적으로 처리하도록 설계되어 불필요한 디스크 I/O를 줄이고 빠른 데이터 처리를 지원합니다.

5-2) 공유 스토리지

  • Writer와 Reader가 동일한 스토리지를 사용하므로 별도의 데이터 복사 과정이 최소화됩니다.

5-3) 읽기 확장

  • Reader Instance를 여러 개 추가하여 조회 요청을 분산 처리할 수 있습니다.

5-4) 자동 로드 밸런싱

  • Reader Endpoint를 이용하면 읽기 요청이 여러 Reader로 자동 분산되어 조회 성능을 높일 수 있습니다.

6. Aurora와 일반 RDS 비교

항목 Aurora 일반 RDS
데이터베이스 MySQL, PostgreSQL 호환 MySQL, PostgreSQL, MariaDB 등
스토리지 공유 스토리지 인스턴스별 스토리지
읽기 확장 Reader Instance Read Replica
스토리지 확장 자동 확장 수동 또는 제한적
장애 복구 매우 빠름 Multi-AZ 구성 필요
Endpoint Writer / Reader 분리 일반 Endpoint 사용

7. Aurora의 장단점

구분 장점 단점
성능 높은 읽기·쓰기 성능을 제공 최대 성능을 위해서는 적절한 인스턴스 선택이 필요
가용성 3AZ 6Copy 구조와 빠른 Failover 지원 단일 AZ 환경에서는 장점이 크게 드러나지 않을 수 있음
확장성 Reader 추가와 스토리지 자동 확장이 가능 쓰기 작업은 하나의 Writer Instance에서 수행
운영 백업, 패치, 장애 복구를 AWS가 자동 관리 세부 설정을 직접 제어하기 어려운 부분이 있음
비용 운영 부담을 줄일 수 있음 일반 RDS보다 비용이 높은 편

8. Aurora Serverless

Aurora Serverless 

  • 데이터베이스 워크로드에 맞춰 컴퓨팅 및 메모리 용량을 자동으로 확장(Scale-up) 및 축소(Scale-down)하는 온디맨드 방식
https://www.modb.pro/db/52005
 

Aurora는 항상 동일한 규모로 운영할 필요는 없습니다. 개발 환경이나 테스트 환경처럼 사용량이 일정하지 않은 경우에는 Aurora Serverless를 사용할 수 있습니다.

 

주요 특징

  • 사용량에 따라 컴퓨팅 리소스 자동 확장 및 축소
  • 서버 용량을 직접 관리할 필요 없음
  • 사용량이 적은 환경에서 비용 절감 효과
  • 트래픽 변화에 유연하게 대응 가능

9. 마치며

이번 글을 작성하며 Aurora는 단순히 성능이 좋은 데이터베이스가 아니라, 스토리지 구조 자체를 새롭게 설계해 가용성과 운영 효율을 높인 데이터베이스 엔진이라는 점을 이해할 수 있었습니다.

 

특히 스토리지 자동 확장, 3AZ 6Copy 저장, Self Healing, Writer·Reader 구조와 같은 기능은 데이터베이스를 안정적으로 운영하기 위한 요소들이 어떻게 구현되는지 이해하는 데 도움이 되었습니다.

 

또한 Aurora가 일반 RDS와 같은 관리형 서비스에 속하면서도 내부 구조는 크게 다르다는 점을 알게 되었고, 서비스의 규모와 요구사항에 따라 일반 RDS와 Aurora를 적절히 선택하는 것이 중요하다는 점도 배울 수 있었습니다.

 

'Data Engineering > AWS' 카테고리의 다른 글

Amazon Redshift란?  (0) 2026.07.02
Amazon DocumentDB란?  (0) 2026.07.01
Amazon RDS란? ACID, Lock, Deadlock까지 알아보기  (0) 2026.06.30
DynamoDB Streams란? Lambda와 함께 실시간 이벤트 처리하기  (0) 2026.06.30
Amazon DynamoDB Accelerator(DAX)란?| DynamoDB 조회 성능을 높이는 방법  (0) 2026.06.30
'Data Engineering/AWS' 카테고리의 다른 글
  • Amazon Redshift란?
  • Amazon DocumentDB란?
  • Amazon RDS란? ACID, Lock, Deadlock까지 알아보기
  • DynamoDB Streams란? Lambda와 함께 실시간 이벤트 처리하기
jjaehyeok
jjaehyeok
jjaehyeok 님의 블로그 입니다.
  • jjaehyeok
    jjaehyeok 님의 블로그
    jjaehyeok
  • 전체
    오늘
    어제
    • 분류 전체보기 (108)
      • Navisafe (15)
        • Infrastructure (13)
        • Data Pipeline (0)
        • Trouble shooting (2)
      • Data Engineering (56)
        • Airflow (11)
        • Kafka (3)
        • Spark (0)
        • ELK (2)
        • Kubernetes (7)
        • AWS (33)
        • Flink (0)
      • CodingTest (31)
        • 문제 풀이(Lv1~Lv2) (21)
        • 문제 풀이(Lv3) (10)
        • SQL (0)
      • 알고리즘 정리 (3)
        • 자료구조 (스택, 큐, 해시) (3)
        • 정렬 & 그리디 (0)
        • DFS & BFS (0)
        • 이분탐색 (0)
        • DP (0)
      • 자격증 (1)
        • CKAD (1)
        • DEA-C01 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    eks
    k8s
    datatransfer
    RDS
    AWS
    trouble shooting
    EC2
    ECR
    datasync
    Kafka
    CKAD
    Redshift
    DynamoDB
    Glue
    S3
    elk
    Airflow
    DEA-C01
    batch
    documentdb
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
jjaehyeok
Aurora란?
상단으로

티스토리툴바