Contributor
Xie Qijun

JIT compiled SQL expressions


Mentors
Marko
Organization
MariaDB
Technologies
c++ llvm
Topics
database jit
MCS uses interepreted execution to calculate SQL expressions results. Here is an example of a SQL expression 'table1.col1 + FLOOR(table2.col1)'. Given that table1.col1 is DECIMAL and table2.col1 is DOUBLE there is a number of conditions that drives the calculation of this relatively simple example in runtime. Given that SQL types and expression tree are known before the query begins it is possible to replace interpretation with JIT to produce specialized compiled bytecode that is: small has no or almost no branches optimized for the specific platform it is run at This is a research mostly project which goal is to produce a set of microbenchmarks that: leverages any JIT compiler available, e.g. LLVM, MIR demonstrates a negative and positive effects of using JIT