accesskey_mod_content

El nou mecanisme de publicació de dades Linked Data Event Streams (LDES) i el seu ús en les administracions

  • Escoltar
  • Imprimir PDF
  • Compartir

18 gener 2024

Les iniciatives de publicació de dades han experimentat un enorme desenvolupament com a mecanisme fonamental per a desbloquejar el potencial d'estes dades, permetent que governs, organitzacions i ciutadans accedisquen, utilitzen i compartisquen.

En l'era digital actual, la informació és un actiu estratègic que impulsa la innovació, la transparència i la col·laboració en tots els sectors de la societat. 

No obstant açò, existixen encara molts reptes tant per a publicadors de dades com per a consumidors dels mateixos. Aspectos com el manteniment de les APIs (Application Programming Interfaces) que ens permeten accedir i consumir els conjunts de dades publicades o la correcta replicació i sincronització de conjunts de dades canviants seguixen sent desafiaments molt rellevants per a estos actors.

Els Linked Data Event Streams (LDES) són un nou mecanisme de publicació de dades que poden ajudar a solucionar estos reptes. 

Destil·lant els aspectes claus de LDES

Quan des de la  Universitat de Gant  es va començar a treballar en un nou mecanisme per a la publicació de dades obertes, la pregunta a la qual pretenien donar resposta era: Quin és la millor API possible que podem dissenyar per a exposar conjunts de dades obertes?

En l'actualitat, els organismes publicadors de dades recorren a múltiples mecanismes per a publicar els seus diferents conjunts de dades. D'una banda, és fàcil trobar-nos  API s. Destaquen les de tipus SPARQL, estàndard per a consulta de dades enllaçades ( Link Data ), però també de tipus REST o de tipus WFS, per a l'accés a conjunts de dades amb component geoespacial. D'altra banda, és molt comú que trobem la possibilitat d'accedir a bolcats de dades en diferents formats (i.i. CSV, JSON, XLS, etc.) que puguem descarregar per a la seua utilització.

En el cas dels bolcats de dades, és molt fàcil trobar-nos amb problemes de sincronització. Açò ocorre quan, després d'un primer bolcat, es produïx un canvi que requerix la modificació del conjunt de dades original com, per exemple, el canvi del nom d'un carrer en una llista de carrers prèviament descarregada. Davant este canvi, si el tercer opta per modificar el nom del carrer sobre el bolcat inicial en lloc d'esperar al fet que el publicador actualitze les seues dades en el repositori mestre per a realitzar un nou bolcat, les dades manejades pel tercer quedaran desincronizados enfront dels manejats pel publicador. D'igual forma, si és el publicador el que actualitza el seu repositori mestre però estos canvis no són descarregats pel tercer, tots dos manejaran diferents versions del conjunt de dades.

D'altra banda, si el publicador oferix l'accés a les dades a través d'APIs de consulta, en lloc de mitjançant bolcats de les dades als tercers, se solucionen els problemes de sincronització, però la construcció i manteniment d'un alt i variat volum de les mateixes suposa un elevat esforç als publicadors de dades.

LDES busca solucionar estes diferents problemàtiques aplicant el concepte de Linked Data a un event stream o flux de dades. Segons la definició que apareix en la seua pròpia  especificació , un Linked Data Event Stream (LDES) és una col·lecció d'objectes immutables on cada objecte està descrit en ternes RDF.

En primer lloc, el fet que els LDES aposten per Linked Data aporta principis de disseny que permeten combinar dades diverses i/o pertanyents a diferents fonts, així com la seua consulta a través de mecanismes semàntics que permeten llegibilitat tant per humans com per màquines. En resum, aporta interoperabilitat i consistència entre conjunts de dades, i facilita per tant la seua cerca i descobriment.

D'altra banda, els event streams o fluxos de dades, permeten als consumidors replicar la història dels conjunts de dades, així com sincronitzar els canvis recents. Qualsevol nou registre afegit a un conjunt de dades o qualsevol modificació dels registres existents (en definitiva, qualsevol canvi), es registra com un nou esdeveniment incremental en el LDES que no alterarà els esdeveniments anteriors. Per tant, poden publicar-se i consumir-se dades com una seqüència d'esdeveniments, la qual cosa és útil per a dades que canvien amb freqüència, com a informació en temps real o informació que patix actualitzacions constants, ja que permet la sincronització de les últimes actualitzacions sense necessitat de fer una nova descàrrega completa de tot el repositori mestre després de cada modificació.

En un model d'este tipus, l'editor solament necessitarà desenvolupar i mantindre una API, el LDES, en lloc de múltiples APIs com WFS, REST o SPARQL. Els diferents tercers que desitgen utilitzar les dades publicades es connectaran (cada tercer implementarà el seu client LDES) i rebran els esdeveniments dels streams als quals s'hagen subscrit. Cada tercer crearà a partir de la informació recaptada les APIs específiques que considere oportunes sobre la base del tipus d'aplicacions que vullguen desenvolupar o fomentar. En definitiva, el publicador no haurà de resoldre totes les potencials necessitats que tinga cada tercer en la publicació de dades, sinó que donant un interfície LDES (API base mínima) cada tercer se centrarà en la seua problemàtica.

A més, per a facilitar l'accés en grans volums de dades o a dades que poden estar distribuïts en diferents fonts, com un inventari de punts de recarrega elèctrica a Europa, LDES aporta la capacitat de fragmentació dels conjunts de dades. A través de l'especificació  TREE  (en anglés, arbre), LDES permet establir diferents tipus de relacions entre fragments de dades. Esta especificació permet publicar col·leccions d'entitats, anomenats membres, i oferix la capacitat de generar una o més representacions d'estes col·leccions. Estes representacions s'organitzen com a vistes, distribuint els membres a través de pàgines o nodes interconnectats mitjançant relacions. Així, si desitgem que les dades es puguen consultar a través d'índexs temporals, es podrà establir una fragmentació temporal i accedir solament a les pàgines d'un interval temporal. D'igual forma, es podran plantejar índexs alfabètics o geoespacials i així un consumidor podrà accedir només a aquelles dades necessàries sense la necessitat de realitzar el “bolcat” del conjunt de dades complet.

Quines conclusions podem extraure de LDES?

En este post hem observat el potencial de LDES com a mecanisme per a la publicació de dades. Alguns dels aprenentatges més rellevants són:

  • LDES perseguix facilitar la publicació de dades a través d'APIs base mínimes que servisquen com a punt de connexió per a qualsevol tercer que desitge consultar o construir aplicacions i servicis sobre conjunts de dades.
  • La construcció d'un servidor LDES, no obstant açò, té cert nivell de complexitat tècnica a l'hora d'establir l'arquitectura necessària per al maneig dels fluxos de dades publicades i la seua adequada consulta per part de consumidors de dades.
  • El disseny de LDES permet la gestió tant de dades amb una elevada taxa de canvis  (i.i. dades provinents de sensors), com a dades amb una baixa taxa de canvis (i.i. dades provinents d'una llista de carrers). Tots dos escenaris poden manejar qualsevol modificació del conjunt de dades com un flux de dades.
  • LDES soluciona de forma eficient la gestió de registres històrics, versions i fragments de conjunts de dades. Per a açò es recolza en l'especificació TREE podent establir diferents tipus de fragmentació sobre el mateix conjunt de dades.

Font original de la notícia(Obri en nova finestra)

  • Informació i dades del sector públic