Gestion des métadonnes
Les outils de gestion de la base de métadonnées permettent de créer une base de métadonnées SQLite PyCTOH, insérer des nouvelles traces et d’en supprimer.
1- Initialisation du catalogue
L’initialisation consiste à instancier la classe Catalogue en définissant
le catalogue utilisé catalogue_filepath (fichier yaml du catalogue). Sur les
serveurs du LEGOS (santo et boto) le catalogue est défini par la varaible
d’environnement “ALT_CATALOGUE”.
>>> from pyctoh.db.catalogue import Catalogue
>>> import os
>>> catalogue_filepath = os.environ['ALT_CATALOGUE'] #
>>> cat=Catalogue(filepath=catalogue_filepath)
2- Initialisation des métadonnées
L’initialisation consiste instancier la classe Metadata appelé par la
méthode init_metadata de la classe Catalogue. Celle-ci initialise
un nouveau produit à partir d’une base modèle vierge.
>>> prod_name="mis_a_supp_vers_sgdr" # Nom du nouveau produit
>>> md=cat.init_metadata(prod_name)
3- Création
La création d’un produit consiste à définir ces caractéristiques dans les tables: mission, phase, product, gdrtype et param
>>> cat.create_metadata("cs2_b_ice_d_gdr")
4- Insertion
L’insertion consiste à renseigner le contenu des fichiers contenus dans la SAF dans les tables : files, cycle, track et zone_geo
>>> cat.insert_metadata("cs2_b_ice_d_gdr")
>>> cat.insert_metadata("cs2_b_ice_d_gdr",req_gdrtype='ctoh1')
>>> cat.insert_metadata("cs2_b_ice_d_gdr",req_cycle_num=10)
>>> cat.insert_metadata("cs2_b_ice_d_gdr",req_gdrtype='ctoh1',req_cycle_num=10, req_track_num=100)
5- Date update
La mise à jour de la table date se fait après chaque insertion. Cette table contient l’étendu temporelle du produit : date, cycle et trace.
>>> md.update_date_metadata("cs2_b_ice_d_gdr")
6- Suppression
>>> md.remove_metadata("cs2_b_ice_d_gdr","ctoh2") # Supprime le contenu du gdrtype "ctoh2"
>>> md.remove_metadata("cs2_b_ice_d_gdr", "sgdr", cycle_num=501)
>>> md.remove_metadata("cs2_b_ice_d_gdr","sgdr", cycle_num=501, track_num=269)