-
Couldn't load subscription status.
- Fork 1.7k
Closed
Labels
enhancementNew feature or requestNew feature or request
Description
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
In another issue @alamb and @tustvold suggested we might want to use the IOx ObjectStore implementation.
A few nice points I'll mention about the IOx one:
- They have some nice path utilities, including a CloudPath struct. That seems nicer than the current one with
&strpaths. - Has implementations for S3, GCS, Azure Blob Storage included in the repo. There is no HDFS support yet.
- Has implementations of
put()for writing. There doesn't seem to be streaming write support (multi-part upload).
There are a few differences in the API:
- The IOx
list()implementation evaluated prefixes on path segments: "Prefixes are evaluated on a path segment basis, i.e.foo/bar/is a prefix offoo/bar/xbut not offoo/bar_baz/x." - IOx doesn't have a synchronous read implementation.
There of course exist other repos that this has implications for:
- https://github.com/datafusion-contrib/datafusion-objectstore-s3
- https://github.com/datafusion-contrib/datafusion-objectstore-hdfs
- https://github.com/datafusion-contrib/datafusion-objectstore-azure
From what I've seen, it seems like we could reasonably shift to simply use the IOx ObjectStore. But if there's a good reason, we could also reuse useful parts of the implementation to keep the existing API.
roeapmatthewmturner
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request