-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement TableProviderFactory
for a IcebergTableFactory
#586
Comments
I think this is feasible because we have supported loading table from file systems directly: iceberg-rust/crates/iceberg/src/table.rs Line 241 in a1ec0fa
And we can also utilize current table provider implementation. |
Please assign it to me |
Here are a few questions that need clarification:
Proposed Solution For the first question:
For the second question:
|
@yukkit I am actually only familiar with the Regarding the version - im less familiar with iceberg so will defer to the iceberg teams recommendation. |
Hi, @yukkit Thanks for your interest and welcome to contribute!
As with this problem, how about we ask user to point the path to a table metadata file directly? The path + version approach is not clear about what this version means. For example, if the user is trying to reading a table managed by sql/hive catalogs, metadata file names are typically suffixed by uuids. Also
I'm +1 for option 1. While 2 and 3 are worth dicussiong options for improving FileIO, this use case doesn't seem a solid motivation. Also we don't need to ask user to provide credentials in config block, since currently opendal s3 operators could load for env: https://docs.rs/opendal/latest/opendal/services/struct.S3Config.html#structfield.disable_config_load . cc @Xuanwo to confirm. |
@liurenjie1024 Thank you so much for your feedback! I agree with your points, and I will start working on it based on this approach. |
Will this enable |
@mkarbo This feature is implemented solely to enable reading Iceberg data as an external table in DataFusion. |
I would like to be able to register iceberg tables with datafusion like so:
If Iceberg provided a
TableProviderFactory
then we could register and use that (This is how i currently register deltalake tables).The text was updated successfully, but these errors were encountered: