Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Inferir y agregar metadatos faltantes a los catálogos, que monitoreo puede estimar #87

Open
abenassi opened this issue Nov 16, 2018 · 1 comment

Comments

@abenassi
Copy link
Collaborator

abenassi commented Nov 16, 2018

Contexto

Hay campos que no esperamos que los nodos completen o utilicen correctamente, generalmente porque son tediosos de mantener y deberían ser automatizados.

Propuesta

Implementar como parte de la rutina de lectura de catálogos de django-datajsonar, el cálculo de algunos campos de metadatos adicionales (y los auxiliares que sea necesario) y su agregado a los catálogos que se leen (ie. estos metadatos nuevos deben servir para su uso dentro de monitoreo, pero también deben llegar al nodo central, cuando se federan).

Campos de manejo de fechas (aplicar a nivel catalog, dataset y distribution):

  • issued: este campo viene de los nodos, si está vacío y no había ningún valor generado, se completa con la fecha de hoy (se considera que la entidad fue publicada por primera vez, cuando django-datajsonar lo lee).

  • dataModified: este campo no existe en el perfil nacional de metadatos. Se llena con la última fecha en la que el hash de la distribución descargada fue distinto que el anterior (donde se verifica una modificación de los datos). Se "hereda" hacia arriba: un dataset cambia su dataModified cuando alguna de las distribuciones contenidas en él lo cambia. Un catálogo cambia su dataModified cuando alguno de los datasets contenidos en él lo cambia. Atención! Para esto se usa un hash interno calculado por monitoreo apertura, pero no el hash que viene (o no viene) de los metadatos.

  • metadataModified: este campo no existe en el perfil nacional de metadatos. Sigue un comportamiento igual a dataModified, pero sólo con los cambios en metadatos.

  • modified: este campo existe en el perfil nacional de metadatos. Si viene de los nodos, se respeta el valor que ellos pusieron. Si está vacío, se usa la fecha más reciente entre metadataModified y dataModified.

Estos 4 campos deben calcularse a nivel de catálogo, dataset y distribución. Siempre siguen la misma lógica y se "heredan hacia arriba".

Hay que implementarlos siempre como "lo busco en el data.json y, si no está, actúo por mi cuenta para completarlo".

Otros campos

Implementar el campo byteSize a nivel de distribución. Si el nodo no especifica el tamaño del archivo, este se calcula automáticamente a partir del archivo descargado y se completa el metadato.

@abenassi abenassi removed the backlog label Jan 4, 2019
@abenassi abenassi changed the title Agregar metadatos enriquecidos como parte de la función de lectura de un data.json Inferir y agregar metadatos faltantes a los catálogos, que monitoreo puede estimar Jun 20, 2019
@lucaslavandeira
Copy link
Contributor

Trackeado en issues separados: #161 #162 #163 #164 #165

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants