Skip to content

Read identify columns from iceberg metada#2067

Open
k-morozov wants to merge 7 commits into
antalya-26.3from
feature/antalya/26.3/read-path-iceberg-metadata
Open

Read identify columns from iceberg metada#2067
k-morozov wants to merge 7 commits into
antalya-26.3from
feature/antalya/26.3/read-path-iceberg-metadata

Conversation

@k-morozov

@k-morozov k-morozov commented Jul 17, 2026

Copy link
Copy Markdown

Closes: #781

:) SELECT DISTINCT _path FROM datalake."iceberg.foo" WHERE date > '2026-07-13' ;

SELECT
    ProfileEvents['ObjectStorageReadObjects'] AS files_opened_for_read,
    ProfileEvents['S3GetObject'] AS s3_get_object,
    ProfileEvents['S3ReadRequestsCount'] AS s3_get_head,
    ProfileEvents['ReadBufferFromS3Bytes'] AS bytes_read_from_s3,
    ProfileEvents['ParquetMetadataCacheHits'] AS pq_footer_cache_hits,
    ProfileEvents['ParquetMetadataCacheMisses'] AS pq_footer_cache_misses,
    ProfileEvents['ParquetReadRowGroups'] AS row_groups_read,
    ProfileEvents['ParquetPrunedRowGroups'] AS row_groups_pruned,
    ProfileEvents['IcebergPartitionPrunedFiles'] AS files_pruned_by_partition,
    ProfileEvents['IcebergMinMaxIndexPrunedFiles'] AS files_pruned_by_minmax,
    read_rows,
    read_bytes
FROM system.query_log
WHERE (type = 'QueryFinish') AND (query_id = '9780eb0a-d4bb-4f8a-a9ce-f65932f88f88')

# without PR

Row 1:
──────
files_opened_for_read:     7
s3_get_object:             8
s3_get_head:               16
bytes_read_from_s3:        8856
pq_footer_cache_hits:      7
pq_footer_cache_misses:    0
row_groups_read:           7
row_groups_pruned:         0
files_pruned_by_partition: 0
files_pruned_by_minmax:    0
read_rows:                 19
read_bytes:                5010


# with PR

Row 1:
──────
files_opened_for_read:     0
s3_get_object:             1
s3_get_head:               9
bytes_read_from_s3:        8212
pq_footer_cache_hits:      0
pq_footer_cache_misses:    0
row_groups_read:           0
row_groups_pruned:         0
files_pruned_by_partition: 0
files_pruned_by_minmax:    0
read_rows:                 19
read_bytes:                0

Changelog category (leave one):

  • Improvement

Changelog entry (a user-readable short description of the changes that goes to CHANGELOG.md):

Optimize reads filtered on Iceberg identity-partition columns by avoiding reading data files and using the need_only_count fast path.

Documentation entry for user-facing changes

...

CI/CD Options

Exclude tests:

  • Fast test
  • Integration Tests
  • Stateless tests
  • Stateful tests
  • Performance tests
  • Aarch64 tests
  • All with ASAN
  • All with TSAN
  • All with MSAN
  • All with UBSAN
  • All with Coverage
  • All Regression
  • Disable CI Cache

Regression jobs to run:

  • Fast suites (mostly <1h)
  • Aggregate Functions (2h)
  • Alter (1.5h)
  • Benchmark (30m)
  • ClickHouse Keeper (1h)
  • Iceberg (2h)
  • LDAP (1h)
  • OAuth (5m)
  • Parquet (1.5h)
  • RBAC (1.5h)
  • SSL Server (1h)
  • S3 (2h)
  • S3 Export (2h)
  • Swarms (30m)
  • Tiered Storage (2h)

@github-actions

github-actions Bot commented Jul 17, 2026

Copy link
Copy Markdown

Workflow [PR], commit [89f8e80]

@k-morozov
k-morozov force-pushed the feature/antalya/26.3/read-path-iceberg-metadata branch 3 times, most recently from 663b0a3 to 0df5a4a Compare July 22, 2026 11:18
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
Signed-off-by: Konstantin Morozov <just.morozov.k@gmail.com>
@k-morozov k-morozov changed the title [WIP] read identify columns from iceberg metada Read identify columns from iceberg metada Jul 24, 2026
@k-morozov
k-morozov force-pushed the feature/antalya/26.3/read-path-iceberg-metadata branch from af91223 to 89f8e80 Compare July 24, 2026 15:11
@k-morozov
k-morozov marked this pull request as ready for review July 24, 2026 15:11
@ianton-ru

Copy link
Copy Markdown

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Chef's kiss.

Reviewed commit: 89f8e8017b

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Get path from Iceberg metadata

2 participants