database:sinp-paca:import-donnees

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
database:sinp-paca:import-donnees [2021/03/08 19:56] – [Modifier la vue gn_synthese.v_synthese_for_export] jpmilcentdatabase:sinp-paca:import-donnees [2022/03/25 11:46] (Version actuelle) – [Récupération en local du dépôt "data" et transfert sur le serveur] jpmilcent
Ligne 17: Ligne 17:
 ===== Récupération en local du dépôt "data" et transfert sur le serveur ===== ===== Récupération en local du dépôt "data" et transfert sur le serveur =====
   * En local, sur votre machine, récupérer le dépôt Github "[[https://github.com/cbn-alpin/sinp-paca-data|sinp-paca-data]]" : ''git clone git@github.com:cbn-alpin/sinp-paca-data.git''   * En local, sur votre machine, récupérer le dépôt Github "[[https://github.com/cbn-alpin/sinp-paca-data|sinp-paca-data]]" : ''git clone git@github.com:cbn-alpin/sinp-paca-data.git''
-  * Suivre les éventuelles étapes indiquées dans les fichiers [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/cbna/README.md|README.md (CBNA)]] et [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/cenpaca/README.md|README.md (CEN-PACA)]]+  * Suivre les éventuelles étapes indiquées dans les fichiers [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/cbna/README.md|README.md (CBNA)]], [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/cbnmed/README.md|README.md (CBNMED)]] et [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/cenpaca/README.md|README.md (CEN-PACA)]]
   * **ATTENTION** : sur le serveur, sauvegarder le dossier "data" : voir ci-dessous   * **ATTENTION** : sur le serveur, sauvegarder le dossier "data" : voir ci-dessous
   * Se placer à la racine du dossier //sinp-paca-data//    * Se placer à la racine du dossier //sinp-paca-data// 
-  * Transférer les scripts : ''<nowiki> rsync -av --copy-unsafe-links --exclude var --exclude .git --exclude .editorconfig --exclude .vscode --exclude .gitignore --exclude settings.ini --exclude "data/raw/*" --exclude venv --exclude .venv --exclude "import-parser/data/*" ./ geonat@db-paca-sinp:~/data/ --dry-run </nowiki>''+  * Transférer les scripts : ''<nowiki> rsync -av --copy-unsafe-links --exclude var --exclude .git --exclude .gitattributes --exclude .gitmodules --exclude .editorconfig --exclude .vscode --exclude .gitignore --exclude settings.ini --exclude "data/raw/*" --exclude venv --exclude .venv --exclude "import-parser/data/*" ./ geonat@db-paca-sinp:~/data/ --dry-run </nowiki>''
     * Supprimer l'option ''<nowiki> --dry-run </nowiki>'' si tout semble ok pour effectuer le transfert réel     * Supprimer l'option ''<nowiki> --dry-run </nowiki>'' si tout semble ok pour effectuer le transfert réel
   * Se connecter au serveur    * Se connecter au serveur 
     * Créer les fichiers //settings.ini// à partir des fichiers //settings.sample.ini// pour : //area//, //cbna-cbnmed//, //cenpaca// et //shared//     * Créer les fichiers //settings.ini// à partir des fichiers //settings.sample.ini// pour : //area//, //cbna-cbnmed//, //cenpaca// et //shared//
-    * Préparer l'environnement du script //import-parser// en suivant les indications du fichier [[https://github.com/cbn-alpin/sinp-paca-data/blob/master/import-parser/README.md|README.md (import-parser)]]+    * Préparer l'environnement du script //import-parser// en suivant les indications du fichier [[https://github.com/cbn-alpin/geonature-import-parser/|README.md (import-parser)]]
       * **Notes** : il est nécessaire de redonner les droits d'execution à GCC pour tout le monde si l'on veut pouvoir installer correctement le venv avec ''sudo chmod o+x /usr/bin/gcc''. Une fois l'installation terminée, retirer les à nouveau avec  '' chmod o-x /usr/bin/gcc ''.       * **Notes** : il est nécessaire de redonner les droits d'execution à GCC pour tout le monde si l'on veut pouvoir installer correctement le venv avec ''sudo chmod o+x /usr/bin/gcc''. Une fois l'installation terminée, retirer les à nouveau avec  '' chmod o-x /usr/bin/gcc ''.
   * **Notes** : les données brutes nécessaires aux scripts sont automatiquement téléchargées depuis Dropbox   * **Notes** : les données brutes nécessaires aux scripts sont automatiquement téléchargées depuis Dropbox
Ligne 34: Ligne 34:
   * Recréer le dossier "data" vide : '' mkdir data ''   * Recréer le dossier "data" vide : '' mkdir data ''
  
-===== Modifier la vue gn_synthese.v_synthese_for_export =====+===== Modifier les vues d'exports =====
   * Il est nécessaire d'ajouter les colonnes : ''id_nomenclature_sensitivity'' et ''id_nomenclature_diffusion_level''   * Il est nécessaire d'ajouter les colonnes : ''id_nomenclature_sensitivity'' et ''id_nomenclature_diffusion_level''
   * Nous gardons dans la vue uniquement les colonnes exportées.   * Nous gardons dans la vue uniquement les colonnes exportées.
-  * <code sql>+  * Vue '' gn_synthese.v_synthese_for_export ''<code sql>
 CREATE OR REPLACE VIEW gn_synthese.v_synthese_for_export CREATE OR REPLACE VIEW gn_synthese.v_synthese_for_export
 AS SELECT s.id_synthese, AS SELECT s.id_synthese,
     s.unique_id_sinp AS uuid_perm_sinp,     s.unique_id_sinp AS uuid_perm_sinp,
     s.unique_id_sinp_grp AS uuid_perm_grp_sinp,     s.unique_id_sinp_grp AS uuid_perm_grp_sinp,
-    d.unique_dataset_id AS jdd_uuid, 
     af.acquisition_framework_name AS ca_nom,     af.acquisition_framework_name AS ca_nom,
 +    d.id_dataset AS jdd_id,
 +    d.unique_dataset_id AS jdd_uuid,
     d.dataset_name AS jdd_nom,     d.dataset_name AS jdd_nom,
     n21.label_default AS niveau_validation,     n21.label_default AS niveau_validation,
Ligne 55: Ligne 56:
     s.date_max::date AS date_fin,     s.date_max::date AS date_fin,
     st_asgeojson(s.the_geom_4326) AS geojson_4326,     st_asgeojson(s.the_geom_4326) AS geojson_4326,
 +    st_asgeojson(s.the_geom_local) AS geojson_local,
     s."precision" AS precision_geographique,     s."precision" AS precision_geographique,
     n9.label_default AS niveau_precision_diffusion,     n9.label_default AS niveau_precision_diffusion,
 +    s.id_digitiser,
     s.id_nomenclature_sensitivity,     s.id_nomenclature_sensitivity,
     s.id_nomenclature_diffusion_level     s.id_nomenclature_diffusion_level
Ligne 64: Ligne 67:
      JOIN gn_meta.t_acquisition_frameworks af ON d.id_acquisition_framework = af.id_acquisition_framework      JOIN gn_meta.t_acquisition_frameworks af ON d.id_acquisition_framework = af.id_acquisition_framework
      LEFT JOIN ref_nomenclatures.t_nomenclatures n9 ON s.id_nomenclature_diffusion_level = n9.id_nomenclature      LEFT JOIN ref_nomenclatures.t_nomenclatures n9 ON s.id_nomenclature_diffusion_level = n9.id_nomenclature
-     LEFT JOIN ref_nomenclatures.t_nomenclatures n21 ON s.id_nomenclature_valid_status = n21.id_nomenclature +     LEFT JOIN ref_nomenclatures.t_nomenclatures n21 ON s.id_nomenclature_valid_status = n21.id_nomenclature 
 +</code> 
 +  * Vue '' gn_synthese.v_synthese_taxon_for_export_view '' : <code sql> 
 +CREATE OR REPLACE VIEW gn_synthese.v_synthese_taxon_for_export_view 
 +AS WITH s AS (SELECT DISTINCT cd_nom FROM gn_synthese.synthese )  
 + SELECT  
 + ref.nom_valide, 
 + ref.cd_ref, 
 + ref.nom_vern, 
 + ref.group1_inpn, 
 + ref.group2_inpn, 
 + ref.regne, 
 + ref.phylum, 
 + ref.classe, 
 + ref.ordre, 
 + ref.famille, 
 + ref.id_rang 
 + FROM s 
 + JOIN taxonomie.taxref t ON s.cd_nom = t.cd_nom 
 + JOIN taxonomie.taxref ref ON t.cd_ref = ref.cd_nom;
 </code> </code>
 ===== Ajout/Correction du référentiel géographique dans la base de données GeoNature ===== ===== Ajout/Correction du référentiel géographique dans la base de données GeoNature =====
Ligne 84: Ligne 106:
 WHERE type_code = 'COM';</code> WHERE type_code = 'COM';</code>
  
 +===== Corrections diverses sur la base =====
 +  * Corriger les droits de certaines tables attribuée //postgres// :
 +    * Se connecter à //psql// : ''sudo -u postgres psql''
 +    * Sélectionner la base //geonature2db// avec : ''\c geonature2db''
 +    * Exécuter les requêtes suivantes : <code sql>
 +ALTER TABLE taxonomie.taxref_bdc_statut OWNER TO geonatadmin;
 +ALTER TABLE taxonomie.taxref_bdc_statut_type OWNER TO geonatadmin;
 +</code>
 +    * Quitter //psql// avec : ''\q''
 +  * Ajout d'un index sur le champs ''observers'' de la table ''gn_synthese.synthese'' : <code sql>
 +CREATE INDEX i_synthese_observers ON gn_synthese.synthese USING btree (observers)
 +</code>
 ===== Import des données "cen-paca" au format d'échange dans GeoNature module Synthèse ===== ===== Import des données "cen-paca" au format d'échange dans GeoNature module Synthèse =====
   * Se connecter au serveur "db" en tant qu'admin : ''ssh geonat@db-paca-sinp''   * Se connecter au serveur "db" en tant qu'admin : ''ssh geonat@db-paca-sinp''
Ligne 116: Ligne 150:
   * Suivre la démarche décrite dans [[serveurs:installation:web-srv:geonature-atlas-mise-a-jour#procedure_de_mise_a_jour_des_donnees|la documentation de gestion des serveurs]]   * Suivre la démarche décrite dans [[serveurs:installation:web-srv:geonature-atlas-mise-a-jour#procedure_de_mise_a_jour_des_donnees|la documentation de gestion des serveurs]]
  
 +===== Configuration des permissions =====
 +  * Via UsersHub, changer le nom du groupe "Grp_en_poste" pour "Grp_utilisateurs"
 +  * Via GeoNature, module "Admin" > "Permissions", modifier les permissions par défaut comme suit :
 +    * Pour le groupe "Grp_Utilisateurs"
 +      * Pour le module "GeoNature" :
 +        * Lire les données => Appartenance : "**De tout le monde**"
 +        * Exporter les données => Appartenance : "**De tout le monde**"
 +      * Pour le module "Métadonnées" :
 +        * Lire les données => Appartenance : "**De tout le monde**"
 +      * Pour le module "Synthese (= Observations)" :
 +        * Lire les données => Appartenance : "**De tout le monde**" & Précision : "**Floutée**"
 +        * Exporter les données => Appartenance : "**De tout le monde**" & Précision : "**Floutée**"
 +    * Pour le groupe "Grp_admins" :
 +      * Pour le module "Synthese (= Observations)" :
 +        * Lire les données => Précision : "**Exacte**"
 +        * Exporter les données => Précision : "**Exacte**"
  • database/sinp-paca/import-donnees.1615233400.txt.gz
  • Dernière modification : 2021/03/08 19:56
  • de jpmilcent