Skip to main content

PolyStore

Framework-agnostic storage primitives for scientific applications.

PyPI version Documentation Status Python 3.11+

PolyStore owns backend interfaces, execution-local backend registries, FileManager routing, storage formats, ROI values, virtual-workspace source references, and viewer-streaming payload mechanics. Applications retain ownership of domain artifact names and materialization policy.

Quick start

Pass an explicit mapping of backend names to instances. FileManager has no global fallback and does not infer a backend from a path.

from pathlib import Path
import numpy as np

from polystore import DiskBackend, FileManager, MemoryBackend

registry = {
    "disk": DiskBackend(),
    "memory": MemoryBackend(),
}
files = FileManager(registry)

data = np.arange(6).reshape(2, 3)
files.save(data, Path("output.npy"), backend="disk")
loaded = files.load(Path("output.npy"), backend="disk")

For application startup where every discoverable context-free backend is wanted, use the package-owned lazy registry:

from polystore import FileManager, ensure_storage_registry, storage_registry

ensure_storage_registry()
files = FileManager(dict(storage_registry))

Backends requiring context-specific construction, including virtual workspaces and OMERO, must be instantiated by the application and added to its registry.

Nominal backend extension

Concrete backends inherit DataSource, DataSink, StorageBackend, or ReadOnlyBackend and declare their backend key. The authoritative class catalog is BackendBase.__registry__ (also exported as STORAGE_BACKENDS). Do not build a second backend class table.

Installation

python -m pip install polystore

The core install includes NumPy, ArrayBridge, metaclass-registry, file locking, image I/O, and Zarr/OME-Zarr support. Framework and streaming extras add their corresponding optional runtimes.

Full documentation: polystore.readthedocs.io

Download files

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

Source Distribution

polystore-0.2.1.tar.gz (155.4 kB view details)

Uploaded Source

Built Distribution

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

polystore-0.2.1-py3-none-any.whl (135.6 kB view details)

Uploaded Python 3

File details

Details for the file polystore-0.2.1.tar.gz.

File metadata

  • Download URL: polystore-0.2.1.tar.gz
  • Upload date:
  • Size: 155.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for polystore-0.2.1.tar.gz
Algorithm Hash digest
SHA256 bae211410c4b2aee90afac6b2fb28dd0aeb79f79a953a79e5a3b773043c11049
MD5 6f92b92d8f7b34c299f09b0196fea04a
BLAKE2b-256 095269660fa5a25f8e366d2c8016ec4a7aa9ab2c29983cbca5c89ed0b329b6b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for polystore-0.2.1.tar.gz:

Publisher: publish.yml on OpenHCSDev/PolyStore

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file polystore-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: polystore-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 135.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for polystore-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fcc1653df332cf4de8b90b321d7f1f9add5a117376f23139cca434d8560a6016
MD5 dee57299d99d3d5a021e67ab0d48b11e
BLAKE2b-256 5e691f31bbccbf7a2f2989acdbe259d0d4394d3961e5edf64628de24d4f5f897

See more details on using hashes here.

Provenance

The following attestation bundles were made for polystore-0.2.1-py3-none-any.whl:

Publisher: publish.yml on OpenHCSDev/PolyStore

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

0.2.3

2 files

0.2.2

2 files

This release

0.2.1 This release

2 files

0.2.0

2 files

0.1.35

2 files

0.1.34

2 files

0.1.33

2 files

0.1.32

2 files

0.1.31

2 files

0.1.30

2 files

0.1.29

2 files

0.1.28

2 files

0.1.27

2 files

0.1.26

2 files

0.1.25

2 files

0.1.24

2 files

0.1.23

2 files

0.1.22

2 files

0.1.21

2 files

0.1.20

2 files

0.1.19

2 files

0.1.18

2 files

0.1.17

2 files

0.1.16

2 files

0.1.15

2 files

0.1.14

2 files

0.1.13

2 files

0.1.12

2 files

0.1.11

2 files

0.1.10

2 files

0.1.9

2 files

0.1.8

2 files

0.1.7

2 files

0.1.6

2 files

0.1.2

2 files

0.1.0

2 files

Supported by

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