Uni-Konstanz

Uni-Konstanz

Fachgruppe Informatik und Informationswissenschaft

 

information engineering

 

 

 

 

Main Memory Databases

(V2+Ü1)
Termin: Mi 12-14 h/C 424 und Mi 14-16 h, G 420
Doz.: Maurice van Keulen (Universiteit Twente, NL)

Adressaten:

Target audience are students interested in databases and/or modern computer architecture (especially processor and memory architecture) - Bachelor and Master program

Angebot im Lehrexport:

Mathematik, Nebenfach oder Schwerpunkt Informatik

Voraussetzungen:

Foundations in databases (in particular, SQL and relational algebra).

Inhalt:

Custom hardware, from workstations to PCs, has experienced tremendous improvements in the past decades. However, this improvement has not been equally distributed over all aspects of hardware performance and capacity: the speed of commercial microprocessors has been increasing roughly 70% every year, while the speed of commodity DRAM has improved by little more than 50% over the past decade. The result is that from the perspective of the processor, memory has been getting slower at a dramatic rate making it increasingly difficult to achieve high processor effciency. Another trend is the ever-increasing number of parallel execution opportunities in modern CPUs. It has been shown that current database systems on the market make poor use of these new features resulting in low IPC scores (instructions executed per CPU cycle) during database query execution.

In this course, we examine these aspects and trends concerning computer architecture more closely. Furthermore, we also examine database implementation architecture and trends therein in an effort to understand how to design a database system that more efficiently uses main-memory and CPU resources. It appears, for example, that many simple algorithms for certain database operations that sequentially traverse the operands, outperform common database indexing techniques such as B-trees that show random access patterns. The performance characteristics are especially important in query intensive database applications, such as data mining, so we will focus on these.

More concretely, in this course we will address the following topics:
Computer architecture. In particular, the co-operation between CPU, main-memory, and disk. Database implementation architecture. In particular, buffer management and common execution algorithms. Trends in both. The design of a main-memory DBMS. Database algorithms optimized for main-memory execution. Applications of main-memory DBMSs.

In order to obtain practical experience as well, there is a practicum with the course. We will use the main-memory database system Monet developed by the researchers from the research institute CWI and the University of Amsterdam. The Monet DBMS is used as a research vehicle for database research, but it is also been commercially used, for example, by the data mining company Data Distilleries. Furthermore, Monet is being used in Konstanz in the research project Pathfinder. Students can participate in this project, see Projektgruppe Pathfinder.

Literatur:

The study material will be chapters from the PhD thesis of Peter Boncz, "Monet: A Next-Generation DBMS Kernel For Query-Intensive Applications" (May 2002), and one or two additional research papers or chapters from a book.

Additional materials will be provided at http://www.inf.uni-konstanz.de/dbis/teaching/ws0203/main-memory-dbms/.

Leistungsnachweis:

The examination of the course will consist of a written exam (Klausur). For the practicum, there will be no grade, just the requirement that you have passed it.

Leistungspunkte:

4.5 credits may be achieved for successful participation.