-
Notifications
You must be signed in to change notification settings - Fork 344
Closed
Description
There was an unresolved discussion about whether we should:
- Allow users to configure a path as a root of the catalog and create tables underneath that (see earlier commits in Add memory catalog implementation #475 to see an implementation of this idea) or
- Pros:
- Aligns with the approach generally taken on the Java side (defaultWarehouseLocation)
- Cons:
- Adds another parameter for initializing
MemoryCatalog
- Adds another parameter for initializing
- Pros:
- Users should configure
FileIOwith arootpath (this is the approach currently implemented in iceberg-rust code)- Pros:
- Consolidates path-related concerns in
FileIO
- Consolidates path-related concerns in
- Cons:
- I think users may have to be aware of this implementation detail because when they send a CreateTableRequest, the location should not provide an absolute path, but rather a "relative" path from the root location assumed by FileIO (that or we need to add some logic to recognize relative and absolute file paths in the FileIO implementation). I'll also add that Iceberg community has so far not been super receptive to the idea of relative paths.
- None of the Java
FileIOimplementations I looked at (S3FileIO,GcsFileIO) allow configuring arootpath. I suspect this may affect interoperability with the Java ecosystem, not 100% sure though.
- Pros:
Overall, I have concerns about option 2 (which is what is currently implemented) and am currently in favour of changing the code to follow option 1: allow users to configure a path as a root of the catalog and create tables underneath that.
Thoughts?
Metadata
Metadata
Assignees
Labels
No labels