RDC Integration
Geo Engine offers good integration into the RDC. The VAT instance is running fully containerized on the de.NBI cloud and by supporting SSO (Single Sign-On) it allows users to login using their GFBio credentials. A prototypical implementation exists for accessing data from the Aruna Object Storage. Furthermore, the VAT system is connected to the Query Portal (GFBio Search) through the GFBio Data Collection Service.
Getting started
The easiest way to become familiar with Geo Engine is to take a look at the publicly accessible VAT instance, which is a community-agnostic GIS web application backed by Geo Engine with several biodiversity research related datasets available.
You can also use the Python package, either connecting to the VAT instance's backend, which runs at https://vat.gfbio.org/api/, or to your own backend.
For running your own backend (and frontend) take a look at the backend and frontend GitHub repositories. You can find instructions on how to compile and run them in the respective readme files.
User Guide
Geo Engine provides many operators which can be applied to spatio-temporal datasets. Several datasets and operator invocations can be combined in workflows to create arbitrarily complex processing pipelines whose results can be further reused through the python API and visualized in the frontend.
In the following, we describe a simple example on how you can combine different datasets and operators in the VAT instance. In this example, you will take elephant occurrence datasets of two distinct species and combine them with a vegetation index dataset to visualize the difference in their habitats.
- Go to vat.gfbio.org
- Click on Add Data (+) -> Layers -> Elephant example. There you can find three layers: Loxodonta africana, Loxodonta cyclotis and MOD13C2 NDVI. The first two are point datasets of occurrences of two elephant species. NDVI is a vegetation index raster dataset.
- Add all three layers to the map by clicking on them once.
(Optional: Remove the Loxodonta cyclotis occurrences outside of Africa by first clicking on Add Data -> Draw Features, set type to "Polygon" and draw a polygon around Africa by clicking on the map. Then, select Operators -> Point In Polygon and select the Loxodonta cyclotis point layer and the drawn polygon. Apply the operator.) - Click on Operators -> Raster Vector Join to configure a raster vector join operator. The raster vector join operator attaches raster values to points.
- Select as point input one of the two elephant occurrence datasets and as raster input the NDVI dataset. Give a descriptive name like "<elephant species> with NDVI". Click on "Create" to add the new layer to the map. Repeat for the second elephant occurrence dataset.
- Click on Operators -> Histogram. Set as input one of the two new layers created by the raster vector join. Select the "MOD13C2 NDVI" attribute. Click "Create". Repeat for the other layer.
- Now compare the two histograms you created. You should clearly see that the forest elephant occurs more often in more densely vegetated areas than the bush elephant (as expected). You can also move around/zoom in/out on the map to compare the two histograms for different regions.
There is documentation available where you can learn more about Geo Engine's architecture and e.g. all operators available. Also see the Python API reference and the Jupyter Notebook examples.
Developer Guide
Since Geo Engine is open-source, you can easily extend and customize it to your own needs. Most relevant for creating new applications are the options to add datasets, data providers and create custom dashboards.
As an admin of an existing Geo Engine instance you can already manage datasets via the python API (https://python.docs.geoengine.io/datasets.html), but you also have the option to extend the backend with entirely new data provider implementations here.
New dashboards can be added to the frontend here, where you can also take a look at existing dashboards. A dashboard can reuse existing core components and thus offers an easy way to only perform customization where needed to create a new dashboard.
References
Beilschmidt, C., Drönner, J., Mattig, M., & Seeger, B. (2023). Geo Engine: Workflow-driven Geospatial Portals for Data Science. Datenbank-Spektrum, 1-9.