Background
Ontul

OntulDistributed Unified Data Engine

Ontul Key Features

Discover the core features of the distributed data engine that unifies batch processing, stream processing, and interactive SQL in a single engine.

Unified Arrow-Native Engine

Run batch, streaming, and interactive SQL on one cluster. All data is processed in Apache Arrow columnar format, with file pruning and row-group skipping to minimize reads.

Distributed SQL & Federation

Standard SQL with joins, aggregates, CTEs and window functions, executed across workers. Join tables from Iceberg, JDBC, NeorunBase and other catalogs in a single query.

Iceberg Lakehouse (v2 & v3)

INSERT/CTAS, DELETE/UPDATE/MERGE, time travel, branches and tags, and WAP, with v3 deletion vectors. Run compaction, snapshot expiry and other maintenance from SQL or on a CRON schedule.

Batch Jobs (Java & Python SDK)

Write batch jobs with the Source/Sink API of the Java and Python SDKs. Run them interactively in client mode or submit them to the cluster in server mode.

Streaming & Ontul Flow

Continuous processing that handles events as they arrive, with windowed aggregation and Debezium CDC. Build pipelines visually in the Admin UI and write to Iceberg exactly-once.

Connectors & Lance Vector Lakehouse

Register JDBC, Kafka, S3 file, Elasticsearch, NeorunBase and REST connectors at runtime. The Lance connector adds vector and full-text search in SQL and multimodal data storage.

Semantic Layer & MCP

Define metrics and dimensions once and the planner rewrites aggregation and joins server-side. A built-in MCP server lets AI agents find certified metrics and answer with the same numbers.

Ontology & Actions

Model data in business terms with object and link types. Writes run as governed actions with RBAC, approval and audit, callable over REST or SQL CALL.

Governance, Audit & Lineage

Catalog, table, column and row-level IAM policies and column masking apply to every SQL statement. Audit logs and column-level lineage are captured automatically and can be tiered to S3 Iceberg.

Security (KMS, SSO, STS)

A built-in KMS with AES-256-GCM envelope encryption protects stored and intermediate data. Supports OIDC, SAML 2.0 and LDAP single sign-on and STS temporary credentials.

BI Integration (Arrow Flight SQL)

Tableau, Power BI, Looker and DBeaver connect live over Arrow Flight SQL JDBC. Semantic views are exposed with measures and dimensions classified.

High Availability & Operations

Multiple masters coordinated by ZooKeeper fail over automatically. Exchange Manager spill and checkpoints, S3 backups and a write-only maintenance mode are built in.

Agentic AI · Semantic Layer

Semantic Layer — Single Source of Truth for Agentic AI

One definition of truth per metric — enforced server-side.

Ontul defines metrics such as revenue or margin once, so AI agents, BI tools and analysts all see the same number. Retrievers add multimodal search for related documents by text or image under the same governance.

Core Capabilities

Server-Side Query Rewriting

The planner rewrites SELECT revenue FROM sales into the full aggregation, joins and GROUP BY. Derived metrics resolve recursively, and declared joins are injected only when referenced.

MCP-Native Metric Discovery

Agents use MCP tools to find metrics through multilingual synonyms and read their definitions. One definition is shared by every agent and BI tool.

Governance & Multi-Tenant Filters

Per-metric role control and a DRAFT → CERTIFIED → DEPRECATED lifecycle. Mandatory filters like tenant_id = ${user.attr.tenant_id} are applied from the authenticated user context.

Retrievers — Multimodal Search

A governed object that runs vector, keyword (BM25) and graph search together on NeorunBase. Caller IAM attributes are bound into the search, so each person gets results scoped to their permissions.

Re-ranking

A cross-encoder reorders retrieved candidates by relevance. If the endpoint is down, results fall back to recall order and the response states why.

ai_verdict — Typed Decisions in SQL

Ask a decision model a typed question per row and get the choice, score and confidence back as SQL values. The endpoint is governed as its own IAM resource.

One line is enough

What the user writes
SELECT customer.region, profit_margin
FROM saas.core.sales
WHERE ship_date >= DATE '2024-01-01';
What Ontul actually runs
SELECT customer.region,
       (SUM(amount) - SUM(unit_cost * quantity)) / SUM(amount)
         AS profit_margin
FROM saas.core.sales
LEFT JOIN saas.core.customer customer
  ON sales.customer_id = customer.id
WHERE ship_date >= DATE '2024-01-01'
  AND tenant_id = 'acme-co'           -- auto RLS
  AND status = 'COMPLETED'             -- per-metric filter
GROUP BY customer.region;

What this means for Agentic AI

No Hallucinated Metrics

Formulas live once, server-side. Even if an LLM guesses AVG instead of SUM — as long as the metric name is right, the correct aggregation runs every time.

IAM Auto-Propagation

The metrics and rows an agent can see are exactly what the user's IAM policy allows. No prompt-level permission logic, no bypass.

Multilingual by Default

"매출 어떻게 돼?" finds the revenue metric via synonym matching. Business terminology varies by team — the semantic layer bridges that gap.

BI · AI Consistency

The revenue Tableau shows and the revenue an LLM agent answers are computed by the same SQL. The two channels never disagree on the number.

Use Cases

Unified Data Processing

Handle all data workloads — batch, streaming, and SQL — with a single Ontul cluster instead of separate systems.

AI Agent Analytics

LLM agents discover metrics through MCP tools and translate natural-language questions into Ontul SQL. The semantic layer handles aggregation, joins, and IAM — so agents answer with certified business definitions, not hallucinated formulas.

Real-Time Data Pipelines

Ingest data from Kafka, process in Ontul, and load into Iceberg tables for real-time ETL pipelines.

Data Lake Analytics

Run federation queries across Iceberg, JDBC, and other sources for unified analytics.

Analytics + RAG in One Backend

Run metrics (analytics) and retrievers (multi-modal search) on one engine under one governance — no separate semantic-analytics tool and vector/graph search stack to operate. An agent pulls "the numbers" and "the supporting context" together in a single MCP session.

Considering Ontul for your data platform?

Unified. Arrow-Native. Agentic AI-Ready.

A distributed data engine that unifies batch, streaming, SQL, and a production semantic layer — so BI dashboards and AI agents answer with the same truth.