database:sinp-paca:import-donnees

Différences

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

Lien vers cette vue comparative

Prochaine révision
Révision précédente
database:sinp-paca:import-donnees [2021/03/04 09:51] – créée 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 les vues d'exports =====
 +  * 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.
 +  * Vue '' gn_synthese.v_synthese_for_export '' : <code sql>
 +CREATE OR REPLACE VIEW gn_synthese.v_synthese_for_export
 +AS SELECT s.id_synthese,
 +    s.unique_id_sinp AS uuid_perm_sinp,
 +    s.unique_id_sinp_grp AS uuid_perm_grp_sinp,
 +    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,
 +    n21.label_default AS niveau_validation,
 +    s.validator AS validateur,
 +    s.observers AS observateurs,
 +    t.cd_ref,
 +    t.nom_valide,
 +    s.count_min AS nombre_min,
 +    s.count_max AS nombre_max,
 +    s.date_min::date AS date_debut,
 +    s.date_max::date AS date_fin,
 +    st_asgeojson(s.the_geom_4326) AS geojson_4326,
 +    st_asgeojson(s.the_geom_local) AS geojson_local,
 +    s."precision" AS precision_geographique,
 +    n9.label_default AS niveau_precision_diffusion,
 +    s.id_digitiser,
 +    s.id_nomenclature_sensitivity,
 +    s.id_nomenclature_diffusion_level
 +FROM gn_synthese.synthese s
 +     JOIN taxonomie.taxref t ON t.cd_nom = s.cd_nom
 +     JOIN gn_meta.t_datasets d ON d.id_dataset = s.id_dataset
 +     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 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>
 ===== 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 =====
 Il est nécessaire d'ajouter dans le référentiel géographique de GeoNature le contour du territoire du SINP. Il est nécessaire d'ajouter dans le référentiel géographique de GeoNature le contour du territoire du SINP.
Ligne 52: 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 84: 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.1614851482.txt.gz
  • Dernière modification : 2021/03/04 09:51
  • de jpmilcent