Skip to content

[core][flink] supports reading blob descriptors from external storage#7231

Merged
JingsongLi merged 2 commits intoapache:masterfrom
steFaiz:external_blob_desc
Feb 9, 2026
Merged

[core][flink] supports reading blob descriptors from external storage#7231
JingsongLi merged 2 commits intoapache:masterfrom
steFaiz:external_blob_desc

Conversation

@steFaiz
Copy link
Contributor

@steFaiz steFaiz commented Feb 6, 2026

Purpose

BlobDescriptor is an important feature in writing, with which Flink/Spark/users do not have to load the entire blob into memory. Currently, input blob descriptors share a same FileIO configuration with Paimon, which means we cannot load some files from a different OSS endpoint.
This PR introduces a config prefix. With which user can specify FileIO related options for input blob descriptor. i.e. oss AK, SK and endpoints.

Linked issue: none

Tests

For test, we mock different OSS endpoints by a IsolatedDirectoryFileIO, which is a LocalFileIO only permitting accessing the configured 'root directory'.

API and Format

This PR do not modify any existing APIs.

Documentation

Updated the Blob's documentation.


Specifically, if the storage system of the input BlobDescriptor differs from that used by Paimon,
you can specify the storage configuration for the input blob descriptor using the prefix
`blob-descriptor.io.`. For example, if the source data is stored in a different OSS endpoint,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

just blob-descriptor.?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your suggestion! I've modified this.

Copy link
Contributor

@JingsongLi JingsongLi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

@JingsongLi JingsongLi merged commit 5c5ba6e into apache:master Feb 9, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants