PostgreSQL schema and functions for Spatio-Temporal Asset Catalog (STAC)
Documentation: https://stac-utils.github.io/pgstac/
Source Code: https://github.com/stac-utils/pgstac
PgSTACΒ is a set of SQL functions and schema to build highly performant databases for Spatio-Temporal Asset Catalogs (STAC). The project also providesΒ pypgstac (a Python module) to help with database migrations and document ingestion (collections and items).
PgSTAC provides functionality for STAC Filters, CQL2 search, and utilities to help manage the indexing and partitioning of STAC Collections and Items.
PgSTAC is used in production to scale to hundreds of millions of STAC items. PgSTAC implements core data models and functions to provide a STAC API from a PostgreSQL database. PgSTAC is entirely within the database and does not provide an HTTP-facing API. TheΒ Stac FastAPIΒ PgSTAC backend andΒ FranklinΒ can be used to expose a PgSTAC catalog. Integrating PgSTAC with any other language with PostgreSQL drivers is also possible.
PgSTAC Documentation:Β https://stac-utils.github.io/pgstac/pgstac
pyPgSTAC Documentation:Β https://stac-utils.github.io/pgstac/pypgstac
Project structure
/
βββ src/pypgstac - pyPgSTAC python module
βββ src/pypgstac/tests/ - pyPgSTAC tests
βββ scripts/ - scripts to set up the environment, create migrations, and run tests
βββ src/pgstac/sql/ - PgSTAC SQL code
βββ src/pgstac/migrations/ - Migrations for incremental upgrades
βββ src/pgstac/tests/ - test suite
Contribution & Development
See CONTRIBUTING.md
License
See LICENSE
Authors
See contributors for a listing of individual contributors.
Changes
See CHANGELOG.md.