This page is for discussing ways in which we can accommodate multiple projects using same sensors without duplicating data.

Approach 1- Aggregation and Filtering on backend

Have the backends make requests between them and filter the data in the backend. The api returns aggregated data from own database and data recieved from API requests to other projects geostreams which can be used by geodashboard

to show the necessary sensors and datapoints.


Approach 2 -Aggregation and Filtering on frontend.

The geodashboard communicates with the geostreams-api instances directly. The filtering and aggregation of data takes place in the geodashboard app.


Approach 3- Connecting tables of different projects

Use postgres partitioning and foreign data wrapper to connect tables of services with each other.

How:

Scenario: Project A needs to show all datapoints of a source in Project B.

Drawbacks: