Skip to main content
QUICK REVIEW

[논문 리뷰] UDO: Universal Database Optimization using Reinforcement Learning

Junxiong Wang, Immanuel Trummer|arXiv (Cornell University)|2021. 04. 05.
Cloud Computing and Resource Management참고 문헌 30인용 수 4
한 줄 요약

UDO는 강화학습 기반의 유니버설 오프라인 데이터베이스 최적화 시스템으로, 인덱스, 트랜잭션 코드, 시스템 설정과 같은 경량 및 중량 파라미터를 동시에 조정한다. 비용이 많이 드는 변경 사항에 대해 보상 피드백을 연기함으로써, 지능적인 계획 수립과 중량 파라미터 및 경량 파라미터 전용 별도의 마르코프 결정 과정(MDP)을 통해 기존 기준 대비 더 빠르게 근사 최적 성능에 도달한다.

ABSTRACT

UDO is a versatile tool for offline tuning of database systems for specific workloads. UDO can consider a variety of tuning choices, reaching from picking transaction code variants over index selections up to database system parameter tuning. UDO uses reinforcement learning to converge to near-optimal configurations, creating and evaluating different configurations via actual query executions (instead of relying on simplifying cost models). To cater to different parameter types, UDO distinguishes heavy parameters (which are expensive to change, e.g. physical design parameters) from light parameters. Specifically for optimizing heavy parameters, UDO uses reinforcement learning algorithms that allow delaying the point at which the reward feedback becomes available. This gives us the freedom to optimize the point in time and the order in which different configurations are created and evaluated (by benchmarking a workload sample). UDO uses a cost-based planner to minimize reconfiguration overheads. For instance, it aims to amortize the creation of expensive data structures by consecutively evaluating configurations using them. We evaluate UDO on Postgres as well as MySQL and on TPC-H as well as TPC-C, optimizing a variety of light and heavy parameters concurrently.

연구 동기 및 목표

  • 물리적 설계에서 시스템 설정에 이르기까지 광범위한 데이터베이스 최적화 파라미터를 단순화된 비용 모델에 의존하지 않고 최적화하는 데 도전한다.
  • 강화학습 기반 최적화에서 인덱스 생성이나 서버 재시작과 같은 고비용(중량) 파라미터를 변경할 경우 발생하는 높은 오버헤드를 극복한다.
  • 互い에 영향을 주는 상호의존적 파라미터(예: 인덱스와 설정 설정)의 공동 최적화를 가능하게 한다.
  • 모든 조정 선택을 동일하게 취급하는 통합 프레임워크를 개발하여, 각 파라미터 유형 별 별도 도구가 필요 없도록 한다.
  • 지연된 피드백과 재구성 계획 수립이 고비용 최적화 시나리오에서 수렴 속도와 해의 품질을 크게 향상시킨다는 것을 입증한다.

제안 방법

  • 비용이 많이 드는(예: 인덱스 생성) 중량 파라미터와 비용이 적은(예: 설정 플래그) 경량 파라미터로 파라미터를 분리하여 맞춤형 강화학습 전략을 적용한다.
  • 중량 파라미터에 대해 지연 보상 강화학습 알고리즘을 사용하여, 구성 설정을 배치로 생성하고 평가함으로써 고비용 설정 비용을 분산 처리한다.
  • 비용 기반 플래너를 활용해 구성 생성 및 평가 순서를 최적화하여, 유사한 구성(예: 하나의 인덱스를 여러 평가에 재사용)을 그룹화함으로써 재구성 오버헤드를 최소화한다.
  • 고정된 중량 파라미터 설정에 대해 경량 파라미터 최적화를 별도의 마르코프 결정 과정(MDP)으로 모델링함으로써, 집중적이고 신속한 수렴을 가능하게 한다.
  • 실제 워크로드 샘플에서 쿼리 실행을 통해 성능를 측정하고 보상 신호를 생성함으로써 예측 비용 모델에 의존하지 않는다.
  • 경량 파라미터에 대해 지연 없이 강화학습을 적용하여, 각 중량 파라미터 설정 내에서 신속한 적응을 가능하게 한다.

실험 결과

연구 질문

  • RQ1통합 강화학습 프레임워크가 물리적 설계 및 시스템 설정과 같은 다양한 데이터베이스 최적화 파라미터를 동시에 효과적으로 최적화할 수 있는가?
  • RQ2강화학습이 중량 파라미터(예: 인덱스 생성)의 높은 변경 비용을 어떻게 처리하면서도 최적화 효율성을 유지할 수 있는가?
  • RQ3강화학습에서 지연된 피드백이 데이터베이스 최적화 시나리오에서 수렴 속도 향상과 재구성 오버헤드 감소에 얼마나 기여하는가?
  • RQ4상호의존적 파라미터(예: 인덱스와 설정 설정)의 공동 최적화가 독립적 최적화보다 더 나은 성능을 내는가?
  • RQ5비용 모델이나 사전 학습 데이터에 의존하는 기준 대비 UDO는 새로운 워크로드나 동적 워크로드 변화에 대해 얼마나 잘 일반화되는가?

주요 결과

  • UDO는 고비용 중량 파라미터에 대해 지연된 피드백과 재구성 계획 수립을 활용함으로써 기존 기준 대비 더 빠르게 근사 최적 설정에 도달한다.
  • TPC-H 및 TPC-C 벤치마크에서, UDO는 동적 워크로드 전환 상황에서 가장 가까운 기준 대비 최대 5%까지 쿼리 실행 시간을 단축시키며, 기준이 UDO의 인덱스 추천를 제공받는 조건에서도 성능을 뛰어넘는다.
  • 20개가 아닌 5개의 TPC-H 템플릿으로만 학습할 경우 일반화 성능이 약 40% 감소하지만, UDO의 일반화 능력은 기준과 유사하여 사전 학습 데이터 없이도 강건함을 보여준다.
  • 기준이 쿼리 옵티마이저의 비용 모델을 사용해 인덱스 선택을 수행함에도 불구하고, UDO는 더 나은 인덱스 조합을 찾는다.
  • 각 중량 파라미터 설정 하에 대해 경량 파라미터에 대해 별도의 MDP를 사용함으로써, 중량 파라미터가 고정된 상태에서 더 신속한 수렴과 더 나은 적응이 가능해졌다.
  • UDO의 계획 모듈은 동일한 인덱스를 여러 구성에 재사용함으로써 고비용 인덱스 생성 비용을 효과적으로 분산 처리했으며, 일부 시나리오에서는 총 재구성 시간을 최대 70%까지 감소시켰다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.