Skip to main content

STAC-GeoParquet

Convert STAC items between JSON, GeoParquet, pgstac, and Delta Lake.

Purpose

The STAC spec defines a JSON-based schema. But it can be hard to manage and search through many millions of STAC items in JSON format. For one, JSON is very large on disk. And you need to parse the entire JSON data into memory to extract just a small piece of information, say the datetime and one asset of an Item.

GeoParquet can be a good complement to JSON for many bulk-access and analytic use cases. While STAC Items are commonly distributed as individual JSON files on object storage or through a STAC API, STAC GeoParquet allows users to access a large number of STAC items in bulk without making repeated HTTP requests.

For analytic questions like "find the items in the Sentinel-2 collection in June 2024 over New York City with cloud cover of less than 20%" it can be much, much faster to find the relevant data from a GeoParquet source than from JSON, because GeoParquet needs to load only the relevant columns for that query, not the full data.

See the STAC-GeoParquet specification for details on the exact schema of the written Parquet files.

Installation

Install via pip or conda:

  • pip install stac-geoparquet
  • conda install conda-forge::stac-geoparquet

Documentation

Documentation website

Development

Get uv, then:

git clone git@github.com:stac-utils/stac-geoparquet.git
cd stac-geoparquet
uv sync
uv run pre-commit install
uv run pytest
scripts/lint

Releasing

We use release-please to manage releases. To create a new release, look for a release PR, approve it, and merge it. release-please will create a tag and a release, which will trigger a new release on PyPI.

Download files

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

Source Distribution

stac_geoparquet-0.8.2.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

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

stac_geoparquet-0.8.2-py3-none-any.whl (32.7 kB view details)

Uploaded Python 3

File details

Details for the file stac_geoparquet-0.8.2.tar.gz.

File metadata

  • Download URL: stac_geoparquet-0.8.2.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for stac_geoparquet-0.8.2.tar.gz
Algorithm Hash digest
SHA256 7a3de5b0b36f1d4cf2e522a23ce36c5570e290753e5b93cc9d7cad8da8b60b09
MD5 e3986fd4c405d20ed7d3fa63d4aedc24
BLAKE2b-256 30fc1961b507b13d693279a404f2423c27c71e5f01883af7f422aefb35a5330c

See more details on using hashes here.

Provenance

The following attestation bundles were made for stac_geoparquet-0.8.2.tar.gz:

Publisher: publish.yml on stac-utils/stac-geoparquet

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

File details

Details for the file stac_geoparquet-0.8.2-py3-none-any.whl.

File metadata

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

File hashes

Hashes for stac_geoparquet-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0a67d237159c6a790538a1ef66d4698c529d40795567f7266b60dc2f5aee880b
MD5 829922953b9cb133c8f19a7fa2580798
BLAKE2b-256 ece89f0983d5698025959992206c61e15619ce953d3906791b6a337fa9f625f6

See more details on using hashes here.

Provenance

The following attestation bundles were made for stac_geoparquet-0.8.2-py3-none-any.whl:

Publisher: publish.yml on stac-utils/stac-geoparquet

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

Supported by

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