geosolutions-it / core-geonetwork

GNU General Public License v2.0
2 stars 5 forks source link

Metadata migration from RNDT 2.0 to 3.0 for existing catalogs #31

Closed tdipisa closed 3 years ago

tdipisa commented 3 years ago

We have to define a migration procedure of existing RNDT catalogs that are using GeoNetwork 2.10 RNDT to the new GN3 RNDT 2.0. This issue is referring to the draft doc available here. A proper evaluation is needed for this.

tdipisa commented 3 years ago

@etj please summarize here the steps to consider for this activity and please tell me what you need to start this (current client VM? DB?)

etj commented 3 years ago

Per procedere nell'investigazione dei passi di migrazione, serve conoscere il contenuto del catalogo da migrare. Chiederei pertanto:

Se il tutto è entrocontenuto in una VM, l'immagine VM va benissimo.

etj commented 3 years ago

I metadati totali sono 124. Alcuni di essi hanno dati associati. I metadati sono tutti pubblici e tutti assegnati ad un unico gruppo. Si prova ad esportarli via web da interfaccia del gn da migrare, si ottiene uno zip da circa 800 MB. Esplodendo lo zip, si ottiene una lista di directory:

drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:01db35f1-e189-4dbb-843e-e1f292487ed0/
drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:0c9618bc-c477-4b5d-b463-bfe7b787a17b/
drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:0ca823ec-6648-4ed2-adaf-14eb717e8281/
drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:0e314a6b-b122-47d0-88e7-9aa67446fe8c/
drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:11c28e15-cc4c-4a4a-996e-1366ce7d9431/
drwxrwxr-x   5 etj etj  4096 nov 20 17:23 cmfi:166cc35b-2e3e-4ccd-a72b-8be3d8955d63/
...

Il contenuto di ogni singola direcotry contiene il metadato, il dato (se presente) e alcune meta-meta informazioni, ossia di come il metadato è rappresentato internamente a geonetwork.

$ tree cmfi:fff8e741-fc09-4260-bdca-7e7de03700c4/
cmfi:fff8e741-fc09-4260-bdca-7e7de03700c4/
├── info.xml
├── metadata
│   ├── metadata.iso19139.xml
│   └── metadata.xml
├── private
│   └── vulnerabilita_acquiferi.zip
└── public

Zippando ogni singola directory in un file a parte, si ottiene uno zip nel formato MEF, il formato che GN usa per lo scambio interno di metadati, che si può quindi usare per reimportare il metadato in GN. Es.:

for dir in cmfi\:* ; do zip ../mefs/${dir}.zip $dir ; done

Questa la schermata di importazione ("Contribuisci" -> "importa nuovi record"): image

Il file di trasformazione viene applicato dopo che GN prova ad rilevare lo schema di appartenenza, quindi, avendo i metadati di origine metadataStandardName e metadataStandardVersion relativi alla vecchia versione RNDT, non saranno assegnati allo schema iso19139.rndt

etj commented 3 years ago

Una volta espando lo zip scaricato:

I batch di importazione andranno suddivisi per Ente, in modo da assegnare all'ente corretto i rispettivi metadati.

tdipisa commented 3 years ago

@etj ok grazie, chiederò al cliente di controllare quanto abbiamo importato. Nel frattempo aggiorna per favore la documentazione evidenziando meglio gli interventi manuali che devono essere comunque eseguiti da editor successivamente all'import, indicando qualche proprietà di metadato di riferimento (e.g. dataset prioritari, online resources, thumbnailes etc).