Skip to main content

infrastore

Python bindings for infrastore — time-series storage for power-systems and energy simulations.

Numerical arrays are persisted in NetCDF4; the metadata associating each array with its owning component lives in SQLite. Identical arrays are stored once and shared through content addressing.

The wheels are self-contained: NetCDF, HDF5, and zlib are statically linked, so there are no system libraries to install.

Install

pip install infrastore

Quick start

from datetime import datetime, timedelta, timezone
import numpy as np
from infrastore import Store, SingleTimeSeries, OwnerCategory

store = Store.create(in_memory=True)
ts = SingleTimeSeries(
    datetime(2024, 1, 1, tzinfo=timezone.utc),
    timedelta(hours=1),
    np.arange(24, dtype=np.float64) + 100,
    "load",   # name (required)
)
key = store.add_time_series(
    owner_id=42, owner_type="Generator",
    owner_category=OwnerCategory.Component,
    time_series=ts,   # name comes from ts
    features={"model_year": 2030}, units="MW",
)
got = store.get_time_series(key)
assert np.array_equal(np.asarray(got.data), np.asarray(ts.data))

Features

  • One array, stored once — arrays are addressed by a SHA-256 content hash, so a series shared across components is written to disk a single time.
  • Typed, N-dimensional valuesf64, f32, i64, i32, u64, and bool, with an optional per-timestep element shape.
  • Six time-series typesSingleTimeSeries and NonSequentialTimeSeries read+write; Deterministic, DeterministicSingleTimeSeries, Probabilistic, and Scenarios for forecasts.
  • Columnar simulation readersStaticReader / ForecastReader serve every series' value at one timestamp.
  • Association catalogs — component ↔ supplemental attribute and directed component ↔ component edges, recorded independently of time series.
  • Type stubs (.pyi), a full exception hierarchy, and keyword-only optional arguments.

Documentation

https://natlabrockies.github.io/infrastore/latest/ — see the Python guide and the Python API reference.

License

BSD-3-Clause. See LICENSE.

Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

infrastore-0.2.1-cp311-abi3-win_amd64.whl (5.8 MB view details)

Uploaded CPython 3.11+Windows x86-64

infrastore-0.2.1-cp311-abi3-manylinux_2_28_x86_64.whl (4.4 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.28+ x86-64

infrastore-0.2.1-cp311-abi3-macosx_14_0_arm64.whl (3.5 MB view details)

Uploaded CPython 3.11+macOS 14.0+ ARM64

File details

Details for the file infrastore-0.2.1-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: infrastore-0.2.1-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 5.8 MB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for infrastore-0.2.1-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 6833688cff6bbafdbfc2e59d54f6594c8e42dfb951c5995b783c422b7909bd28
MD5 dae0725ceb4f169f1957ceba3927ded1
BLAKE2b-256 1d0a59da2e49835d29531c25eaeee9e4fcdafd71d792725e76344cc0e5a7fbef

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.2.1-cp311-abi3-win_amd64.whl:

Publisher: python-wheels.yml on NatLabRockies/infrastore

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

File details

Details for the file infrastore-0.2.1-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for infrastore-0.2.1-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 023a685b665b5b49724e7c7f6a081bea5fc53e6fb0cc9058b9204036438117c2
MD5 47a7fd94bdc996f2fb94307ade038a29
BLAKE2b-256 4cafb6137a227c99d8431ec400dbdb10af2c5ec6eff9662439e4f8491d3a9f7d

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.2.1-cp311-abi3-manylinux_2_28_x86_64.whl:

Publisher: python-wheels.yml on NatLabRockies/infrastore

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

File details

Details for the file infrastore-0.2.1-cp311-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for infrastore-0.2.1-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 3ed14750256a90cfcd76fc94d3a7ce2b0d845bc1e6692318ee054a9d9e5480ff
MD5 be841ad1df092fa094d3ac6b8c2505aa
BLAKE2b-256 e9f08dffc928dc4dcc9dc73d2fe955f65431fff90e1ef7988429cf63cb35c11a

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.2.1-cp311-abi3-macosx_14_0_arm64.whl:

Publisher: python-wheels.yml on NatLabRockies/infrastore

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.14.0

3 files

0.13.1

3 files

0.13.0

3 files

0.12.0

3 files

0.11.0

3 files

0.10.0

3 files

0.9.0

3 files

0.8.0

3 files

0.7.0

3 files

0.6.0

3 files

0.5.1

3 files

0.4.0

3 files

0.3.0

3 files

This release

0.2.1 This release

3 files

0.2.0

3 files

0.1.1

3 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page