/dremio-accelerated

Extension of Dremio's Sabot engine which enables the transparent offloading of subqueries to FPGA's

Primary LanguageJavaApache License 2.0Apache-2.0

Dremio Accelerated

Dremio Accelerated is an extension of Dremio's Sabot engine which enables the transparent offloading of subqueries to FPGA's. The evaluation of these subqueries is facilitated by Fletcher, which decreases the time required to design and implement the required FPGA kernels.

An additional FPGA Acceleration Planning phase is added to the Sabot engine, which facilitates rules to target nodes in the physical plan and substitute them by a Fletcher operator. This operator exposes it's underlying Arrow buffers to the FPGA and specifies the location to which the results should be written. These extensions can be seen in blue in the figure below.

Sabot Extensions

This illustration is in the context of an example in which an FPGA kernel can evaluate a filter and perform both a project and stream aggregate operation. More detailed illustrations for specific usecases can be seen in the section below.

Example Usecases

Planned usecases:

Quickstart: How to build and run Dremio Accelerated

Follow the instructions in the installation guide to get Dremio Accelerated up and running.