Open matthewmturner opened 2 years ago
@seddonm1 FYI created this to continue conversations on the topic.
Do you think that this should be a requirement before publishing the crate?
@matthewmturner I think this is an edge-case but up to @houqp to answer.
Most users will never use this functionality so I think we can easily publish a 0.1 pending the DataFusion release then this can be added after.
@seddonm1 i saw you raised https://github.com/awslabs/aws-sdk-rust/issues/425.
Would you like something like what was proposed to be added as a type of credentials provider?
@seddonm1 definitely not a blocker for crates.io release :) Just a feature we can work on later.
@matthewmturner that request was around being able to access public buckets which is independent to this request
@seddonm1 yes understood that its separate from this - just wasnt sure if you wanted to add a new issue for that functionality.
With context provided by @houqp:
And potential designs also provided by @houqp:
Maintain a set of protocol specific clients internally within the S3 object store implementation for each bucket
Extend ObjectStore abstraction in datafusion to support a hierarchy based object store lookup. i.e. first lookup a object store specific uri key generator by scheme, then calculate a unique object store key for given uri for the actual object store lookup.
I am leaning towards option 1 because it doesn't force this complexity into all object stores. For example, local file object store will never need to dispatch to different clients based on file path. @yjshen curious what's your thought on this.