Designing Database Servers for Modern Hardware
Tuesday March 29, 2005
Hamerschlag Hall D-210
Carnegie Mellon University
Advances in computer architecture research yield increasingly powerful
processors which can execute code at a much faster pace than they
can access data in the memory hierarchy. Database management systems
(DBMS), due to their intensive data processing nature, are in the
front line of commercial applications who cannot harness the available
computing power. To prevent the CPU from idling, a multitude of
hardware mechanisms and software optimizations have been proposed.
Their effectiveness, however, is limited by the sheer volume of
data accessed and by the unpredictable sequence of memory requests.
Moreover, as more hardware-level parallelism becomes available through
simultaneous multithreading (SMT) and chip multiprocessing (CMP),
traditional DBMS architectures will face new challenges in utilizing
additional hardware resources.
In this talk I describe StagedDB, a new DBMS software architecture
for optimizing data and instruction locality at all levels of the
memory hierarchy. The key idea is to break database request execution
in stages and process a group of sub-requests at each stage, thus
effortlessly exploiting data and work commonality. I present two
systems based on the StagedDB design. QPipe, a staged relational
query engine built on top of BerkeleyDB, maximizes data and work
sharing across concurrent queries, providing up to 2x throughput
speedup in a decision-support workload. STEPS, a transaction coordinating
mechanism demonstrated on top of Shore, minimizes instruction-cache
misses without increasing the cache size, eliminating two thirds
of all instruction misses when running on-line transaction processing
applications. By translating high concurrency into improved locality
and by providing fine-grain software parallelism, the StagedDB architecture
is a unique match to future highly-parallel infrastructures.
Stavros Harizopoulos is a Ph.D. candidate in the Department of
Computer Science at Carnegie Mellon University, under the supervision
of Professor Anastassia Ailamaki. He received his Diploma in Electrical
and Computer Engineering from the Technical University of Crete,
and his MS degree in Computer Science from Carnegie Mellon. His
research focuses on improving database system performance by taking
into account modern hardware architectures.