SPW-DIG / metawal-core-geonetwork

Metawal - Catalogue pour l'information géographique de Wallonie
http://metawal.wallonie.be
GNU General Public License v2.0
3 stars 1 forks source link

Stockage documents annexés #741

Open marceaulouis opened 2 years ago

marceaulouis commented 2 years ago

On aimerait ne plus stocker les documents annexés (lyr, modèles, pdf, etc.) directement sur MW mais sur le serveur de téléchargement (déjà le cas pour les zip).

Plusieurs options sont possibles selon Dominique

  1. upload des documents via api FME server en parallèle de MW
  2. upload habituel et FME server se connecte pour récupérer les nouveaux doc
  3. upload via MW directement sur le répertoire FME server

Les options 2 et 3 seraient les plus simples point de vue utilisation MW.

On aurait besoin de savoir comment sont stockés les documents à l'heure actuelle : répertoire basé sur mduiid ? D'autres choses sont écrites à la racine ? Peut-on sélectionner un autre espace pour stocker ?

ex d'URL DL : https://geoservices.wallonie.be/geotraitement/spwdatadownload/get/be875ddb-ffd9-4c23-a013-53063a366b5b/MODIF_PS_SHAPE.ZIP

fxprunayre commented 2 years ago

On aurait besoin de savoir comment sont stockés les documents à l'heure actuelle : répertoire basé sur mduiid ?

Les données uploadées dans l'éditeur sont stockées dans le datadir. Le rangement se fait sur la base de l'id dans la table metadata (pas l'uuid) et il y a un répertoire par groupe de 100. Pour chaque fiche il peut y avoir un répertoire public / private selon les droits d'accès sur les fichiers.

image

D'autres choses sont écrites à la racine ?

Dans le répertoire data ? oui, il y a des caches (pour les formatters, js/css, les logos)

Peut-on sélectionner un autre espace pour stocker ?

Oui, il y a des "stores" pour S3, CMIS, JCloud et FileSystem - donc on peut mettre le datadir dans différents types de dépôts....

image

mais là, ce serait juste de stocker dans un autre répertoire ? avec un autre mode de rangement ?

fxprunayre commented 2 years ago

2 options:

marceaulouis commented 2 years ago

Les deux options sont possibles, API plus facile car on peut gérer les accès nous mêmes (création compte + token)

api: http://st5387v.wallonie.intra/fmerest/apidoc/v3/#!/resources/add_post_14

/fmerest/v3/resources/connections/SPW_OUTPUT/UUID/filesys?overwrite=true

URL public : https://geoservices.wallonie.be/geotraitement/spwdatadownload/get/*UUID*/filename

Attention, server test n'est pas accessible, Dominique pourra donner accès uniquement en Valid

fxprunayre commented 2 years ago

@marceaulouis il nous faudrait un accès à un serveur de test et à la doc précise pour faire un upload et une suppression ? Merci.

marceaulouis commented 1 year ago

Token envoyé par mail (20/07) avec quelques infos

fxprunayre commented 1 year ago

FMEStore générique

Créer un FMEStore qui repose sur l'API FME (cf. https://docs.safe.com/fme/html/FME_REST/apidoc/v3/index.html#!/resources/download_get_10)

Spécifique Metawal

davinciagf commented 1 year ago

Un FMEStore a été déployé dans la dernière version de MW en test. Ce dernier gère le stockage des fichiers liés à chaque nouvelle fiche.

Exemple réalisé sur : https://metawal4.test.wallonie.be/geonetwork/srv/eng/catalog.search#/metadata/5897cfba-3cbc-4a93-9d25-cce49aa9d215

image

Le thumbnail est bien présent sur le FME; voici le retour après interrogation du serveur FME (via api FME) pour cette même fiche

image

vbombaerts commented 1 year ago

On vient de discuter 2 points avec Dominique :

  1. L'espace de stockage lié à une fiche sur FME est créé au moment de la création de la fiche. Donc c'est Metawal qui pilote la création des nouveaux espaces de stockage.
  2. Si l'espace de stockage existe déjà, il ne doit pas être supprimé puis recréé. Il est conservé

2 use cases pour le point 2 :

Question subsidaire : si on exporte une fiche en MEF, le MEF contiendra-t-il uniquement le contenu ajouté par Metawal ou aussi le contenu ajouté par ailleurs ? Ne faudrait-il pas prévoir un mécanisme qui permet de sélectionner les fichiers exportés avec le MEF (par exemple sur base des extensions de fichier) ?

fxprunayre commented 1 year ago

Question subsidaire : si on exporte une fiche en MEF, le MEF contiendra-t-il uniquement le contenu ajouté par Metawal ou aussi le contenu ajouté par ailleurs ?

Tout. Donc si y'a 1Go de données, ca va faire un gros fichier.

Ne faudrait-il pas prévoir un mécanisme qui permet de sélectionner les fichiers exportés avec le MEF (par exemple sur base des extensions de fichier) ?

Ca va être compliqué avec uniquement l'extension non ?

Une autre approche serait de définir par fichier lesquels vont dans le MEF - mais ça veut dire ajouter cette information quelquepart (sans doute en base de données).

image

J'aurais même tendance à déplacer cette notion public/private en base de données du coup et donc avoir une structure simple pour le stockage et des attributs sur les fichiers en db ... On pourrait donc choisir d'avoir des MEF avec données ou uniquement avec les liens définis dans la fiche... Ca a également un impact sur le moissonneur GN - MEF avec données serait forcément plus lent.