---
title: "Integrating the Rust Delta Kernel into ClickHouse"
description: "ClickHouse initially built native protocol support to read Delta Lake tables, but maintaining pace with the format's evolving specification created high complexity and fragmented features. To resolve this, engineers integrated the Rust Delta Kernel to offload protocol handling while retaining ClickHouse's optimized Parquet data reading. The Delta Kernel parses JSON transaction logs, resolves snapshots, manages transactional write metadata, and exposes schema evolution mapping alongside Change Data Feed streams. ClickHouse also contributed upstream enhancements to the Rust kernel, adding dynamic runtime logging and asynchronous metadata processing via FFI handles. While ClickHouse can attach to existing Delta tables, the integration cannot yet initialize empty Delta Lake tables."
---

# Integrating the Rust Delta Kernel into ClickHouse

[Clickhouse](https://yomu.fyi/company/clickhouse) · Melvyn Peignon, Kseniia Sumarokova, Raúl Marín · May 22, 2026

**Type:** Problem & solution

## Summary

ClickHouse initially built native protocol support to read Delta Lake tables, but maintaining pace with the format's evolving specification created high complexity and fragmented features. To resolve this, engineers integrated the Rust Delta Kernel to offload protocol handling while retaining ClickHouse's optimized Parquet data reading. The Delta Kernel parses JSON transaction logs, resolves snapshots, manages transactional write metadata, and exposes schema evolution mapping alongside Change Data Feed streams. ClickHouse also contributed upstream enhancements to the Rust kernel, adding dynamic runtime logging and asynchronous metadata processing via FFI handles. While ClickHouse can attach to existing Delta tables, the integration cannot yet initialize empty Delta Lake tables.

## Context

Supporting Delta Lake directly in ClickHouse required maintaining complex, evolving protocol specifications natively, resulting in high maintenance overhead and fragmented feature coverage.

## Approach / What changed

ClickHouse integrated the Rust Delta Kernel to handle transaction log parsing, snapshot resolution, metadata reading, and write coordination while retaining native optimized Parquet readers via Engine APIs.

## Takeaways

- The Delta Kernel centralizes JSON transaction log parsing, metadata interpretation, snapshot resolution, and data skipping while allowing ClickHouse to plug in its own Parquet readers.
- ClickHouse contributed upstream changes to the Rust kernel to enable dynamic logging and asynchronous metadata processing by passing handles over the FFI interface.
- A remaining limitation in the Rust kernel integration is the inability to initialize and create empty Delta Lake tables directly from ClickHouse.

**Tags:** [Architecture](https://yomu.fyi/topic/architecture), [Data Pipelines](https://yomu.fyi/topic/data-pipelines), [Open Source](https://yomu.fyi/topic/open-source), [Performance](https://yomu.fyi/topic/performance), [Rust](https://yomu.fyi/topic/rust)

- Source: [Clickhouse](https://clickhouse.com/blog/integrating-rust-delta-kernel)
- Source URL: https://clickhouse.com/blog/integrating-rust-delta-kernel
- Ingested by Yomu: 2026-08-28T01:26:20.632Z

[Read original post](https://clickhouse.com/blog/integrating-rust-delta-kernel)
