Skip to content

high-performance SQL queries on bit-parallel & in memory database layouts

Notifications You must be signed in to change notification settings

mattweingarten/bit-parallel-database-queries

Repository files navigation

Optimizing relational queries over a bit-parallel database layout

Goal of this project is to improve performance of queries 1-3 on a bit-parallel database layout, namely a DB in an MLWEAVING format. Similiar bit-parallel database layouts

Team 38

  • Dominik Häner
  • Sebastian Heinekamp
  • Michael Sommer
  • Matthew Weingarten

Query 1

    SELECT * FROM R WHERE R.a < R.b; 

Query 2

    SELECT SUM(c) FROM R WHERE R.a < R.b;

Query 3

    SELECT * FROM R, S WHERE R.a % S.b = S.c;

Code structure

  • Report: 38_report.pdf
  • Converter to MLWEAVING: src/converter.c
  • Query1 : src/query1.c
  • Query2 : src/query2.c
  • Query3 : src/query3.c and src/query3_archive.c
  • Validation : src/validate.c
  • Performance testing : src/perform.c
  • Runtime results : runtimedata/
  • Ideas tested : src/query3_archive.c and srsc/unit_tests.c
  • Plots : plotting/

Contributions

  • Sebastian: Bit-wise modulo
  • Dominik: Layout converter, query 1
  • Micheal: query 2
  • Matt: query 3, all straightforward implementations

About

high-performance SQL queries on bit-parallel & in memory database layouts

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published