Replies: 3 comments 6 replies
-
More context why I want to have the directory support, I'm implementing a filesystem catalog feature for two purpose:
|
Beta Was this translation helpful? Give feedback.
-
Thanks @dentiny for raising this.
|
Beta Was this translation helpful? Give feedback.
-
Hi, thank you @dentiny for starting this. The topic of a file-based catalog has come up multiple times throughout Iceberg's history and has been rejected for similar reasons:
The latest discussion on this topic can be found at https://lists.apache.org/thread/v7x65kxrrozwlvsgstobm7685541lf5w. Some people are exploring this direction (although not in exactly the same way) at https://olympiaformat.org. You might find it interesting. Let’s return to our current discussion. I personally agree that there are some interesting use cases for an FS-based catalog. For example, if the layout on S3 is organized in the way you mentioned, users can read from this catalog directly without needing to connect to other services. (Note: This is an implementation detail regarding how other catalogs organize namespaces and tables. It’s possible for them to store the entire namespace in a Postgres database.) I think the way forward for us is as follows: We can expose a You could then implement an FS catalog outside of iceberg-rust as a third-party catalog. What do you think? |
Beta Was this translation helpful? Give feedback.
-
Hi team, I notice
FileIO
is the only abstraction inside of iceberg-rust project to provide IO operation manipulation capabilities;FileIO
focuses only on "files", or in object storage's word, "object".I'm wondering if it makes sense to add "directory" support as well?
For example, the file hierarchy for iceberg table namespace and table is built upon directories.
The following is the output for rest catalog docker image, support our table has created namespace "default" and table "test_table".
Beta Was this translation helpful? Give feedback.
All reactions