Geoplateforme / geoplateforme.github.io

Site d'accueil de la documentation Géoplateforme
https://geoplateforme.github.io/
7 stars 1 forks source link

Rapport d'étonnement : stored-data correspond au niveau geopackage (ou lot de données) et non à la table #4

Closed IGNF-Xavier closed 10 months ago

IGNF-Xavier commented 12 months ago

Entité(s) concernée(s)

stored data

Route API concernée

None

Méthode de la route API

None

Description détaillée du bug

La DREAL-N a trouvé étonnant que le store_data corresponde au niveau geopackage (ou lot de donnée) et non à la table. L'objet table est le seul "objet" n'ayant pas d'uuid.

Dolite commented 12 months ago

Une stored data est effectivement un jeu de donnée. En vecteur, cela correspond à un schéma : les tables, les vues, les fonctions...

On peut par la suite (lors de la configuration par exemple) préciser quelle table dans la stored data est à utiliser. Quel serait le besoin de cibler une table particulière par un UUID ? Il est toutefois possible de ne faire que des stored data à une table, si cela correspond mieux à leur usage.

jpotel commented 11 months ago

J'apporte quelques précisions. Partout dans le swagger UI on parle de donnée dans les différentes requêtes liées aux "données stockées" (supprime la donnée, récupère les information sur la donnée,...). Par raccourci pour moi donnée = dataset = table, vue ou couche shp alors que là çà ressemble plus à une série de données. Je pensais ainsi qu'il était possible de changer le nom d'une table alors que non. Il y a peut-être simplement un problème sémantique. Enfin dans la geoplateforme tous les objet que j'ai manipulé (user, datastore, metadata, annexe,...) possède un uuid sauf les tables et les vues. Ca me paraissait étonnant.

Dolite commented 11 months ago

Certaines entités sont plus des contenants : les livraisons (ensemble de fichiers téléversés) et les données stockées (ensemble de données dans un format exploitable par les services de diffusion). Pour une archive, ce sera plusieurs fichiers, pour une pyramide ce sera plusieurs dalles dans plusieurs niveaux. Et pour une donnée vecteur, ce sera un ensemble de tables. Tables et vues ne sont pas vues comme des entités Entrepôt, elles sont cachées derrière le concept plus global de donnée stockée.

Cela vient aussi du fait que l'API Entrepôt ne manipule pas les données directement, mais permet de lancer les traitements qui le feront. Changer le nom d'une table par exemple n'est pas une tâche que l'Entrepôt peut faire, il n'y avait donc pas la nécessité d'identifier chaque élément de la donnée.