Vectorized Query Evaluation in Julia
Modern databases can choose between two approaches to evaluating queries with high performance: Query Compilation compiles each query to optimized machine code, while Vectorization interprets queries using BLAS-style primitives.
Query compilation offers more optimization potential for LLVM, while vectorization doesn’t require runtime compilation.
We explain how these techniques work and how we combine them, showcasing how Julia lets us have the best of both.