[Feature Request]: [Lakehouse/Python] Partition-aware zero-copy metadata translation from Delta Lake to Apache Iceberg

Đang mở
#41,227 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Maintainer thường phản hồi trong vòng 1 ngày

@user-Param đang làm issue này rồi.

Từ ngày 12/11/2026.

  • #41234 của @user-Param — đang mở

Đánh giá

Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức phù hợp với người mới
35/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
google-cloud, python

Hướng nghiên cứu

Start by reading the apache_beam.io.lakehouse package and how it handles existing table formats. Then trace how Delta transaction log JSON describes partitioned Parquet files and how Iceberg v2 manifests represent them. Done means a callable translation registers an Iceberg snapshot using existing data files, with partition mapping and catalog registration as described.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

Description

Migrating or synchronizing partitioned Delta Lake tables into Apache Iceberg currently requires full physical data rewriting. For multi-terabyte partitioned tables, this takes hours of cluster compute and substantial network/storage costs.
Because both formats use Parquet for data storage, an in-place zero-copy metadata translation can synthesize Iceberg manifests directly from Delta transaction logs.

Proposed Architecture

Add a partition-aware zero-copy metadata bridge in apache_beam.io.lakehouse:

from apache_beam.io.lakehouse import translate_delta_to_iceberg

# Synthesizes Iceberg v2 metadata from Delta partitioned transaction logs
metadata_path = translate_delta_to_iceberg(
    delta_table_uri="gs://my-bucket/delta/orders/",
    iceberg_warehouse="gs://my-bucket/iceberg/wh/",
    table_identifier="analytics.orders"
)
Key Capabilities
  1. Partition Specification Mapping: Parses Delta _delta_log/*.json partition definitions (e.g., date=2026-11-11/region=US/) into matching Iceberg PartitionSpec fields.
  2. Avro Manifest Generation: Generates Iceberg ManifestFile records pointing to existing Parquet files without copying data.
  3. Direct REST Catalog Registration: Automatically registers the synthesized snapshot in Google Cloud BigLake REST Catalog or Polaris in <5 seconds.
Ngôn ngữ chính
Java
Star
8.7k
Fork
4.8k
Merge trung bình
2 ngày 12 giờ
Pull request đã merge (30 ngày)
371

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của apache/beam

Tất cả issue của apache/beam

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.