For teams running Prometheux on self-managed Yarn or Kubernetes clusters.
This is an advanced deployment path. We recommend contacting the Prometheux team for guidance before proceeding.

Overview

Prometheux can run on your own compute infrastructure using Apache Spark as the execution layer. This is suited to organisations that require full control over their cluster, networking, and storage.

Architecture

Prometheux enables distributed and parallelised processing by converting its primitives (project, select, join) into map, filter, reduce and shuffle transformations executed in parallel on a cluster.

Supported Cluster Managers

Yarn

Prometheux integrates with the Yarn resource manager. Two deployment modes are available:
  • Client mode — the Vadalog driver resides on the client machine. The client submits the program to the Yarn Resource Manager, which elects an application master and allocates executors. The driver communicates with executors and returns results to the client.
  • Cluster mode — the driver runs inside the cluster on the application master node. The client submits the program and the driver manages executor communication from within the cluster.

Kubernetes

Prometheux can also run on a Kubernetes cluster. The client interacts directly with the Kubernetes API Server on the control plane, which schedules executor pods on worker nodes.
  • Client mode — the driver runs outside the cluster (inside or outside a pod). It contacts the API Server to schedule executor pods and communicates with them directly.
  • Cluster mode — the driver runs inside a pod on a worker node and coordinates with executor pods through the API Server.

Local Mode

In local mode, the driver, master, and executor run in a single JVM on the workstation where the application runs. This is useful for development and testing.

Prerequisites

  • A running Yarn or Kubernetes cluster (or a local workstation for local mode)
  • Java 11 or later
  • Apache Spark (version compatible with your cluster)
  • The Prometheux engine JAR (provided by the Prometheux team)

Configuration Reference

When configuring database properties such as credentials, settings are applied globally to all instances of a database type (e.g., PostgreSQL, Neo4j). If specific configurations are defined via the @bind annotation, those override the global values.

Database Properties

Engine Properties

Spark Configuration

For full details, see the Apache Spark documentation.

GPU Acceleration

Prometheux supports the Spark-RAPIDS plugin for GPU-accelerated processing. See the NVIDIA blog post on Accelerating Neuro-Symbolic AI with RAPIDS and Vadalog Parallel for details.

Livy REST Service

Prometheux jobs can be submitted remotely via Apache Livy, which provides a REST interface for Spark clusters. To enable it, set restService=livy.

Next Steps

  • REST API — Engine REST endpoints
  • Chat API — AI-powered Vadalog assistant
  • Python SDK — Programmatic access via prometheux_chain