datajoint-python icon indicating copy to clipboard operation
datajoint-python copied to clipboard

File access via fsspec

Open chrisroat opened this issue 4 years ago • 1 comments
trafficstars

Feature Request

Problem

Accessing various filesystems (s3, gcsfs, azure, gdrive, dropbox) with the current implementation requires new modules for each system, providing the file-like methods/attributes.

Requirements

Switch file-storage backend to use fsspec.

Justification

This change would allow users to automatically use any fsspec-supported backend by loading the corresponding module, i.e. GCS vs gcsfs. Of course, the backend must support the operations needed by datajoint.

Alternative Considerations

As stated in the problem, a custom module is currently necessary for a new file system.

Related Errors

N/A

Screenshots

N/A

Additional Research and Context

The fsspec project is providing a common, pythonic interface across many kinds of local and remote filesystems. Several project have announced recently starting to use it -- for a major example, see the pandas 1.1 release.

chrisroat avatar Apr 25 '21 12:04 chrisroat

Excellent idea.

dimitri-yatsenko avatar Apr 25 '21 13:04 dimitri-yatsenko