Storage-type-agnostic file access + file structure for your project
Project description
drfs
- Free software: MIT license
- Documentation: https://drfs.readthedocs.io
File systems
All filesystems defined in this package should:
- accept full paths in methods like
ls
etc. (full means: including protocol and all other parts of path) - return full paths or their lists from methods like
ls
etc. - paths returned from methods like
ls
should beDRPath
objects (DRPath
is our version ofpathlib.Path
supporting remote paths and few other features)
Above functionalities are implemented in FileSystemBase
class. When adding
a new filesystem, one should subclass from it and set an underlying backend
filesystem as fs_cls
attribute (see existing implementations).
Relation to fsspec
fsspec
is an attempt to unify interfaces of various filesystems. It also serves
as a tool that dask
uses to support them.
drfs doesn't agree with fsspec in (at least) one assumption: in fsspec
methods like ls
return paths without protocol. That's why we can't use
classes that adhere to fsspec directly.
However, such classes can (and should) be used as backends for filesystems
defined here in drfs. This way we ensure that paths handled by drfs can
also be handled by dask
(because importing a backend filesystem that adheres
to fsspec makes it available for Dask).
For example,
drfs.filesystems.s3.S3Filesystem
usess3fs.S3FileSystem
as backend which adheres to fsspec.
Features
- TODO
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file drfs-0.3.6.2.tar.gz
.
File metadata
- Download URL: drfs-0.3.6.2.tar.gz
- Upload date:
- Size: 33.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f6b49d6223f6e9d0dc3ecae38d50a0c077029143f9dd18659c6ac9aac473857c |
|
MD5 | 7e6593caeae5a505e310c001abff648b |
|
BLAKE2b-256 | be6e0a523c8ab67d0e5cbf9271fe9cda0ce91a3bd0d8d026dd3ade27a54e7df5 |
File details
Details for the file drfs-0.3.6.2-py2.py3-none-any.whl
.
File metadata
- Download URL: drfs-0.3.6.2-py2.py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.7.1 importlib_metadata/4.11.3 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 414033848ac27f8cc6db72023da1ee912bfaca3c5a80a89832d00c0ec9b84352 |
|
MD5 | e37f448932969ce58535483b97679b2e |
|
BLAKE2b-256 | cf3b2494dbb4523b5a22d76998738421a458d8c86d199ed3a0d064bb39563feb |