Skip to main content

Add your description here

Project description

blob-store is a library providing a simple interface to storing your files in a cloud agnostic fashion

Features

  • Cloud-agnostic storage of files
  • Serialisation + De-serialisation: Allowing you to move your path objects around different processes, making it easy to handle remote file locations
  • Easy interactions between different kinds of cloud locations
    • You could run s3_path.cp(azure_blob_path) and it would just work

Installation

Downloading the core library.

pip install blob-store

Cloud storage providers are provided as extra pip installation dependencies. Currently only AWS S3 and Azure Blob Storage are supported.

pip install 'blob-store[aws]'
pip install 'blob-store[azure]'

The library is under active development and breaking changes are possible.

Usage

The main interface this library provides is BlobPath, a data structure which tries to mimics Path, but for multiple storage types.

Example usage

def read_file(p: BlobPath):
  # this is the central method each `BlobPath` exposes
  # it downloads your file from the storage provider and provides a file handle for usage
  with p.open("r") as f:
    print(f.read())

# instantiate a BlobPath which is backed by S3
p = S3BlobPath(bucket, region, key)
read_file(p)

Check out the usage notebook for detailed usage of the library. The notebook is structured as a tutorial covering all features of the library.

Roadmap

  • Add other storage backends
    • GCP, Minio
  • Tests
  • Caching support
  • Performance
  • More pathlib functions and parity

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

blob_path-0.1.1.tar.gz (54.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

blob_path-0.1.1-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file blob_path-0.1.1.tar.gz.

File metadata

  • Download URL: blob_path-0.1.1.tar.gz
  • Upload date:
  • Size: 54.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.4

File hashes

Hashes for blob_path-0.1.1.tar.gz
Algorithm Hash digest
SHA256 f2446ec2cb753f5ad98ff28c1c92d4084f5558cb857f069c8487b59dbb85ee3c
MD5 fa57eca08536766097a5a732eecf82f4
BLAKE2b-256 7bc574c5d9431746695e29ec9178dade98d02971508439faff10ef87796b0c2f

See more details on using hashes here.

File details

Details for the file blob_path-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: blob_path-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.5.4

File hashes

Hashes for blob_path-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f1661f24fb8285d5e77fb8879adbadf86126200a47872ea2f983c6b672876181
MD5 fbc5db8bc5e8b416e994a61ce482d160
BLAKE2b-256 e012953864573b906c129b5ed1144c91e3cabda6c89ff3bf6db9213f9b5200ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page