A lire sur: http://www.zdnet.fr/actualites/datagouvfr-plongee-dans-la-plate-forme-technique-du-portail-open-data-39770820.htm#xtor=EPR-100
Décisions IT
- Serveurs virtualisés, CMS eZ Publish, moteur de recherche interne
Exalead, bases de données NoSQL, outil sémantique Mondeca, stratégie de
cache asymétrique… tour d’horizon de l’architecture technique du portail
data.gouv.fr avec le directeur technique d’Etalab, Charles Ruelle.
Hébergement et infrastructure matérielle
Chez Atos, l'hébergement du
portail data.gouv.fr (au budget de
2 millions d'euros) est mutualisé avec
service-public.fr et
legifrance.gouv.fr, les deux principaux sites de l’Etat en termes d’audience, édités par
la DILA (Direction de l'information légale et administrative).

«
Dès la création de la mission, nous avons choisi de travailler en
collaboration avec la DILA que ce soit au niveau hébergement ou
applicatif avec eZ Publish, Exalead et Mondeca. Cela permet,de manière
générale, d’harmoniser les outils que nous déployons et donc de
rationaliser les coûts, mais aussi de monter en compétences et de
capitaliser au niveau du développement et de la maintenance » déclare le
directeur technique d’Etalab, Charles Ruelle.
Très
classiquement, le portail comprend trois environnements (qualification,
pré-production et production), intégralement redondés, et une
répartition sur deux datacenters distincts. Un site de backup a été
prévu et permet le téléchargement des jeux de données les plus demandés.
Les différentes briques applicatives du site sont exécutées depuis une
dizaine de
serveurs virtuels en production (VMWare ESX).
Montée en charge et cache
La
problématique de la montée en charge est gérée notamment grâce au
recours à la virtualisation, qui permet en cas de pic de trafic,
d’ajouter de nouveaux serveurs. La montée en charge a été anticipée au
lancement afin de garantir la disponibilité du site lors de la mise en
ligne et la capacité du back-office producteurs à accueillir un grand
nombre d’utilisateurs (800 à 1000, contre 200 actuellement).

«
C’est tout l’intérêt d’une architecture à base de machines virtuelles
qui permet de s’adapter aux pics de trafic. Par ailleurs, l’architecture
est très
NoSQL
en frontal. Par rapport au CMS, le fait de faire des modules
d’extension qui ne s’appuient pas sur des modèles génériques de stockage
mais plutôt des approches traditionnelles SGBD permet d’avoir un
meilleur temps de réponse du CMS et plus globalement du système »
détaille Jean-Christophe Renou, spécialiste de l’ECM chez Logica,
prestataire technique de data.gouv.fr.
Pour le cache, Etalab a
prévu une architecture asymétrique entre la contribution en « mode CMS »
et une publication en cache avec pré-génération d’un certain nombre de
pages (référencées par le moteur de recherche).
CMS : eZ Publish
Le choix d’un socle CMS eZ Publish est dicté par une volonté de mutualisation avec la DILA.
«
Tous les aspects transactionnels sont construits au-dessus du CMF -
Content Management Framework – et toutes les interactions comme le forum
sont le plus souvent des extensions greffées à l’intérieur d’
eZ Publish
[…] Les contributions peuvent rapidement devenir nombreuses et afin de
maintenir de bonnes performances, nous avons créé pour cela des
extensions spécifiques » précise Jean-Christophe Renou.
Back-office producteurs et description des jeux de données
Pour publier leurs jeux de données, les administrations disposent de leur propre outil de publication, accessible en mode Web.
«
On retrouve les concepts d’un CMS. Nous avons créé un modèle
d’organisation générique à l’ensemble des producteurs de données, et
souple, à travers lequel il est possible de définir les workflows. Les
fonctions d’administration sont elles déportées vers les coordinateurs »
décrit le responsable de Logica.
La description des jeux de
données est gérée quant à elle par l’intermédiaire de l’outil de gestion
de base de connaissances sémantiques de la société Mondeca. « Chaque
descriptif d’un jeu de données est harmonisé avec des thésaurus […] Cela
permet déjà d’apporter une première étape de qualification harmonisée
au niveau de l’Etat » commente Charles Ruelle.
Plate-forme d’échange de données
Chacun des 200 contributeurs de la plateforme peut recenser, qualifier et diffuser des données publiques depuis son interface.
La publication automatisée des jeux de données sur
data.gouv.fr
s’effectue quant à elle grâce à une plate-forme d’échanges (des
échanges FTP sécurisés). Celle-ci supporte les flux automatiques entre
les bases de données des SI de l’Etat et la plate-forme.
«
Nous avons tiré des liens permanents entre les bases de données des
administrations et Etalab pour que la mise à jour de centaine de
milliers de jeux de données puisse se faire dans un souci de
productivité » détaille Jean-Christophe Renou.
« Nous
envisageons un mode en pull basé sur le moissonnage. Nous avons mis en
place un prototype avec une syntaxe XML/RDF avec l’Insee et le MEDETEL
[Ndlr : ministère de l’écologie]. Pour nous c’est un enjeu extrêmement
fort puisque cela permet de mettre à disposition toujours plus de
données, mieux qualifiées et mieux mises à jour et d’industrialiser
cette étape de diffusion » ajoute Charles Ruelle.
Moteur de recherche : Exalead
Le moteur interne du portail est basé sur la technologie d’Exalead - propriété désormais
de Dassault Systèmes.
La démarche itérative est également appliquée au moteur afin donc
d’améliorer la pertinence des résultats et de proposer de nouvelles
fonctionnalités de recherche.
« Nous avons commencé sur
quelque chose d’assez simple avant d’apporter progressivement des
améliorations pour faciliter encore l’accès aux données, en structurant
ou ajoutant par exemple des facettes […] A ce stade du développement,
nous avions priorisé l’approche simple et l’appropriation rapide. Nous
avons travaillé autour de l’expérience Google en termes d’usages. En
complément de cette recherche accessible à tous et qui permet déjà de
faire 80% du travail, nous travaillons sur des facettes de recherche
spécialisées sur certains axes, par exemple en privilégiant dans une
requête l’axe géographique » présente Jean-Christophe Renou.