← Overview

Lakehouse and SQL

An open lakehouse, on your storage

Your data stays in your object storage, as Apache Iceberg tables. Trino queries it in SQL, together with your existing databases, without copying. A shared catalog tells what each table holds, where it comes from and who may read it.

Interface illustration

Key capabilities

Open tables, one SQL

Apache Iceberg tables

Transactions, schema evolution and rollback to an earlier state, on your S3, in a format the whole ecosystem can read.

Federated SQL with Trino

One query joins your Iceberg tables and your PostgreSQL, Oracle or SQL Server databases, without moving the data.

A SQL editor in the console

Read-only queries, paginated results, bounded time and volume: exploration never brings the cluster to its knees.

A layered catalog

Layers, databases, tables and fields, with their descriptions and full-text search. It updates at the end of every run.

Lineage down to the column

For each column, the source columns and the processing that produced it, captured automatically at run time.

Documentation drafted by AI

graal profiles a sample and proposes a description for a table and its fields. A human validates it before it is published.

How it works

From raw data to a documented table

  1. Step 01

    Write

    Pipelines and jobs write Iceberg, layer by layer: raw, cleaned, ready to use.

  2. Step 02

    Catalog

    Every table written joins the catalog with its schema, owner and lineage.

  3. Step 03

    Query

    Analysts, notebooks, applications and agents query the same tables in SQL, under the same permissions.

Storage and compute stay separate

The data is Parquet files in your object storage; Iceberg adds the metadata that turns them into transactional tables. Compute comes on demand: Trino for interactive SQL, Spark for heavy processing. You size one without touching the other.

One catalog for every team

The graal catalog is the one read by the SQL editor, notebooks, pipelines and agents. A table described once is described for everyone, and its permissions apply whichever way it is accessed.

Standards and integrations

Formats everyone reads

  • Apache Iceberg
  • Parquet
  • Trino
  • SQL
  • S3
  • Apache Spark
  • PyIceberg
  • OpenLineage

Governance

Every table has its permissions

  • Read and write permissions per project, per database and per table
  • Every query is attributed to a person, an application or an agent
  • Tables stay readable outside graal, by any Iceberg-compatible engine

Frequently asked questions

Is our data copied into graal?

No. Tables live in your S3-compatible storage, and metadata in the PostgreSQL database of your installation.

Can another engine read our tables?

Yes. Iceberg is an open format, and graal exposes an Iceberg REST catalog: Spark, PyIceberg or another compatible engine reads them directly.

Do we have to migrate our databases to query them?

No. Trino queries them where they are. You move to Iceberg what benefits from it, at your own pace.

Query your tables in SQL

A query joining regional consumption and temperature: it is one of the acts of the demonstration.