tensorstore
Read and write large, multi-dimensional arrays
Decision gist · record as of 2026-08-14
Yes. TensorStore is production-stable (Development Status 5), actively maintained with a recent release, has no known vulnerabilities, and solves a real problem for anyone working with large arrays across multiple storage systems. The permissive Apache-2.0 license and broad platform support (Python 3.11+, macOS, Linux, Windows) make it a low-risk addition. Install it if you need a uniform API for multi-backend array storage; skip it if your arrays fit in local memory and you're not crossing storage boundaries.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Python 3.11 or later; compiled wheels available for macOS (x86_64, arm64), Linux (x86_64, aarch64), and Windows (amd64).
- Medium install friction due to compiled wheels for multiple Python versions and platforms.
- Active maintenance with a recent release (9 days ago) and steady repository activity.
License · maintenance · safety
Apache-2.0 (permissive) — Apache-2.0 permissive license allows commercial and private use with minimal restrictions; you must include a copy of the license and state significant changes.
last release 2026-08-05 (9 days) · last repo commit 2026-08-14 · 1,534 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 3,604,038 downloads/mo, #2,561 on PyPI
Alternatives
Verify before relying
pip install tensorstore
import tensorstore as ts
import numpy as np
# Open or create an array
array = ts.open({"driver": "zarr", "kvstore": "file:///path/to/data"}).result()- Whether the asynchronous API requires explicit async/await patterns or integrates transparently with standard Python code.
- Performance characteristics and memory overhead for typical workloads compared to direct numpy or zarr access.
- Specific ACID guarantee semantics and transaction isolation levels under concurrent access.
What it is and what it does
TensorStore is a C++ and Python library for storing and accessing large multi-dimensional arrays across diverse backends—local disks, cloud storage (Google Cloud Storage, S3), HTTP servers, and in-memory storage—with a single API. It abstracts away the complexity of different array formats (zarr, N5) and storage systems, letting you work with arrays as if they were local while actually reading and writing remotely.
The library emphasizes high-throughput access through asynchronous I/O, read caching, and transactional semantics with ACID guarantees. It supports advanced indexing and virtual views, and handles safe concurrent access from multiple processes and machines via optimistic concurrency control. Runtime dependencies are numpy and ml_dtypes.
Use it for
- Store and retrieve large scientific datasets (genomics, microscopy, climate data) across cloud and local storage with a uniform interface.
- Build machine learning pipelines that read training data from remote zarr arrays with transparent caching and concurrent access.
- Implement distributed array computations where multiple workers read/write to the same array with transactional consistency.
- Migrate array workloads between storage backends (e.g., local to cloud) without changing application code.
- Access N5 or zarr datasets from remote HTTP servers with asynchronous I/O for high-latency networks.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
TensorStore is production-stable (Development Status 5), actively maintained with a recent release, has no known vulnerabilities, and solves a real problem for anyone working with large arrays across multiple storage systems. The permissive Apache-2.0 license and broad platform support (Python 3.11+, macOS, Linux, Windows) make it a low-risk addition. Install it if you need a uniform API for multi-backend array storage; skip it if your arrays fit in local memory and you're not crossing storage boundaries.
Install
tensorstore on PyPI
Before you install
Medium install friction due to compiled wheels for multiple Python versions and platforms. Active maintenance with a recent release (9 days ago) and steady repository activity. Requires Python 3.11 or later.
Requires Python 3.11 or later; compiled wheels available for macOS (x86_64, arm64), Linux (x86_64, aarch64), and Windows (amd64).
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions; you must include a copy of the license and state significant changes.
Quickstart
pip install tensorstore
import tensorstore as ts
import numpy as np
# Open or create an array
array = ts.open({"driver": "zarr", "kvstore": "file:///path/to/data"}).result()
Verify before relying
- Whether the asynchronous API requires explicit async/await patterns or integrates transparently with standard Python code.
- Performance characteristics and memory overhead for typical workloads compared to direct numpy or zarr access.
- Specific ACID guarantee semantics and transaction isolation levels under concurrent access.
Package facts
| License | Apache-2.0 permissive |
| Python support | Supports the current Python release >=3.11 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 2 packagesnumpyml_dtypes |
| Maintenance | Actively maintained 9 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 3,604,038 / month, #2,561 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableTopic :: Software Development :: Libraries |
Evidence: tensorstore-0.1.85-cp311-cp311-macosx_10_14_x86_64.whl; tensorstore-0.1.85-cp311-cp311-macosx_11_0_arm64.whl; tensorstore-0.1.85-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl; tensorstore-0.1.85-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; tensorstore-0.1.85-cp311-cp311-win_amd64.whl; tensorstore-0.1.85-cp312-cp312-macosx_10_14_x86_64.whl; tensorstore-0.1.85-cp312-cp312-macosx_11_0_arm64.whl; tensorstore-0.1.85-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl; tensorstore-0.1.85-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; tensorstore-0.1.85-cp312-cp312-win_amd64.whl; tensorstore-0.1.85-cp313-cp313-macosx_10_14_x86_64.whl; tensorstore-0.1.85-cp313-cp313-macosx_11_0_arm64.whl; tensorstore-0.1.85-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl; tensorstore-0.1.85-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; tensorstore-0.1.85-cp313-cp313-win_amd64.whl; tensorstore-0.1.85-cp314-cp314-macosx_10_15_x86_64.whl; tensorstore-0.1.85-cp314-cp314-macosx_11_0_arm64.whl; tensorstore-0.1.85-cp314-cp314-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl; tensorstore-0.1.85-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl; tensorstore-0.1.85-cp314-cp314t-macosx_10_15_x86_64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “multi-dimensional array storage”
- tensorstoreTensorStore reads and writes large multi-dimensional arrays across…
- tiledbTileDB-Py provides a Python interface to the TileDB array storage…
- ndcubendcube manipulates, inspects, and visualizes multi-dimensional…
Give your agent the search over MCP, or paste the wish link into any chat.
More Libraries packages
urllib3 is an HTTP client library that provides thread-safe connection pooling, SSL/TLS verification, multipart file uploads, request retries, compression support, and proxy handling for Python applications.
Requests is a Python HTTP library that simplifies sending HTTP/1.1 requests with automatic handling of headers, authentication, cookies, and response parsing.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Provides parsing, arithmetic, and recurrence rule computation for dates and times, with timezone support and iCalendar RFC compliance.
Install it if you need to parse flexible date strings, compute relative dates, handle timezones, or work with recurrence rules—it's the de facto choice for these tasks.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
pytest is a testing framework that lets you write test functions using plain assert statements and automatically discovers and runs them, with detailed failure reporting.
See also icechunk · storage · sparse · tiledb · kerchunk · multiscale-spatial-image · spatial_image · xarray · tifffile · ome-zarr