Skip to main content

infrastore

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

Numerical arrays are persisted in HDF5; 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: 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)
)
series_id = 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.read_by_id(series_id)
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.12.0-cp311-abi3-win_amd64.whl (7.5 MB view details)

Uploaded CPython 3.11+Windows x86-64

infrastore-0.12.0-cp311-abi3-manylinux_2_28_x86_64.whl (6.3 MB view details)

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

infrastore-0.12.0-cp311-abi3-macosx_14_0_arm64.whl (5.1 MB view details)

Uploaded CPython 3.11+macOS 14.0+ ARM64

File details

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

File metadata

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

File hashes

Hashes for infrastore-0.12.0-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1f81f42fb84ffa17a688f79da67d2218f4972f2cb5cb1751d916e05a3d767092
MD5 ff1d5469e06c5ff5fe7e34ea02eefc69
BLAKE2b-256 87e9893aed344bc2989e53465a0d01deaecd2f695fccfad1677a4887b10782d0

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.12.0-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.12.0-cp311-abi3-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for infrastore-0.12.0-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 84e0df718834a04c9713e69d3701a30f56123a496b9eed5c72d4d7cfee9bf95b
MD5 c74486a3e3f9c6264f9d168420438b4c
BLAKE2b-256 1644d0c7a2c38dfa45c5c486338463757b8aaedf91eac00fa17947bc7095b86b

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.12.0-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.12.0-cp311-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for infrastore-0.12.0-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 6f19a678fb9302e94102bbe39c83b2b298b26c0b300e670a46b4c89e83f9499c
MD5 6e34f4c1a86499d3274e961bd360e3ba
BLAKE2b-256 9da5097e055c8a844f1bc576e84b79909ba6ca9e82671595f9cbf7feacb59ee0

See more details on using hashes here.

Provenance

The following attestation bundles were made for infrastore-0.12.0-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

This release

0.12.0 This release

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

0.2.1

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