|
5 | 5 |
|
6 | 6 |
|
7 | 7 | <p align="left">
|
8 |
| - <img src="assets/sfeos.png" width=1200> |
| 8 | + <img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/sfeos.png" width=1000> |
9 | 9 | </p>
|
10 |
| -<p align="left"><b>Elasticsearch and Opensearch backends for the stac-fastapi project.</b></p> |
| 10 | + |
| 11 | +**Jump to:** [Project Introduction](#project-introduction---what-is-sfeos) | [Quick Start](#quick-start) | [Table of Contents](#table-of-contents) |
11 | 12 |
|
12 | 13 | [](https://pepy.tech/project/stac-fastapi-core)
|
13 | 14 | [](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/graphs/contributors)
|
|
17 | 18 | [](https://github.com/radiantearth/stac-spec/tree/v1.1.0)
|
18 | 19 | [](https://github.com/stac-utils/stac-fastapi)
|
19 | 20 |
|
20 |
| - |
21 |
| -<br> |
22 |
| - |
23 |
| - |
24 | 21 | ## Sponsors & Supporters
|
25 | 22 |
|
26 | 23 | The following organizations have contributed time and/or funding to support the development of this project:
|
27 | 24 |
|
28 | 25 | <p align="left">
|
29 |
| - <a href="https://healy-hyperspatial.github.io/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/hh-logo-blue.png" alt="Healy Hyperspatial" height="120" hspace="20"></a> |
30 |
| - <a href="https://atomicmaps.io/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/am-logo-black.png" alt="Atomic Maps" height="120" hspace="20"></a> |
| 26 | + <a href="https://healy-hyperspatial.github.io/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/hh-logo-blue.png" alt="Healy Hyperspatial" height="100" hspace="20"></a> |
| 27 | + <a href="https://atomicmaps.io/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/am-logo-black.png" alt="Atomic Maps" height="100" hspace="20"></a> |
31 | 28 | </p>
|
32 | 29 |
|
| 30 | +## Project Introduction - What is SFEOS? |
| 31 | + |
| 32 | +SFEOS (stac-fastapi-elasticsearch-opensearch) is a high-performance, scalable API implementation for serving SpatioTemporal Asset Catalog (STAC) data - an enhanced GeoJSON format designed specifically for geospatial assets like satellite imagery, aerial photography, and other Earth observation data. This project enables organizations to: |
| 33 | + |
| 34 | +- **Efficiently catalog and search geospatial data** such as satellite imagery, aerial photography, DEMs, and other geospatial assets using Elasticsearch or OpenSearch as the database backend |
| 35 | +- **Implement standardized STAC APIs** that support complex spatial, temporal, and property-based queries across large collections of geospatial data |
| 36 | +- **Scale to millions of geospatial assets** with fast search performance through optimized spatial indexing and query capabilities |
| 37 | +- **Support OGC-compliant filtering** including spatial operations (intersects, contains, etc.) and temporal queries |
| 38 | +- **Perform geospatial aggregations** to analyze data distribution across space and time |
| 39 | + |
| 40 | +This implementation builds on the STAC-FastAPI framework, providing a production-ready solution specifically optimized for Elasticsearch and OpenSearch databases. It's ideal for organizations managing large geospatial data catalogs who need efficient discovery and access capabilities through standardized APIs. |
| 41 | + |
| 42 | + |
| 43 | + |
| 44 | +## Common Deployment Patterns |
| 45 | + |
| 46 | +stac-fastapi-elasticsearch-opensearch can be deployed in several ways depending on your needs: |
| 47 | + |
| 48 | +- **Containerized Application**: Run as a Docker container with connections to Elasticsearch/OpenSearch databases |
| 49 | +- **Serverless Function**: Deploy as AWS Lambda or similar serverless function with API Gateway |
| 50 | +- **Traditional Server**: Run on virtual machines or bare metal servers in your infrastructure |
| 51 | +- **Kubernetes**: Deploy as part of a larger microservices architecture with container orchestration |
| 52 | + |
| 53 | +The implementation is flexible and can scale from small local deployments to large production environments serving millions of geospatial assets. |
| 54 | + |
33 | 55 | ## Technologies
|
34 | 56 |
|
35 | 57 | This project is built on the following technologies: STAC, stac-fastapi, FastAPI, Elasticsearch, Python, OpenSearch
|
36 | 58 |
|
37 | 59 | <p align="left">
|
38 |
| - <a href="https://stacspec.org/"><img src="assets/STAC-01.png" alt="STAC" height="100" hspace="10"></a> |
39 |
| - <a href="https://www.python.org/"><img src="assets/python.png" alt="Python" height="80" hspace="10"></a> |
40 |
| - <a href="https://fastapi.tiangolo.com/"><img src="assets/fastapi.svg" alt="FastAPI" height="80" hspace="10"></a> |
41 |
| - <a href="https://www.elastic.co/"><img src="assets/elasticsearch.png" alt="Elasticsearch" height="80" hspace="10"></a> |
42 |
| - <a href="https://opensearch.org/"><img src="assets/opensearch.svg" alt="OpenSearch" height="80" hspace="10"></a> |
| 60 | + <a href="https://stacspec.org/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/STAC-01.png" alt="STAC" height="100" hspace="10"></a> |
| 61 | + <a href="https://www.python.org/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/python.png" alt="Python" height="80" hspace="10"></a> |
| 62 | + <a href="https://fastapi.tiangolo.com/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/fastapi.svg" alt="FastAPI" height="80" hspace="10"></a> |
| 63 | + <a href="https://www.elastic.co/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/elasticsearch.png" alt="Elasticsearch" height="80" hspace="10"></a> |
| 64 | + <a href="https://opensearch.org/"><img src="https://raw.githubusercontent.com/stac-utils/stac-fastapi-elasticsearch-opensearch/refs/heads/main/assets/opensearch.svg" alt="OpenSearch" height="80" hspace="10"></a> |
43 | 65 | </p>
|
44 | 66 |
|
45 | 67 | ## Table of Contents
|
|
0 commit comments