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)
    units="MW",
)
series_id = store.add_time_series(
    owner_id=42, owner_type="Generator",
    owner_category=OwnerCategory.Component,
    time_series=ts,   # name and units come from ts
    features={"model_year": 2030},
)
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.
  • Seven time-series typesSingleTimeSeries, NonSequentialTimeSeries, and PersistentTimeSeries (a sparse step function: breakpoints, values carried forward) 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. Complete, runnable programs are indexed in the repository's Python examples.

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.13.0-cp311-abi3-win_amd64.whl (7.7 MB view details)

Uploaded CPython 3.11+Windows x86-64

infrastore-0.13.0-cp311-abi3-manylinux_2_28_x86_64.whl (6.4 MB view details)

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

infrastore-0.13.0-cp311-abi3-macosx_14_0_arm64.whl (5.2 MB view details)

Uploaded CPython 3.11+macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: infrastore-0.13.0-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 7.7 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.13.0-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 0dee286fcb02e4b438b31c4ce3d77a2e9a5be8a2bffc2587d9186b066438819f
MD5 f5160942781d067afeccb537e0d32bae
BLAKE2b-256 3d3508b890581d097f24462e2177bfcfa2f5fa90fe783f45cfeac1243e575100

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for infrastore-0.13.0-cp311-abi3-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e90e2323949ebc18333fd046b60ea35a9c8e755cd1a57d76e74c4465b27b8ccc
MD5 162a2c74a3a80c4add33d88c069a9d6a
BLAKE2b-256 148760c41e2cd870d723e4cf10551657a0100c44c174874aa5f8f20b5e3419f5

See more details on using hashes here.

Provenance

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

File metadata

File hashes

Hashes for infrastore-0.13.0-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 e26ab2cd3974e039adfb3784174570671e25e5cacd5d6d5fe63a9ddd701b9a3b
MD5 850ee8aeab89feb5e7982ddc58b47bc1
BLAKE2b-256 8458e688c41cfbbe6c8d9f02c11ea9aaca7103abcdfdce0b45d91bd02d725c4a

See more details on using hashes here.

Provenance

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

This release

0.13.0 This release

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

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