jmpnz / db-engine-paradigms

Collection of experiments to carve out the differences between two types of relational query processing engines: Vectorizing (interpretation based) engines and compiling engines.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Database Engines: Vectorization vs. Compilation

This repository contains a collection of experiments, conducted to carve out the differences between two types of query processing engines: Vectorizing (interpretation based) engines and compiling engines.

Where to Start

Have a look at src/benchmarks/tpch/queries/ to see how query processing for Typer and Tectorwise works.

How to Build

A configuration file is provided to build this project with CMake. In the project directory run:

mkdir -p build/release
cd build/release
cmake -DCMAKE_BUILD_TYPE=Release ../..
make

This creates among others the main binaries test_all and run_tpch. Use test_all to run unit tests and check whether your compilation worked. Our main binary run_tpch requires TPC-H tables as generated by the TPC-H dbgen tool. With these our experimental queries can be run on arbitrary scale factors.

About

Collection of experiments to carve out the differences between two types of relational query processing engines: Vectorizing (interpretation based) engines and compiling engines.


Languages

Language:C++ 98.4%Language:CMake 1.3%Language:Shell 0.3%