Apertura de datos con iCMS

En  octubre de 2007, en una de las conferencias de la SunLight Foundation se discutía sobre el modelo a seguir por los Organismos Públicos para realizar la apertura de datos almacenados electrónicamente. En este evento tienen su origen un conjunto de principios básicos a tener en cuenta en diseño de cualquier iniciativa de apertura de datos (que hoy día son incluidos en la Ley de Transparencia de diversos Organismos Públicos):

  • Completeness. Los Datos deben ser lo más completos que sea posible.
  • Primacy. Deben ser obtenidos en su origen, evitando la transformaciones intermedias.
  • Timeliness. Publicados en tiempo real, o actualizados siempre sea posible.
  • Ease of Physical and Electronic Access. Fácilmente accessibles.
  • Machine readability. Procesables electrónicamente.
  • Non-discrimination. Accesibles sin discriminación (disponibles para todos).
  • Use of Commonly Owned Standards. Publicados en formatos no proprietarios.
  • Licensing. Datos libres (el licenciamiento utilizado debe facilitar el acceso libre a los mismos).
  • Permanence. Se debe garantizar la permanencia en el tiempo de los conjuntos de datos publicados.
  • Usage Costs. Sin coste.

Es esta ocasión nos centraremos en los tres primeros enunciados (datos completos, obtenidos directamente desde la fuente y actualizados), pues representan (al menos, desde mi punto de vista) algunos de los aspectos más destacables de la Interfaz de Interoperabilidad de Contenidos Web (iCMS), esto es, la posibilidad de publicar conjuntos de datos obteniéndolos directamente desde su fuente, sin necesidad de recurrir a procesos de consolidación de los datos en repositorios centralizados (por ejemplo, mediante ETLs). De esta forma, siempre que se cumplan determinadas condiciones (que son establecidas en el proceso de configuración del conjunto de datos), los datos son ofrecidos completamente actualizados. Obviamente, para ofrecer esta posibilidad, ha sido necesario recurrir a mecanismos de caché e indexación con el objetivo de que el acceso a los datos no penalice el rendimiento de los back-ends (sistemas donde son generados/almacenados los datos).

Hace unas semanas, tuve la suerte de asistir como oyente al evento Gobierno Abierto: “Reto y Oportunidad” , donde en una de las mesas redondas uno de los ponentes presentaba un concepto que enmarca claramente las características descritas anteriormente:Real-Time Open Data.

Todo esto es posible gracias al sistema de notificaciones implementado en iCMS. En primer lugar, los back-ends notifican al servidor iCMS (a través de los drivers iCMS) los cambios que se producen en los datos,  con el objetivo de las actualizaciones sean indexadas. Por otro lado,  una vez indexados los cambios, el servidor iCMS procede a notificar dicho cambio a todos los sistemas suscritos al conjunto de datos en el que se ha producido el evento. Este proceso es descrito en el siguiente diagrama:

notificaciones icms

En el siguiente gráfico se presenta a muy alto nivel el rol que desempeña iCMS dentro de una iniciativa de apertura de datos:

Arquitectura Open Data basada en iCMS

En futuras entradas, se detallará el resto de capacidades/funcionalidades de iCMS, así como los procesos de integración con CKAN yVirtuoso.

Deja un comentario