====== Procédure après intégration de données ====== Listes des étapes à suivre après une intégration de données (Gn2Pg ou via scripts). ==== Vérifier la cohérence des données ==== * Vérifier le bon fonctionnement de l'import : nombre de données dans la synthese, modification du nombre de données en ligne, ... ==== Ajouter les zones géographiques manquantes ==== * Pour PACA : * Vérifier que les nouvelles données sont bien dans le territoire et toutes associées aux mailles utilisées pour floutage, sinon ajouter les zones géo (COM, DEP, M1, M5, M10) manquantes. * Placez vous dans le dossier des scripts : '' cd ~/data/area-outside/data/sql/update/ '' * Lister les observations sans zone géo liées : '' psql -h localhost -U geonatadmin -d geonature2db -f ./01_* '' * Charge les zones géo concernées par le SINP : * les communes et départements : ''./02_load_admin_areas.sh geonature2db '' * Si nécessaire, installer le paquet git-lgs : ''sudo apt install git-lfs'' * Installer LFS sur le dépôt : ''git lfs install'' * Télécharger les fichiers gérés avec LFS du dépôt : ''git lfs pull'' * les mailles M1, M5 et M10 : ''./02_load_meshes.sh geonature2db '' * Insérer les zones géo manquantes : * les zones administratives : '' psql -h localhost -U geonatadmin -d geonature2db -f ./03_insert_admin_areas* '' * les mailles : '' psql -h localhost -U geonatadmin -d geonature2db -f ./03_insert_meshes* '' * Établir les liens manquant entre synthese et ref_geo pour * les zones administratives : ''psql -h localhost -U geonatadmin -d geonature2db -f ./04_after_insert_admin_areas*'' * les mailles : ''psql -h localhost -U geonatadmin -d geonature2db -f ./04_after_insert_meshes*'' * Lister les observations sans zone géo liées après rétablissement des zones géo manquantes : ''psql -h localhost -U geonatadmin -d geonature2db -f ./05_*'' * Comparer les tables ''tmp_outside_*'' et ''tmp_outside_after_*'', il devrait y avoir moins d'observations dans les tables ''*_after_*''. * Mettre à NULL les géométries des observations non liées aux mailles M5 pour éviter leur apparition dans la synthese : '' psql -h localhost -U geonatadmin -d geonature2db -f ./06_*'' * Pour AURA : * Lancer les scripts SQL du dossier ''~/data/area-outside/data/sql'' : * '' 01_create_outside_all.sql '' : pour créer la table contenant toutes les observations hors territoire * '' 03_fix_outside_geom.sql '' : pour mettre à NULL toutes les géométries des observations hors territoire. ==== Mise à jour images INPN dans Taxhub ==== * Mettre à jour des images INPN si de nouveaux taxons sont apparus... * Voir [[serveurs:installation:web-srv:geonature-atlas-mise-a-jour#import_des_images_de_l_inpn|la procédure de mise à jour des images de l'INPN]]. * Sur le serveur ''db-srv'' : * Mettre à jour la table ''taxonomie.bib_noms'' avec les éventuels nouveaux noms présents dans la synthèse : '' psql -h localhost -U geonatadmin -d geonature2db -c "INSERT INTO taxonomie.bib_noms (cd_nom, cd_ref) SELECT DISTINCT s.cd_nom, t.cd_ref FROM gn_synthese.synthese AS s JOIN taxonomie.taxref AS t ON s.cd_nom = t.cd_nom WHERE NOT s.cd_nom IN (SELECT DISTINCT cd_nom FROM taxonomie.bib_noms); " '' * Sur le serveur ''web-srv'' : * Se placer dans le dossier du script de Taxhub : ''cd ~/www/taxhub/data/scripts/import_inpn_media'' * Activer l'environnement virtuel : ''source venv/bin/activate'' * Lancer le script : ''python import_inpn_media.py'' * Vérifier la présence des nouveaux médias dans la table ''taxonomie.t_medias''. * Si tout c'est bien passé, désactiver l'environnement virtuel : ''deactivate'' * Le script ajoute les photos en tant que "secondaire" pour désigner celle avec le plus petit id_media (=~ au hasard) comme "principale" pour les nouveaux taxons, utiliser la requête suivante : * Pour PACA : * Soit via le fichier ''set_first_img.sql'' (recommandé) sur serveur ''db-srv'' dans ''~/data/maintenance/data/sql/'' avec : ''psql -h localhost -U geonatadmin -d geonature2db -f ./set_first_img.sql'' * Soit directement : ''psql -h localhost -U geonatadmin -d geonature2db -c "WITH first_media AS (SELECT MIN(id_media) AS first_id_media_founded, cd_ref FROM taxonomie.t_medias GROUP BY cd_ref) UPDATE taxonomie.t_medias AS tm SET id_type = 1 FROM first_media AS fm WHERE tm.id_media = fm.first_id_media_founded AND tm.cd_ref = fm.cd_ref ;"'' * Pour AURA : * Utiliser la requête qui tient compte des images du PIFH présente sur [[serveurs:installation:web-srv:geonature-atlas-mise-a-jour#import_des_images_de_l_inpn|la page suivante]]. * **NOTES** : * Les vues matérialisées de l'Atlas nécessitent d'être mise à jour pour prendre en compte les nouveaux médias. ==== 🗑️ Maintenance de la base de données ==== * **ATTENTION** : dans les versions récentes de Postgresql (v14+) cette manipulation n'est plus vraiment nécessaire. Le mécanisme automatique de nettoyage de la base semble efficace. Une "blocage" de la base de données a été constaté lors de son utilisation automatisé dans le cadre du SINP AURA. * Sur le serveur ''db-srv'' : * Vérifier la place restante : df -h |grep /dev/sda1 ; du -hs /var/lib/postgresql/ * Lancer le script de maintenance de la synthese : psql -h localhost -U geonatadmin -d geonature2db -f ~/data/shared/data/sql/synthese_maintenance.sql ==== Mettre à jour les profils ==== * Sur l'instance ''web-srv'' : ssh geonat@web--sinp * Lancer la mise à jour des vues matérialisées des profils : * activer une session Screen : screen -S gn-update-profiles * se placer dans GeoNature et activer le venv : cd ~/geonature ; source backend/venv/bin/activate * lancer la mise à jour des vues matérialisées : geonature profiles update * Se détacher de la session Screen : ''Ctrl-a + Ctrl-d'' ==== Mettre à jour l'Atlas ==== * Sur le serveur ''web-srv'' : * Passer l'Atlas en maintenance : '' mv ~/www/maintenance/atlas/maintenance.disable ~/www/maintenance/atlas/maintenance.enable '' * Sur le serveur ''db-srv'' : * Lancer la mise à jour de l'Atlas : * activer une session Screen : screen -S atlas-update * se placer dans le dossier de maintenance : cd ~/data/maintenance/data/sql/ * lancer la mise à jour des vues matérialisées de l'Atlas : psql -h localhost -U geonatadmin -d gnatlas -f ./atlas_refresh.sql * Se détacher de la session Screen : ''Ctrl-a + Ctrl-d'' * Sur le serveur ''web-srv'' : * Supprimer la maintenance de l'Atlas : '' mv ~/www/maintenance/atlas/maintenance.enable ~/www/maintenance/atlas/maintenance.disable '' ==== Extraire les indicateurs liés à l'import ==== * Pour PACA : * En local, se placer dans le dossier ''indicators/'' du dépôt ''sinp--data'' avec : cd //sinp-paca-data/extracts/indicators * Lancer la commande : cat ./observations_count_by_imports.sql | ssh geonat@db-paca-sinp 'export PGPASSWORD="" ; psql -q -h localhost -p 5432 -U gnreader -d geonature2db' > ./$(date +'%F')_obs_by_imports.csv