Most commercial Web sites dynamically generate their contents through a three-tier server architecture composed of a Web server, an application server, and a database server. In such an architecture, the database server may become a bottleneck to the overall performance. In this dissertation, we propose WDBAccel, an accelerator that significantly improves the throughput of database processing. WDBAccel eliminates costly, complex query processing needed to obtain query results by reusing the results from previous queries for subsequent queries. This differentiates WDBAccel from other database cache systems, which employ traditional query processing. WDBAccel further improves its performance by fully utilizing main memory as the primary storage. We also propose an update management mechanism to ensure query results cached in WDBAccel consistent to the origin data in databases. We evaluate the performance of WDBAccel and compare it to other cache systems, Oracle and TimesTen, by using the TPC-W benchmark. The measurement results show that WDBAccel outperforms those cache systems by up to 16 times.
대부분의 상업 웹 사이트들은 웹 서버, 애플리케이션 서버, 데이터베이스 서버로 구성된 삼단계 서버 아키텍처를 통해 콘텐트를 생성한다. 이러한 아키텍처에서 데이터베이스 서버는 빈번히 병목 현상을 일으켜 전체 성능을 저하시킨다. 본 논문에서는 데이터베이스 처리율을 대폭 향상시키는 WDBAccel로 명명된 고성능 데이터베이스 서버 가속기를 제안한다. WDBAccel은 향후 질의 결과 생성을 위해 이전 질의 결과를 재활용함으로써 복잡하고 높은 비용을 요구하는 질의 처리를 제거한다. WDBAccel의 이러한 특징은 기존 DBMS를 활용하는 데이터베이스 캐시 시스템들과 차별화시킨다. 또한, 캐시에 저장된 질의 결과가 원래 데이터베이스와 일치하도록 갱신 관리 메커니즘을 제공한다. TPC-W 벤치마크를 사용하여 WDBAccel의 성능을 평가하며 Oracle과 TimesTen과 비교한다. 측정 결과로부터 WDBAccel이 이들 기존 캐시 시스템보다 최대 16배의 성능 우위를 가짐을 확인할 수 있다.