Analysis of Database Workloads on Modern Processors

This paper describes my Ph.D. work on LAMA, a joint project with HP Lab China. The goal of my research on the project is to exploit the characteristics of modern processors and multi-level memory hierarchies, thereby improving the database performance on next generation processor and improving the performance of next generation memoryoriented database. In this paper I will give an overview of my PhD work associated with it in terms of what progress has been made so far and directions for further research. 1. BACKGROUND The continued evolution of modern processor creates new opportunities for improving database performance. However, traditional database researchers dedicate to improving database performance through I/O optimization fail to utilize processor resources efficiently. Modern processors with multi-level memory hierarchies, superscalar out-of-order execution, simultaneous multi-threading, multi-cores, such as Itanium II, impose a great opportunities to improve database performance. Therefore, exploiting the characteristics of modern processor has become an important topic of database system research [26]. In this research area, accurately characterizing the database workload behavior on modern processor is an important issue. An in-depth understanding that how database workloads interact with the processor and deep memory hierarchy can identify a set of characteristics, which would be extremely valuable for further research on performance optimization for these environments. The issues to be evaluated are described as follows. 1.1 Processor Issue Prior research has shown that DBMSs tend to achieve low IPC (instructions-per-cycle) on modern processors [17], that LAMA stands for Large Scale Data Management, a joint project between Renmin University of China and HP Lab China Permission to make digital or hard copies of all or part of thi s work for personal or classroom use is granted without fee provided th at copies are not made or distributed for profit or commercial advantage an d that copies bear this notice and the full citation on the first page. To cop y therwise, or republish, to post on servers or to redistribute to lists, re quires prior specific permission and/or a fee. Proceedings of SIGMOD2007 Ph.D. Workshop on Innovative Dat abase Research 2007(IDAR2007) ,June 10, 2007, Beijing, China. is processors are inefficiently used. Previous research calculated the time spent on CPU cache misses by measuring the actual number of misses. This methodology accurately described DBMS’s performance on the machines used at that time (Intel Pentium II/Pentium Pro). What we are interested in, however, is the case of today’s CPUs (such as Itanium II), since modern processor leads to significantly increased processor speed. For example, the Itanium II processor can execute up to six instructions concurrently. One might expect that query-intensive workloads such as data mining, multimedia information retrieval, and OLAP could provide modern CPUs the opportunity to reach near optimal-IPC efficiency. Therefore, accurately characterize the database workloads on modern processors is significant to both the database and computer architecture communities. 1.2 MMDB Issue Since [1](1999), the execution time breakdown of database systems on modern computer platforms, has been analyzed extensively. The primary motivation of these studies is to improve the performance of Disk Resident Databases (DRDB), which form the main stream of database systems until now. The typical benchmark used in those studies is TPC-C [25]. However, the continued hardware advancement has “movedup” on the memory hierarchy the larger and larger on-chip and off-chip caches, the steady increased RAM space, the commercial availability of huge flash memory (solid-state disk) on top of regular disk, etc. To catch such trend, we should also move-up the target of workload characterization research along the memory hierarchy; Unlike the performance of a DRDB which is I/O bound and may be optimized by high-level mechanisms such as indexing, the performance of a Main Memory Database (MMDB) is basically CPU and memory bound. Therefore, investigating the MMDB workloads on modern processor is an important topic. 1.3 MMDB Benchmark Issue Database researchers have developed several systems of performance assessment, such as the Hypermodel [24], OO1Benchmark [20], OO7-Benchmark [13], BUCKY benchmark [14] and industrial standards like the family of TPC benchmarks. However, none of the available benchmarks offers the coverage needed for MMDB’s performance evaluation. Prior