PERF 4: 데이터베이스 솔루션 선택 방법
시스템에 대한 최적의 데이터베이스 솔루션은 가용성, 일관성, 파티션 허용 오차, 지연 시간, 내구성, 확장성, 쿼리 기능에 대한 요구 사항에 따라 다릅니다. 여러 시스템은 다양한 하위 시스템에 대해 서로 다른 데이터베이스 솔루션을 사용하고 다양한 기능을 활성화하여 성능을 개선할 수 있습니다. 시스템에 대해 잘못된 데이터베이스 솔루션 및 기능을 선택하면 성능 효율성이 저하될 수 있습니다.
리소스
AWS purpose-built databases (DAT209-L)
Amazon Aurora storage demystified: How it all works (DAT309-R)
Amazon DynamoDB deep dive: Advanced design patterns (DAT403-R1)
Cloud Databases with AWS
AWS Database Caching
Amazon DynamoDB Accelerator
Amazon Aurora best practices
Amazon Redshift performance
Amazon Athena top 10 performance tips
Amazon Redshift Spectrum best practices
Amazon DynamoDB best practices
모범 사례:
-
데이터 특성 파악:: 워크로드에 포함된 데이터의 다양한 특성을 파악합니다. 예를 들어 워크로드에 트랜잭션이 필요한지 여부, 워크로드가 데이터와 상호 작용하는 방식, 성능 요구 사항 등을 확인할 수 있습니다. 이 데이터를 사용하여 가장 우수한 성능을 제공하는 워크로드용 데이터베이스 방식(예: 관계형 데이터베이스, NoSQL 키-값, 문서, 와이드 열, 그래프, 시계열 또는 인메모리 스토리지)을 선택합니다.
-
사용 가능한 옵션 평가: 워크로드 스토리지 메커니즘 선택 프로세스의 일환으로 사용 가능한 서비스 및 스토리지 옵션을 평가합니다. 데이터 저장용으로 지정된 서비스나 시스템을 사용하는 방법과 시기를 파악합니다. 또한 프로비저닝된 IOPS, 메모리/컴퓨팅 리소스 및 캐싱 등 데이터베이스 성능이나 효율성을 최적화하는 데 사용할 수 있는 구성 옵션을 확인합니다.
-
데이터베이스 성능 지표 수집 및 기록: 데이터베이스 성능과 관련된 성능 측정값을 기록하는 도구, 라이브러리 및 시스템을 사용합니다. 예를 들어 초당 트랜잭션 수, 속도가 느린 쿼리 또는 데이터베이스 액세스 시에 발생하는 시스템 지연 시간을 측정할 수 있습니다. 이 데이터를 사용하면 데이터베이스 시스템의 성능을 파악할 수 있습니다.
-
액세스 패턴을 기준으로 데이터 스토리지 선택: 워크로드의 액세스 패턴을 기준으로 하여 사용할 서비스와 기술을 결정합니다. 예를 들어 트랜잭션에 필요한 워크로드에는 관계형 데이터베이스를 활용하거나, 처리량은 더 높지만 최종 처리량은 일정한 키-값 저장소(해당하는 경우)를 활용합니다.
-
액세스 패턴 및 지표를 기준으로 데이터 스토리지 최적화: 성능을 최대한 높이려면 데이터 저장 또는 쿼리 방식을 최적화하는 성능 특성과 액세스 패턴을 사용합니다. 인덱싱, 키 분산, 데이터 웨어하우스 설계, 캐싱 전략 등의 최적화가 시스템 성능이나 전반적인 효율성에 미치는 영향을 측정합니다.
개선 계획
데이터 특성 파악:
사용 가능한 옵션 평가
데이터베이스 성능 지표 수집 및 기록
액세스 패턴을 기준으로 데이터 스토리지 선택
액세스 패턴 및 지표를 기준으로 데이터 스토리지 최적화