Our group includes PostDocs, PhD students, and student assistants, and is headed by Prof. Dr. Hasso Plattner. If you are interested in our work or want to join our team, please contact Dr. Matthias Uflacker.

Our team is giving a series of lectures and seminars with a focus on enterprise systems design and in-memory data management. Strong links to the industry ensure a close connection between theory and its implementation in the real world.

Our research focuses on the technical aspects of business software and the integration of different software systems to meet customer requirements. This involves studying the conceptual and technological aspects of in-memory databases, design principles, and programming methods for enterprise applications.

We continually strive to translate our research into practical outputs that improve the quality of enterprise applications. A close link to industry partners ensures relevance and impact of our work. Get here an overview of our current and previous projects.

Martin Lorenz, M.Sc.

Research Assistant, PhD Student

Overview

Enterprise information systems can be characterized as OnLine Transaction Processing (OLTP) or OnLine Analytical Processing (OLAP). In an enterprise information system landscape, OLTP systems are mostly systems that capture information either through single transactions (e.g., web forms) or batch operations (e.g., importing CSV-files). OLAP systems are business intelligence or decision support systems, which perform complex analytics (e.g., demand planning), based on the information captured by OLTP systems. Up to the present, the separation of both types of systems manifests itself in in the form of dedicated database technologies for either of the two. Systems with an OLTP database workload mainly rely on row-oriented systems, optimized for write operations. OLAP databases favor column-oriented data layout to optimize complex read operations. The data transfer from OLTP to OLAP systems is managed via an ETL process, which extracts, transforms, and loads the data. Drawbacks of that architecture include the inability to perform real-time analytics based on the most current data and an increased total cost of ownership (TCO), because two separate systems have to be managed and maintained.

One of the greatest promises of in-memory technology is the reunification of OLTP and OLAP. In-memory technology combines the advantages of hardware trends ( multi-core CPUs, cheap main memory) with suitable software concepts ( light-weight compression, column-orientation, differential buffer) to design a database system that allows run OLAP-style and OLTP-style queries on the same platform. A question that is to be answered is what is an appropriate data model design for a database system that supports mixed workloads. The data layout (row- vs. column-orientation) is only one characteristic that distinguishes OLAP and OLTP databases, the other one is the data model. Database schemas for OLTP systems are highly normalized to minimize the data volume and to speed up data manipulation queries. OLAP systems on the other hand are tuned to access large portions of data to analyze them in a timely manner. Star or snowflake schemas are the most prominent designs for OLAP database schemas.

In my research, I focus on data model designs and data access technologies that support the requirements of modern enterprise applications and at the same time are optimized for the concepts of an in-memory column-store.

Research Interests

Fig. 1 Mapping Strategies

Class inheritance is one of the major features of object-oriented programming languages. It provides for advanced conceptual modeling and code and structural reuse. However, fundamental differences between object-oriented programming and relational algebra obviate a straight forward mapping between domain models, designed for application logic, and relational data models, designed to persist the data. Research has proposed three different mapping strategies to persist inheritance hierarchies in relational databases (Figure 1).

What they all have in common is an inherent tradeoff between memory consumption and query performance. Depending on the actual characteristics of the inheritance structure at hand, each strategy has its strength and weaknesses. Consequently, the combination of inheritance characteristics and prioritization of non-functional requirements (memory consumption and query performance) leads to a decision for the appropriate strategy. Unfortunately, not all characteristics of the inheritance hierarchy can be defined in advance. Especially runtime characteristics, such as the distribution of objects along the hierarchy can rarely be determined at system's design time. This problem becomes even more serious for vendors of standard software, since they offer their software for a number of customers from different industries and various sizes.

In my research, I look at column-orientation, as a means to structure physically data in memory. In-memory column-oriented databases proof to be advantageous over traditional disk-based row-oriented storage technologies, both in terms of memory consumption and query performance. Additionally to that, it also seems to shift the tradeoff between those two requirements depending on the chosen mapping strategy. Both facts make column-orientation a promising fit for mapping inheritance hierarchies to relational databases.

Master's Thesis Topics

We offer different Master's Thesis topics in this field of research. If you are interested, please contact us for more information.

Open Positions

We are proud to announce " A Course in In-Memory Data Management" by Prof. Dr. h.c. Hasso Plattner. This book is the culmination of six years work of in-memory research. As such, it provides the technical foundation for combined transactional and analytical workloads inside one single database as well as examples of new applications that are now possible given the availability of the new technology. The book is available at Springer.