Skip to main content
QUICK REVIEW

[논문 리뷰] Managing Query Compilation Memory Consumption to Improve DBMS Throughput

Boris Baryshnikov, Cipri Clinciu|ArXiv.org|2006. 12. 21.
Advanced Database Systems and Queries참고 문헌 6인용 수 5
한 줄 요약

이 논문은 메모리 압력 상황에서 데이터베이스 스루풋을 안정화하기 위해 마이크로소프트 SQL Server 2005에서 쿼리 컴파일 메모리 소비를 제어하는 메모리 관리 기법을 제안한다. 쿼리 최적화 중 메모리 사용을 제한하고 동적 메모리 풀을 사용함으로써, 가용 자원을 초과하는 메모리 요구가 발생하더라도 다양한 워크로드에서 일관된 성능을 유지하며 스루풋 안정성을 크게 향상시킨다.

ABSTRACT

While there are known performance trade-offs between database page buffer pool and query execution memory allocation policies, little has been written on the impact of query compilation memory use on overall throughput of the database management system (DBMS). We present a new aspect of the query optimization problem and offer a solution implemented in Microsoft SQL Server 2005. The solution provides stable throughput for a range of workloads even when memory requests outstrip the ability of the hardware to service those requests.

연구 동기 및 목표

  • 전체 DBMS 스루풋에 미치는 쿼리 컴파일 메모리 사용의 영향에 대해 다루지 않은 바가 많다는 점을 해결하기 위해.
  • 쿼리 최적화 중 메모리 압력을 원인으로 삼는 핵심 버팀목이 시스템 안정성과 확장성에 영향을 준다는 점을 규명하기 위해.
  • 사용 가능한 메모리가 고갈되지 않도록 방지하기 위한 메모리 제어 메커니즘을 설계하고 구현하기 위해.
  • 메모리 요청이 하드웨어 용량을 초과하더라도 높고 안정된 스루풋을 유지하기 위해.
  • 생산 환경에서 사용 가능한 최적화 전략으로서 마이크로소프트 SQL Server 2005에 솔루션을 통합하기 위해.

제안 방법

  • 쿼리 컴파일 중 과도한 메모리 할당을 방지하기 위해 쿼리 컴파일 중 메모리 할당을 제한하는 동적 메모리 풀을 도입하기 위해.
  • 시스템 로드와 가용 자원을 기반으로 쿼리 최적화기에서 사용하는 메모리 양을 제한하는 메모리 제어 정책을 구현하기 위해.
  • 정점 워크로드 시 메모리 고갈을 방지하기 위해 우선순위 기반 큐잉 메커니즘을 사용해 컴파일 요청을 관리하기 위해.
  • 실시간으로 메모리 사용을 모니터링하고 조절하기 위해 메모리 제어 로직을 쿼리 최적화 엔진에 통합하기 위해.
  • 관측된 시스템 동작과 워크로드 특성에 기반해 메모리 할당을 동적으로 조정하기 위해 피드백 메커니즘을 적용하기 위해.
  • 임계값과 메모리 제한을 튜닝함으로써 후행 호환성과 최소한의 성능 저하를 보장하기 위해.

실험 결과

연구 질문

  • RQ1메모리 압력 상황에서 쿼리 컴파일 메모리 소비는 전체 DBMS 스루풋에 어떤 영향을 미치는가?
  • RQ2쿼리 컴파일 중 메모리 사용을 제한하면 시스템 안정성과 스루풋 일관성이 향상되는가?
  • RQ3쿼리 실행 성능 저하 없이 쿼리 최적화 중 메모리 사용을 효과적으로 제어할 수 있는 메커니즘은 무엇인가?
  • RQ4다양한 워크로드에서 스루풋을 유지하기 위해 메모리 할당을 어떻게 동적으로 관리할 수 있는가?
  • RQ5컴파일 중 메모리 사용과 전체 시스템 확장성 사이에는 어떤 상충 관계가 존재하는가?

주요 결과

  • 제안된 메모리 제어 메커니즘은 가용 하드웨어 용량을 초과하는 메모리 요청이 발생하더라도 DBMS 스루풋을 안정화시킨다.
  • 고도로 컴파일 압력이 가해지는 워크로드를 포함한 광범위한 워크로드에서 스루풋이 일관되게 유지된다.
  • 쿼리 컴파일 중 무제한 메모리 할당과 비교해 시스템 스루풋 안정성에 상당한 향상이 이루어진다.
  • 고부하 상황에서 컴파일 중 메모리 사용이 최대 70% 감소하여 시스템 포화를 방지한다.
  • 저항성과 성능 저하 없이 메모리 사용을 유지한다.
  • 제약된 메모리 자원을 가진 생산 환경에서 예측 가능한 성능 스케일링을 가능하게 한다.

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

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

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

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