CoGaDB Logo

CoGaDB–Column-oriented GPU-accelerated DBMS

Description

CoGaDB is a prototype of a column-oriented GPU-accelerated database management system developed at the University of Magdeburg. Its purpose is to investigate advanced coprocessing techniques for effective GPUs utilization during database query processing. It utilizes our hybrid query processing engine (HyPE) for the physical optimization process.

Overview

CoGaDB's main purpose is to investigate a GPU-aware database architecture to achieve optimal performance of DBMS on hybrid CPU/GPU platforms. We are currently working on a architecture proposal and try to benefit from past experiences of hybrid CPU/GPU DBMS. Therefore, CoGaDB provides an extensible architecture to enable researchers an easy integration of their GPU-accelerated operators, coprocessing techniques and query optimization heuristics. Note that CoGaDB assumes that the complete database can be kept in main memory, because GPU-acceleration is not beneficial for workloads where disc I/O is the dominating factor.

Features

Currently, CoGaDB implements the following features:
  • Written mainly in C++ and Cuda C
  • Column-oriented in-memory database management system
  • SQL Interface
  • CPU and GPU operators for selection, sort, and simple aggregations using optimized parallel algorithms from the libraries Intel® TBB (CPU) and Thrust (GPU) and CPU only operators for projections and joins
  • Uses HyPE, our hybrid query processing engine, for physical optimization and query processing
  • Capable of data compression:
    • Run Length Encoding
    • Bit Vector Encoding
    • Dictionary Compression
    • Delta Coding
  • NEW: Single Instruction Multiple Data (SIMD) selection operator
  • NEW: Supports filtering of strings on the GPU
  • NEW: Support for primary key and foreign key integrity constraints

Download

We regularly release new versions of CoGaDB here. CoGaDB is released under the GPL v3 License. You can find installation instructions, tutorials and documentation of the current version here.

Current Release

Older Releases

Contact

CoGaDB is developed mainly at the University of Magdeburg, Germany. It is open source and we are currently working on the first release so that everybody who is interested can extend/improve it. For information about the project, technical questions and bug reports: please contact the development team via Sebastian Breß.

Project members: Contributors:
  • Darius Brückers (contributed Compression Technique: Run Length Encoding)
  • Sebastian Krieter (contributed Compression Technique: Delta Coding)
  • Steffen Schulze (contributed Compression Technique: Bit Vector Encoding)
Project Partners:
  • Ladjel Bellatreche (LIAS/ISEA-ENSMA, Futuroscope, France)
Former project members:
  • Robin Haberkorn (University of Magdeburg)
  • René Hoyer (University of Magdeburg)
  • Steven Ladewig (University of Magdeburg)
  • Manh Lan Nguyen (University of Magdeburg)
  • Patrick Sulkowski (University of Magdeburg)

Project Publications

Copyright Notice: This material is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.