Skip to content

ClickHouse integrates with Lakehouse Runtime Catalog

melvyn
Apr 22, 2026 · 6 minutes read

We're excited to announce a new integration between ClickHouse and Google's Lakehouse Runtime Catalog, enabling direct querying of Google Cloud Lakehouse Iceberg tables in ClickHouse via Apache Iceberg REST Catalog.

This integration debuts as a beta feature in ClickHouse 26.2 and will be available shortly after in ClickHouse Cloud.

Why Iceberg REST Catalog?

A common challenge for data teams is making all their data accessible regardless of where it lives. Discovery, governance, and access control need to work across data lakes, warehouses, and operational stores.

Lakehouse Runtime Catalog solves this by providing a centralized catalog for Apache Iceberg tables in Google Cloud. That enables interoperability with any Iceberg-compatible engine: BigQuery, Apache Spark, Trino, and now ClickHouse.

By connecting to the REST Catalog, ClickHouse can discover and query Google Cloud Lakehouse Iceberg tables stored in Cloud Storage with no data movement, no proprietary connectors, and no metadata syncing required. Data engineers can write Google Cloud Lakehouse Iceberg tables with Spark or BigQuery, and analysts can immediately query that same data with ClickHouse for fast, complex analytics. Data can also be loaded into ClickHouse's native format in a single query using this integration!

How does the integration work?

To use this integration, you need two things:

Lakehouse Runtime Catalog tracks the Iceberg metadata for Iceberg tables and exposes it via the Iceberg REST Catalog API at https://biglake.googleapis.com/iceberg/v1/restcatalog. ClickHouse connects to this endpoint to discover and query the underlying tables directly.

For authentication, ClickHouse integrates with Google's Application Default Credentials (ADC) mechanism.

Getting started

Deploy ClickHouse on Google Cloud or use ClickHouse local, ensuring you're on version 26.2 or later. Once your instance is ready, follow the steps below to connect to the Lakehouse Runtime Catalog. Read more in the ClickHouse documentation for Lakehouse Runtime Catalog.

Authentication with Google Application default credentials

ClickHouse supports Google ADC natively, giving you two options to authenticate with the Lakehouse Runtime Catalog.

Option 1: Point to your ADC credentials file

If you already have Application Default Credentials configured on your machine (e.g. via gcloud auth application-default login), you can simply point ClickHouse to the JSON credentials file. This is the easiest approach for local development and testing:

SET allow_database_iceberg = 1;

CREATE DATABASE Lakehouse_catalog
ENGINE = DataLakeCatalog('https://biglake.googleapis.com/iceberg/v1/restcatalog')
SETTINGS
  catalog_type = 'biglake',
  google_adc_credentials_file = '/path/to/application_default_credentials.json',
  warehouse = 'gs://<bucket_name>/<optional-prefix>';

ClickHouse reads the client_id, client_secret, refresh_token, and quota_project_id directly from the JSON file, so you don't need to specify them individually.

Option 2: Provide credentials inline

For production deployments or environments where a credentials file isn't available, you can provide the OAuth credentials directly in the query settings:

SET allow_database_iceberg = 1;

CREATE DATABASE Lakehouse_catalog
ENGINE = DataLakeCatalog('https://biglake.googleapis.com/iceberg/v1/restcatalog')
SETTINGS
  catalog_type = 'biglake',
  google_adc_client_id = '<client-id>',
  google_adc_client_secret = '<client-secret>',
  google_adc_refresh_token = '<refresh-token>',
  google_adc_quota_project_id = '<gcp-project-id>',
  warehouse = 'gs://<bucket_name>/<optional-prefix>';

Both approaches use the same underlying OAuth flow to authenticate with the Iceberg REST Catalog endpoint and authorize access to the data in Cloud Storage.

Querying Google Lakehouse Iceberg tables from ClickHouse

Once you've created a connection using either of the authentication methods above, querying your Google Lakehouse Iceberg tables is straightforward.

Listing available tables

List all tables available in the catalog:

SHOW TABLES FROM Lakehouse_catalog;
┌─name─────────────────────────┐
│ public_data.nyc_taxicab      │
│ public_data.nyc_taxicab_2021 │
└──────────────────────────────┘

Querying tables

Query any Google Cloud Lakehouse Iceberg table directly:

SELECT count(*)
FROM Lakehouse_catalog.`public_data.nyc_taxicab`
WHERE vendor_id = 1;

You can also inspect the full schema:

SHOW CREATE TABLE Lakehouse_catalog.`public_data.nyc_taxicab`;

Backticks are required around table names because ClickHouse doesn't support more than one namespace level.

Loading data into ClickHouse for faster queries

For use cases that require repeated, low-latency queries, you can load data from Google Cloud Lakehouse Iceberg tables into a ClickHouse table:

CREATE TABLE local_taxi_data
(
    `vendor_id` Int64,
    `pickup_datetime` DateTime64(6),
    `dropoff_datetime` DateTime64(6),
    `passenger_count` Int64,
    `trip_distance` Float64,
    `total_amount` Float64,
    `pickup_location_id` Int64,
    `dropoff_location_id` Int64
)
ENGINE = MergeTree
ORDER BY (pickup_datetime, vendor_id);

INSERT INTO local_taxi_data
SELECT
    vendor_id, pickup_datetime, dropoff_datetime,
    passenger_count, trip_distance, total_amount,
    pickup_location_id, dropoff_location_id
FROM lakehouse_catalog.`public_data.nyc_taxicab`;

You can now query the local_taxi_data directly in ClickHouse native format for low query latency.

What's next

This release is just the first step toward deeper integration with Google Cloud's data ecosystem.

We're already working on several enhancements for upcoming releases, including:

  • Write support: Adding support for writing data back to Google Cloud Lakehouse Iceberg tables from ClickHouse.
  • Enhanced cloud integration: Introducing a new user interface in ClickHouse Cloud to easily create connections to the Lakehouse Runtime Catalog and query your data directly from the UI.

With ClickHouse and the Lakehouse Runtime Catalog, you can run fast analytics on all of your Google Cloud Lakehouse Iceberg tables in Google Cloud, without moving data, without duplicating it, and without giving up the tools your teams already use.

Get started today

Deploy ClickHouse on Google Cloud or use ClickHouse local once your instance is ready, follow the steps below to connect to the Lakehouse Runtime Catalog. Read more in the ClickHouse documentation for Lakehouse Runtime Catalog.

Get started today

Interested in seeing how ClickHouse works on your data? Get started with ClickHouse Cloud in minutes and receive $300 in free credits.

Sign up

Share this post

  • Y Combinator icon
  • X icon
  • Bluesky icon
  • Facebook icon
  • LinkedIn icon

Subscribe to our newsletter

Stay informed on feature releases, product roadmap, support, and cloud offerings!

Recent posts

Karolina Ruiz Rogelj and Melvyn Peignon · Jul 10, 2026
Luke Gannon · Jul 10, 2026