Capteurs - Lot Serveur de données
Référent du lot : qui veut
A produire
Le travail à faire consiste à mettre au point le serveur de stockage des données et leur interface avec les applications :
- structurer la base de données SIG
- coder l'API d'accès aux données
- entrant pour l'export
- sortant pour l'exploitation
- documenter
- tester
Spécification
Le projet AirCasting a développé un serveur ad hoc. Il serait bon de s'en inspirer pour le stockage des données.
Le serveur Capteurs_Citoyens sera vraisemblablement hébergé par le service d'information géographique de Rennes Métropole ⇒ les inclure dans la boucle. Ce service envisage d'utiliser le standard SoS (Sensor Observation Service). À privilégier pour le format des données
Voir aussi la partie export des données de l'application Android du projet AirCasting.
Mutualisation
Le projet doit aboutir à une interface générique paramétrable qui puisse servir aux différents projets de cette nature susceptibles d'éclore dans les années qui viennent.
Historique projet
29 avril 2017
Des avancées lors de la permanence mensuelle :
- Premier programme python pour traiter les fichiers CSV d'Ambassad'Air → code SQL pour alimenter une base adhoc.
- Idée : avoir une base SQL exportée sous forme textuelle (code SQL regénérant la base), mise en ligne avec des données collectées par des Ambassad'Air. Le fichier serait mis en ligne sur le site de Gulliver et/ou celui d'Ambassad'Air.
2 mai 2017
Données brutes des volontaires Ambassad'Air récupérées par Jacques, le chargé de mission de la MCE, avec les moulinettes qui vont bien (compression des mesures et génération de la base MySQL correspondante) écrites par VinCiv.
Le fichier de l'ensemble est sur le site : ambassadair.zip
Attention : après décompression, les fichiers bruts occupent 1,5 Go, et ce chiffre monte à 5 Go avec les fichiers générés par les traitements.
5 mai 2017
Une tentative par VinCiv de générer la base sans compresser les mesures (une mesure = une ligne dans la base) a montré les problèmes de performance des scripts (après plusieurs jours, le script d'insertion n'était pas encore au bout).
Par ailleurs, le schéma de la base lui même avait des gros défauts : coordonnées géographiques en CHAR au lieu de FLOAT, faible pertinence de la séparation entre MEASURE et VALUE.
Le tout a été revu et le fichier ambassadair.zip refait à neuf.
11 mai 2017
Nouvelle version du code, rendue nécessaire par les premiers traitements.
Nouvelle version de l'archive ambassadair.zip.
Plusieurs exemples de traitement des données après requêtes ont été faits, illustrant ce qui pourrait se faire en matière de visualisation :
- nombre de mesures par heure de la journée : hours.ods
- moyenne des mesures par heure de la journée : hours_values.ods
- géolocalisation des mesures sur une journée : day_locations.ods
L'archive de l'ensemble du code compte un README.txt qui présente les requêtes type ayant permis de constituer ces fichiers : code_bdd_ambassadair.zip.
Support documentaire
La partie matérielle du projet : le code
Compléter à mesure les choix techniques
La partie immatérielle : documentation
AirCasting
Le source de l'application : Android client for the AirCasting platform
Le source du serveur : AirCasting API and web application
SOS format
Wikipedia : Sensor Observation Service
OpenGeoSpatial : Sensor Observation Service