Data & documents

Algeon brings GPU algorithms into SQL queries on DataFusion

The experimental Algeon engine integrates NVIDIA cuGraph, cuVS and cuML with Apache DataFusion to run graph, vector and ML tasks inside standard SQL.

A server rack connected to a data cube with glowing circuits.
Illustration generated for this article

GitHub user algeon-dev released Algeon, an experimental query engine that executes GPU-accelerated analytics directly within SQL statements. Built on Apache DataFusion, the tool allows developers to combine relational operations with advanced algorithms from NVIDIA’s cuGraph, cuVS and cuML libraries without exporting data to separate processing pipelines.

What happened

Algeon introduces a method for running complex analytical workloads, such as graph traversals and vector similarity searches, using standard SQL syntax. The project enables these heavy computations to occur in-process, keeping intermediate data in GPU memory between different stages of a query. This approach aims to simplify the creation of ad-hoc pipelines for lakehouse data by removing the need for external export scripts or specialized orchestration tools.

The release includes several practical examples demonstrating its capabilities. One notable case involves running Personalized PageRank over 45.6 million citation edges to analyze academic papers. The system computes scores on the GPU and then uses SQL to join these scores with paper titles, filtering out specific references like BERT. Another example uses the MerRec dataset to perform audience campaign analysis, chaining together graph affinity calculations, nearest neighbor searches, and forest model predictions in a single workflow.

How it works

Algeon functions as an extension to Apache DataFusion, a modular query execution framework. When a query is submitted via SQL, DataFusion DataFrames, or Arrow Flight SQL, Algeon’s physical optimizer rule identifies plan fragments that can be executed on the GPU. It replaces these candidates with in-process GPU execution using NVIDIA libraries, while any unsupported operations continue to run on the CPU path. The results are returned as standard Arrow batches, ensuring compatibility with existing data ecosystems.

The engine supports three main families of algorithms through user-defined table functions (UDTFs). Graph operations leverage cuGraph, vector similarity tasks use cuVS, and machine learning inference relies on cuML. These functions accept inputs from subqueries and feed their outputs back into joins, aggregations, or subsequent algorithmic steps within the same SQL statement. This design allows intermediate relations to remain in device memory, reducing data transfer overhead between the CPU and GPU.

Key details

  • Algeon is built on Apache DataFusion and integrates NVIDIA cuGraph, cuVS, cuML and cuDF.
  • Queries can be submitted via SQL, DataFusion DataFrames, or an Arrow Flight SQL server.
  • The engine keeps intermediate results in GPU memory during supported plan fragments to minimize latency.
  • Current limitations include working sets larger than one GPU’s memory and sources other than Parquet.
  • The project is licensed under Apache License 2.0, with some demo datasets under CC BY-NC 4.0.
  • GPU validation must be run locally as GitHub Actions hosted runners do not currently support NVIDIA GPUs.

Why it matters

For software engineers and data scientists, Algeon reduces the friction involved in exploratory analysis. Traditionally, combining graph algorithms or vector search with relational data required moving data between multiple systems, writing custom glue code, and managing complex state. By bringing these capabilities into SQL, Algeon allows analysts and AI agents to test hypotheses rapidly. Users can change seeds, compare cohorts, and apply controls using familiar query structures, facilitating the discovery of "unknown unknowns" in large datasets.

However, the project is explicitly marked as experimental. APIs and query behavior may change incompatibly, and stability is not yet guaranteed. Developers are advised to compare outputs against trusted reference results before relying on them for production decisions. The lack of support for long-lived vector indexes or models also means it is best suited for ad-hoc analysis rather than serving real-time recommendations at scale. Despite these constraints, it offers a promising path for simplifying GPU-accelerated analytics in data-heavy applications.

What you can do

  • Test the server image using Docker with the command docker run --rm --gpus all -p 127.0.0.1:50051:50051 -v "$PWD:/data:ro" ghcr.io/algeon-dev/algeon-server.
  • Review the provided SQL examples for Personalized PageRank and audience campaign analysis to understand syntax patterns.
  • Verify your hardware meets the Linux and NVIDIA GPU requirements before attempting local builds.
  • Embed Algeon in a Rust application by following the DataFusion session guide for dependency setup.
  • Compare query outputs against known reference results to account for the current experimental status of the engine.
  • Monitor the project roadmap for updates on lakehouse catalog integrations and stability improvements.
  • #sql
  • #gpu
  • #datafusion
  • #analytics
  • #nvidia

Tools from the Bytechap store

$89

DocBento

Self-hosted document management that reads every scan and answers with page citations.

Live demo

Keep reading

All stories