JDev – Atelier Datalift - DevLOG
Transcript of JDev – Atelier Datalift - DevLOG
JDev - 6 septembre 2013 Elévation de données avec Datalift
Your business technologists. Powering progress
JDev – Atelier Datalift
RDF, Linked (Open) Data & Datalift
JDev - 6 septembre 2013 Elévation de données avec Datalift
Le Linked Data
2
▶ Publier des données structurées sur le Web en les reliant entre elles pour constituer un réseau global d'informations.
▶ En finir avec les silos de données isolés.
▶ S'appuyer sur les standards du Web.
▶ Partager l'information entre machines.
▶ Faciliter la navigation par les êtres humains.
http://damfoundation.org/2012/02/europeanas-introduction-to-linked-open-data/
JDev - 6 septembre 2013 Elévation de données avec Datalift
v Utiliser des URI
v Utiliser des URI accessibles via HTTP
v Donner accès aux données en utilisant les standards RDF et SPARQL
v Exprimer les URI des objets liés
Tim Berners-Lee, « On the next Web », (conférence TED, février 2009)
« Raw Data now! »
Source : http://www.w3.org/2009/Talks/0204-ted-tbl/#%281%29
Les 4 principes du Linked Data :
Le Linked Data ou Web des données
JDev - 6 septembre 2013 Elévation de données avec Datalift
Open Data Linked Open Data (LOD)
C’est un nouveau monde de données pour les données ouvertes
4
Formats propriétaires / hétérogènes RDF/ SPARQL
JDev - 6 septembre 2013 Elévation de données avec Datalift
2009
2011
The LOD Cloud
Source : http://lod-cloud.net/
JDev - 6 septembre 2013 Elévation de données avec Datalift
RDF - Le triplet, la molécule de base
Toute connaissance peut être ramenée à un ensemble équivalent de triplets (sujet, prédicat, objet).
RDF
Prédicat
doc.html a pour auteur Fabien et a pour thème la Musique
doc.html a pour auteur Fabien doc.html a pour thème Musique
doc.html
Musique
Fabien
auteur
thème
6
JDev - 6 septembre 2013 Elévation de données avec Datalift
RDF signifie :
Resource Pages, images, vidéos, ... (tout ce qui peut avoir une URI)
Description Attributs, fonctions et relations des ressources
Framework Modèle abstrait de ces descriptions
RDF – Un modèle abstrait
JDev - 6 septembre 2013 Elévation de données avec Datalift
URI – Une des bases de l’architecture du Web
URI : Universal Resource Identifier • Pérenne • Maîtrisable • Extensible
à URL : Universal Resource Locator
JDev - 6 septembre 2013 Elévation de données avec Datalift
RDF - Qu’est-ce que l’élévation de données ?
9
▶ Exemple d’élévation de données dans un datacenter… Les faits – Les faits : Le superdome 453 qui est dans de la salle Renoir dont la température est de
16°C et la climatisation en marche, est un serveur HP dont le constructeur garantit le bon fonctionnement jusqu’à 26°C.
▶ Leur réécriture – Le superdome 453 est dans la salle Renoir – La salle Renoir est à la température de 16°C – La climatisation de la salle Renoir est en marche – Le superdome 453 est un serveur HP – HP garantit le bon fonctionnement des superdomes jusqu’à 26°C
▶ Ce sont des phrases régulièrement formées
D’un sujet d’un prédicat d’un objet Le superdome 453 est dans la salle Renoir La salle Renoir est à la température de 16°C La climatisation de la salle Renoir est en état de marche Le superdome 453 est un serveur HP Les superdomes sont garantis de bien fonctionner jusqu’à 26°c
453
16 26
serveur
Renoir
superdome
MCD
JDev - 6 septembre 2013 Elévation de données avec Datalift
10
RDF - Qu’est-ce que l’élévation de données ?
JDev - 6 septembre 2013 Elévation de données avec Datalift
RDF - Qu’est-ce que l’interconnexion ?
11
Paris
Population
2.211.297
Données statistiques
Paris : Capitale de la France Lat : 48°512’24’’ N Long : 2°21’07’’ E Population : 2.211.297 habitants
Paris
Latitude
48°51′ 24″ N
Longitude
2°21′ 07″ E Paris
Données géographiques
Les données s’enrichissent mutuellement au bénéfice du lecteur.
JDev - 6 septembre 2013 Elévation de données avec Datalift
12 12
RDF - Qu’est-ce que l’interconnexion ?
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Bases de données spécialisées RDF – Pas de schéma de données prédéfini ou imposé
– Partitionnement des données en « graphes nommés » (entités administratives)
– Support de l’inférence de données
▶ Natives
– Sesame, OWLIM, Virtuoso, AllegroGraph, BigData, Jena (Fuseki / TDB)… ▶ Ou basées sur des bases de données relationnelles
– Sesame, Oracle, Jena (SQL DB)…
▶ Scalables
– Plusieurs milliards de triplets par nœud
▶ Langage de requêtage & manipulation évolué : SPARQL
RDF – Les triple stores
JDev - 6 septembre 2013 Elévation de données avec Datalift
« SPARQL Protocol And RDF Query Language » ▶ Langage défini par le W3C
– SPARQL 1.0 (2008) : lecture seule – SPARQL 1.1 (2013) : modification
des données ▶ Points d’accès (endpoints) normalisés
– HTTP (REST) – SOAP – Fédération – Graph Access Protocol
▶ Extensions – GeoSPARQL
SPARQL – Un langage et un protocole
JDev - 6 septembre 2013 Elévation de données avec Datalift
1. Les ressources liées à 1 par le prédicat « rouge » : <1> <rouge> ?resources 2. Les chaînes liées à ces ressources par le prédicat « bleu » : ?resources <bleu> ?string
Soit le graphe suivant enregistré dans une base de données RDF (triple store) :
SPARQL permet d’extraire un sous-ensemble de ce graphe par expression de contraintes sous la forme d’équations
Je cherche les ressources liées à 1 par prédicat « rouge » et les chaînes de caractères liée à ces ressources par le prédicat « bleu » :
Exemple :
SPARQL – Requêtage sur graphes
JDev - 6 septembre 2013 Elévation de données avec Datalift
Elever la donnée
= Passer
de la donnée brute à la donnée sémantique
interconnectée
Datalift – L’élévateur de données
JDev - 6 septembre 2013 Elévation de données avec Datalift
Datalift – La technologie en quelques mots
17
Raw data Raw data
Raw data
Applica,on Visualisa'on
DA TA
Linked
Vocabulaire Vocabulaire
Vocabulaire
▶ Datalift est une plateforme open source. Elle intègre de nombreux modules et est conçue pour le passage à l’échelle (virtualisation, cloud).
▶ L’utilisateur gère des processus d’élévation et les exécute. Un processus prend en entrée des jeux de données brutes et hétérogènes. Des métadonnées, ajoutées à l’aide de vocabulaires, convertissent les sources. Puis les liens entre les concepts des vocabulaires sollicités permettent d’enrichir les données.
▶ L’exploitation des données résultantes peut prendre la forme
– d’applications utilisant des web services d’accès aux données,
– de production de nouveaux jeux de données interconnectées et sémantisées
JDev - 6 septembre 2013 Elévation de données avec Datalift
Datalift - Cinématique
18
L’élévation et l’interconnexion de jeux de données
– Le dispositif prend en compte des données brutes de toutes provenances, formats et structures.
– Ces données sont dans des blocs statiques, des datasets ou jeux de données.
– Pour les transformer en données du web des données, il faut déterminer le vocabulaire (sélection d’ontologie) qui va permettre leur expression en clair (conversion).
– Les données converties ont la forme de triplets (sujet, prédicat, objet), ce sont désormais des données publiables dans le web des données.
– Les données des blocs convertis sont ensuite interconnectées avec les données déjà publiées.
– Cet enrichissement est la dernière phase du processus d’élévation de données.
– La valeur des données résultantes est augmentée et leur exploitation pourra en profiter.
Exploitation
Interconnexion
Publication
Conversion
Sélection
Données brutes
Données exploitées
DataSet
DataSet
DataSet
DataSet
DataSet
DataSet DataS
et
DataSet
DataSet DataS
et
DataSet
DataSet DataS
et
DataSet
DataSet DataS
et DataSet
DataSet DataS
et
Externes Internes
JDev - 6 septembre 2013 Elévation de données avec Datalift
Objectif - Des données 5 étoiles
19
▶ 2010 : Lors de la « Gov 2.0 Expo », Tim Berners Lee a présenté une échelle d’ouverture des données devenue célèbre et qui fait référence
▶ ★ Mettre vos données sur le web (dans n’importe quel format) … et penser à expliciter la licence
▶ ★★ Mettre vos données dans un format structuré (ex. une feuille Excel plutôt qu’une image scannée d’un tableau)
▶ ★★★ Préférer un format non-propriétaire (ex. CSV plutôt que Excel)
▶ ★★★★ Utiliser des URL pour identifier les choses pour que d’autres personnes puissent pointer vers vos données
▶ ★★★★★ Lier vos données avec d’autres données pour mieux contextualiser vos données
http://lab.linkeddata.deri.ie/2010/star-scheme-by-example/
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Serveur d’applications JEE (Tomcat, JBoss...) – Fichier WAR (Web ARchive) + environnement de travail
– Triple stores locaux ou distants – Multi-utilisateur (contrôle d’accès)
▶ Wrapper
– Script de lancement : Jetty + Datalift + Sesame (+ quelques modules)
– Mono-utilisateur – Un environnement par utilisateur système :
– Windows : %APPDATA%\Datalift
– Mac OS X : ~/Library/Application Support/Datalift (sauf caches & logs)
– Linux : ~/.datalift
Datalift - Installation
JDev - 6 septembre 2013 Elévation de données avec Datalift
Datalift – Environnement de travail (Wrapper)
ß Configuration Datalift ß Configuration des traces
ß Librairies partagées (drivers)
ß Modules propres à l’utilisateur
ß Bases de données RDF Sesame
ß Stockage fichiers interne, ß Public, et ß Fichiers sources des projets
ß Applications web propres à l’utilisateur (e.g. admin. Sesame)
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Elévation de données avec Datalift
– Kiosques de la ville de Paris : conversion, transformation et consommation
▶ Croisement de données en SPARQL
– Catalogues d’étoiles (Datalift) – Intégration de données hétérogènes (EEA)
▶ Linked Open Data
– INSEE : données ouvertes
– IGN : publication de données « semi-ouvertes »
Ateliers & cas d’utilisation
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Données Open Data classiques : Kiosques de la ville de Paris
– Format : CSV
▶ Conversion en RDF
– Transformation brute (« direct mapping »)
▶ Transformation vers un vocabulaire standard
– Ontologie vCard (W3C)
▶ Enrichissement de données (démo)
– Données GPS (Google)
▶ Publication
▶ Consommation
– Requêtage SPARQL
– Fusion Google Maps (démo)
Atelier 1 – Elévation de données avec Datalift
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 1 : Récupération des données
http://opendata.paris.fr/opendata/jsp/site/Portal.jsp
Atelier 1 – Elévation de données avec Datalift
1
2
3
http://datalift.si.fr.atosorigin.com/datalift/project/kiosques-reduit/source/kiosques-ouverts-a-paris-csv
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 2 : Import des données CSV
Atelier 1 – Elévation de données avec Datalift
1
2
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 3 : Conversion directe de CSV vers RDF
Atelier 1 – Elévation de données avec Datalift
1
2
3
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 3 : Sélection de l’ontologie (LOV)
Atelier 1 – Elévation de données avec Datalift
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 4 : Conversion vers l’ontologie vCard
Atelier 1 – Elévation de données avec Datalift
1
2
3
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 4 : Conversion vers l’ontologie vCard (suite)
Atelier 1 – Elévation de données avec Datalift
4
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Etape 5 : Publication & Consommation
Atelier 1 – Elévation de données avec Datalift
1
2
3
http://datalift.si.fr.atosorigin.com/datalift/donutsapp
Démo : fusion SPARQL - Google Maps
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Données Open Data classiques : 2 catalogues d’étoiles
– Format : CSV
▶ Conversion en RDF
– Transformation brute (« direct mapping »)
▶ Requête SPARQL de rapprochement des données
– Trouver les étoiles présentes dans les 2 catalogues
Atelier 2 – Croisement de données
JDev - 6 septembre 2013 Elévation de données avec Datalift
Atelier 2 – Croisement de données
▶ Etape 1 : Récupération des données
http://vizier.u-strasbg.fr/viz-bin/VizieR
▶ Catalogues : – 2mass : http://datalift.si.fr.atosorigin.com/datalift/project/etoiles/source/2mass-csv
– usno500 : http://datalift.si.fr.atosorigin.com/datalift/project/etoiles/source/usno500-csv
JDev - 6 septembre 2013 Elévation de données avec Datalift
Atelier 2 – Croisement de données
▶ Etape 2 : Import des données CSV
1
2
JDev - 6 septembre 2013 Elévation de données avec Datalift
Atelier 2 – Croisement de données
▶ Etape 3 : Conversion directe de CSV vers RDF
x2
JDev - 6 septembre 2013 Elévation de données avec Datalift
Atelier 2 – Croisement de données
▶ Etape 4 : Requêtage SPARQL
JDev - 6 septembre 2013 Elévation de données avec Datalift
Atelier 2 – Croisement de données
▶ Etape 4 : Requêtage SPARQL (détail)
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> PREFIX u:<http://…/project/etoiles/source/usno500-csv-rdf-1#> PREFIX m:<http://…/project/etoiles/source/2mass-csv-rdf-1#>
SELECT * WHERE {
?s1 u:dej2000 ?Decl1 ; u:raj2000 ?AD1 .
?s2 m:dej2000 ?Decl2 ; m:raj2000 ?AD2 .
BIND (abs(xsd:decimal(?AD1) - xsd:decimal(?AD2)) as ?deltaAD) BIND (abs(xsd:decimal(?Decl1) - xsd:decimal(?Decl2)) as ?deltaDecl)
FILTER (?deltaAD < 0.00001)
FILTER (?deltaDecl < 0.00001) } LIMIT 20
JDev - 6 septembre 2013 Elévation de données avec Datalift
Cas d’utilisation 1 – Agence Européenne de l’Environnement
Avant
Formats propriétaires Référentiels hétérogènes
JDev - 6 septembre 2013 Elévation de données avec Datalift
Cas d’utilisation 1 – Agence Européenne de l’Environnement
Demandes
▶ Données au seul format RDF
– Autres formats refusés : CSV, Excel…
– Utilisation de vocabulaires et référentiels (libres)
▶ Mise à disposition de fichiers (HTTP)
– Accès par web services refusé
▶ Mise à disposition d’un catalogue des jeux de données disponibles
– Format imposé VoID (RDF)
JDev - 6 septembre 2013 Elévation de données avec Datalift
Cas d’utilisation 1 – Agence Européenne de l’Environnement
Mise en œuvre
▶ Mise en correspondance des référentiels des états membres
– Via une ontologie :
▶ Utilisation d’un triple store RDF supportant l’inférence
– Prise en compte transparente des correspondances
▶ Chargement de tous les jeux de données dans ce triple store
– Interrogation SPARQL
http://eurostat.europa.eu/countries#UK = http://eea.europa.eu/countries.rdf#GB
JDev - 6 septembre 2013 Elévation de données avec Datalift
Cas d’utilisation 1 – Agence Européenne de l’Environnement
Après
JDev - 6 septembre 2013 Elévation de données avec Datalift
Cas d’utilisation 1 – Agence Européenne de l’Environnement
Exemple : Avenir des population de loutres
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Publication de données avec Datalift – Données géographiques : données du Code officiel géographique (COG) incluant
régions, départements, arrondissements, cantons et communes – Codes et nomenclatures : nomenclature d'activités française (NAF),
nomenclatures des professions et catégories professionnelles (PCS) et des catégories juridiques (CJ).
– Données de population : populations légales issues du Recensement.
▶ Bénéfices – Format de publication unique : RDF – Interconnexion IGN / partage de référentiel – Politique d’URI séparant ressource informationnelles et non
informationnelles – Interface unifiée pour pages HTML et web services (en cours) – Représentations multiples (négociation de contenu) – Données requêtables en ligne (temps d’exécution contrôlé)
Cas d’utilisation 2 : data.insee.fr
JDev - 6 septembre 2013 Elévation de données avec Datalift
▶ Publication de données avec Datalift – Site expérimental : DB Topo uniquement – Lien avec le Géoportail (INSPIRE) en cours
▶ Bénéfices – Interconnexion INSEE / partage de référentiel – Représentations multiples (négociation de contenu)
– GML, WKT, cartes Géoportail… – Contrôle d’accès au données
– Données semi-ouvertes (administrations / secteur privé) – Composant Datalift S4AC (Social Semantic SPARQL Security for Access Control)
– Gestion dynamique des licences – Calcul des termes de licence applicables aux données extraites – Composant Datalift SHI3LD (en cours)
Cas d’utilisation 3 : data.ign.fr
JDev - 6 septembre 2013 Elévation de données avec Datalift
S4AC (Social Semantic SPARQL Security for Access Control)
Cas d’utilisation 3 : data.ign.fr
Requête SPARQL
SPARQL Endpoint
Triple Store
Access Control Module Contexte
utilisateur (login, localisation…)
Politiques d’accès S4AC
Requête modifiée (filtrage des graphes)
JDev - 6 septembre 2013 Elévation de données avec Datalift
Your business technologists. Powering progress
atos.net
Atos, the Atos logo, Atos Consulting, Atos Worldline, Atos Sphere, Atos Cloud and Atos WorldGrid are registered trademarks of Atos SA. July 2011 © 2011 Atos Consulting. Confidential information owned by Atos, to be used by the recipient only. This document, or any part of it, may not be reproduced, copied, circulated and/or distributed nor quoted without prior written approval from Atos.
Thanks
For more information, please contact:
Laurent BIHANIC
[email protected] Atos France River Ouest 80, quai Voltaire 95877 Bezons Cedex