1 heure chrono pour votre plateforme Open Data en ligne : pari tenu ! – 1ère partie
Ce billet s’intéresse à la mise en œuvre de votre environnement Open Data telle que décrite lors de la session TechDays 2013 1 heure chrono pour votre plateforme Open Data en ligne : pari tenu ! (INT201) dans le parcours Enjeux / Ouverture aux technologies non Microsoft.
Cette mise en œuvre qui repose sur la solution Microsoft Open Data Clé en main suppose de disposer au préalable simplement d’une souscription Windows Azure. Si vous ne disposez pas d’ores et déjà d’une telle souscription, n’hésitez pas à visiter le site dédié Windows Azure et à demander le cas échéant une évaluation gratuite de 90 jours.
Comme illustré lors de la session INT201 lors des TechDays 2013, la mise en œuvre de votre environnement Open Data via la solution Microsoft Open Data Clé en main est grandement facilitée par l’utilisation de la plateforme d’installation automatisée ODPI (Open Data Platform Installer), l’une des composantes de la solution. Cette plateforme est décrite dans le billet ODPI, la facilité de mise en œuvre des solutions Open Data.
Dans la pratique, cette plateforme permet de déployer et de configurer une solution complète en marque blanche sous licence libre Microsoft Public License (Ms-PL), prête à l’usage, interopérable, ouverte, évolutive et déployée et mise en ligne "en quelques clics" dans Windows Azure pour bénéficier pleinement des apports du Cloud (puissance et élasticité, modèle économique), avec pas ou peu d’investissement initial et un « Time-to-Market ».
Au-delà du portail ODPI en tant que tel, la solution Open Data Clé en main intègre un ensemble d’accélérateurs Open Data :
- La plateforme de publication des données ouvertes OGDI (Open Government Data Initiative) DataLab avec une gestion multi-catalogues de (jeux de) données ouvertes et un service de données RESTful OData pour la consommation des données. Cette solution communautaire disponible sur la forge GitHub s’adapte très facilement à la stratégie de l’acteur public notamment en termes de portail usager ;
- Le portail Citoyen Open Data pour offrir une interface simple et intuitive aux usagers ;
- Le Framework applicatif multiplateformes ODAF (Open Data Application Framework) OpenTurf centré sur l’Expérience Utilisateur pour mettre en valeur les (catalogues de) données géo-localisées d’OGDI DataLab avec des modèles pour le Web riche, les environnements mobiles (Android, iPhone/iPad et Windows Phone) intégrés avec les réseaux sociaux (Facebook et Twitter). Cette solution communautaire disponible sur la forge GitHub constitue une fondation pour l’acteur public pour contribuer à la création d’un écosystème applicatif Open Data et intégrer une dimension sociale et participative dans cet écosystème.
- Le portail ODPI autorise le déploiement "en quelques clics" dans Windows Azure des accélérateurs précédents (et d’autres composantes personnaliées qui peuvent être déclarées de la même façon). Ce billet illustre ce déploiement de bout-en bout.
Pour ce faire, et à l’instar des démonstrations de la session, ce billet utilise les services de la plateforme de démonstration ODPI France à l’adresse https://odpifrance.cloudapp.net/.
Mise en œuvre de la plateforme de publication de données ouvertes OGDI DataLab
Intéressons-nous dans un premier temps au déploiement de la plateforme de publication de données ouvertes OGDI DataLab dont la version v5 est disponible sur la forge GitHub comme mentionné précédemment. Si vous êtes familier(e) de ce blog, vous savez que celle-ci correspond au cœur de la solution Open Data de Microsoft. Pour de plus amples informations sur ce socle, n’hésitez pas à consulter les nombreux billets de ce blog qui lui sont consacrés comme notamment le billet Quand OGDI rencontre DataLab…
Le déploiement et la configuration de ce socle OGDI DataLab suppose de configurer au préalable les éléments suivants :
- Partition de stockage au niveau de la souscription Windows Azure
- Service de Cloud Computing au niveau de la souscription Windows Azure
- Jeu de clé ReCAPTCHA
Nous allons donc commencer par créer et configurer ces différents éléments.
Création de la partition de stockage
Pour créer la partition de stockage, rendez-vous sur le portail d’administration de Windows Azure à l’adresse https://manage.windowsazure.com. Une fois connecté(e) avec les identifiant Microsoft Account et mot de passe de votre souscription Windows Azure, cliquez sur STOCKAGE au milieu du bandeau droit.
Si vous ne disposez d’aucun compte de stockage, le volet STOCKAGE doit être similaire à la capture suivante :
Cliquez sur le lien CREER UN COMPTE DE STOCKAGE. Le panneau NOUVEAU s’ouvre dans le bas du portail d’administration Windows Azure.
Renseignez les champs comme suit et cliquez sur CREER UN COMPTE DE STOCKAGE :
- Url : td2013 (si cette Url n’est pas disponible, précisez une Url de votre choix)
- Groupe de régions ou d’affinités : Europe de l’Ouest
A l’issue de la création du compte, le statut suivant s’affiche.
Une fois le compte de stockage créé, cliquez sur GERER LES CLES dans le bas du portail.
Le dialogue GERER LES CLES D’ACCES s’ouvre.
Mémoriser les nom du compte de stockage et la clé d’accès primaire :
- Nom du compte de stockage : td2013 (si cette Url n’était pas disponible, l’Url de votre choix)
- Clé d’accès primaire : <votre clé d’accès primaire>
Vous en aurez besoin à de multiples reprises par la suite. Pour copier la clé d’accès primaire, vous pouvez cliquer simplement sur l’icône Copier. Un dialogue Internet Explorer s’ouvre.
Cliquez sur Autoriser l’accès. La clé d’accès primaire est à présent dans votre Presse-Papier.
Création du service de Cloud Computing
Toujours depuis le portail d’administration Windows Azure, cliquez sur SERVICES DE CLOUD dans la partie supérieure du bandeau droit.
Si vous ne disposez d’aucun compte de stockage, le volet SERVICES DE CLOUD doit être similaire à la capture suivante :
Cliquez sur le lien CREER UN SERVICE DE CLOUD COMPUTING. Le panneau NOUVEAU s’ouvre dans le bas du portail d’administration Windows Azure.
Renseignez les champs comme suit et cliquez sur CREER UN SERVICE DE CLOUD COMPUTING :
- Url : ogditd2013 (si cette Url n’est pas disponible, précisez une Url de votre choix)
- Groupe de régions ou d’affinités : Europe de l’Ouest
Création d‘un jeu de clé ReCAPTCHA
Passons à présent à la création d’un jeu de clé ReCAPTCHA. Pour cela, naviguez vers l’adresse https://www.google.com/recaptcha.
Cliquez sur USE reCAPTCHA on your site. Dans la page suivante, cliquez sur Sign up Now! . L’inscription est totalement gratuite.
Cliquez sur SIGN UP si vous ne disposez pas d’un compte Google et suivez les instructions. Si vous disposez déjà d’un compte, précisez votre adresse mèl et mot de passe du compte et cliquez sur Sign in.
Une fois authentifié(e), précisez l’Url cible de la plateforme, par exemple ogditd2013.cloudapp.net dans cette illustration et cliquez sur Create Key.
Mémorisez votre paire de clé :
- Public key: <votre clé publique ReCAPTCHA>
- Private key: <votre clé privée ReCAPTCHA>
Nous pouvons passer à présent au déploiement de plateforme OGDI DataLab.
Déploiement d’OGDI DataLab avec la plateforme d’installation automatisée ODPI
Naviguez vers l’adresse https://odpifrance.cloudapp.net pour accéder à la version de démonstration de la plateforme d’installation. Dans la liste des composants à installer, sélectionnez simplement OGDI DataLab comme nous souhaitons décomposer la mise en œuvre des composants de la solution Microsoft Open Data. Vous pouvez bien évidemment sélectionner l’ensemble des composants si vous souhaitez les déployer en une seule session ODPI.
Cliquez sur Continuer >> . La page suivante vous demande de préciser un certain nombre d’informations relatives à votre souscription Windows Azure.
Dans un premier temps, et comme vous y êtes invité(e), cliquez sur le lien Certificat Généré pour télécharger le certificat de gestion relatif à cette session ODPI.
Cliquez sur Enregistrer et ouvrez un nouvel onglet ou une nouvelle fenêtre de votre navigateur et rendez-vous sur le portail d’administration de Windows Azure à l’adresse https://manage.windowsazure.com. Une fois connecté(e) avec les identifiant Microsoft Account et mot de passe de votre souscription Windows Azure, cliquez sur PARAMETRES dans le bas du bandeau droit.
Cliquez sur TELECHARGER. Le dialogue Télécharger un certificat de gestion s’ouvre.
Précisez le chemin du certificat de gestion que vous venez de télécharger et validez. A l’issue de cette opération, vous obtenez l’écran suivant.
Depuis ce même écran, cliquez sur ADMINISTRATEURS.
Recopiez l’identificateur de l’abonnement. Vous en aurez besoin à de multiples reprises par la suite.
Fort de ces éléments, retournez dans la fenêtre de votre session ODPI.
Renseignez les Informations Azure avec les informations suivantes et cliquez sur Continuer >> :
- ID d’abonnement : <votre identifiant d’abonnement Windows Azure>
- Nom du Compte de Stockage : td2013
- Clé d’accès primaire : <votre clé d’accès primaire>
Une page de Configuration OGDI DataLab s’affiche alors.
Renseignez les Information sur le stockage Blob avec les informations suivantes :
- Nom du compte de stockage : td2013
- Clé d’accès primaire : <votre clé d’accès primaire>
Un seul et même compte de stockage est utilisé pour l’ensemble du déploiement.
Renseignez les Paramètres de l’application avec les informations suivantes :
- Service de données DNS : ogditd2013
- Clé privée Recaptcha: <votre clé privée ReCAPTCHA>
- Clé publique Recaptcha : <votre clé publique ReCAPTCHA>
Renseignez les Définition du catalogue de données avec les informations suivantes :
- Alias : ogditd2013
- Description : TechDays 2013
- Disclaimer : Données de test Open Data clé en main
Cliquez sur Continuer >> . Dans la page Déploiements, sélectionnez le service de Cloud Computing que vous venez de créer pour OGDI DataLab, ici ogditd2013 pour l’illustration.
Cliquer sur Déployer. Le package OGDI DataLab se compile et se déploie avec les paramètres spécifiés.
A l’issue du déploiement avec ODPI, la plateforme de publication de données ouvertes OGDI Datalab est accessible depuis le lien proposé.
Cliquez sur le lien here. Un nouvel onglet s’ouvre sur OGDI DataLab à l’adresse https://ogditd2013.cloudapp.net dans notre illustration.
Le jeu de données ouvertes géo-localisées RennesPAV2 est créé par défaut afin d‘illustrer les possibilités de la plateforme OGDI DataLab. il s’agit des points d'apport volontaire (PAV) des déchets ménagers mis à disposition par le Service SIG Rennes Métropole. Ce jeu contient une liste de PAV, chacun ayant des propriétés telles que le code INSEE de la commune sur laquelle est situé le PAV, le type de PAV, le ou les flux de déchets pris en charge (verre, journaux-magazine, ordures ménagères ou multi-matériaux), si le PAV est implanté sur le domaine public ou pas, une longitude et une latitude en termes de coordonnées géo spatiales, etc.
Cliquez sur le lien RennesPAV2 puis cliquez par exemple sur l’onglet Vue carte pour visualiser les données.
La plateforme ODGI DataLab expose un service de données RESTful OData pour la consommation des données à l’adresse https://ogditd2013.cloudapp.net:8080/v1/ogditd2013/.
Mise à disposition d’un nouvel ensemble de données
Pour ajouter des jeux de données à cette instance OGDI DataLab, il suffit d’ajouter des fichiers aux formats csv, kml, etc. via l’utilitaire de chargement de données (DataLoader) qui est un composant de la solution communautaire OGDI DataLab présente sur la forge GitHub.
Vous pouvez compiler le code source de cet utilitaire à partir de ce référentiel ou utiliser directement la version compilée ci-jointe.
A des fins d’illustrations, nous allons charger le jeu de données également mis à disposition par le Service SIG Rennes Métropole. Quelle que soit l’option retenue, exécutez l’utilitaire DataLoaderUIMvvm.exe.
Sélectionnez l’onglet Settings et cliquez Connection. Le dialogue Endpoint Settings s’ouvre.
Renseignez les informations suivantes et cliquez sur Save :
- Account Name : td2013
- Account Key : <votre clé d’accès primaire>
Sélectionnez l’onglet Fichier et cliquer sur Open. Dans le dialogue Ouvrir, sélectionnez le fichier StationnementPersonnesHandicapees.csv (ci-joint) et cliquez sur Ouvrir.
Sélectionnez l’onglet Processing. L'application OGDI Metadata Designer s'ouvre.
Renseignez les informations suivantes :
- Dataset Name (external) : Aires de stationnement
- Dataset Source : Service SIG Rennes Métropole
- Category : Transports,Accessibilité,Stationnement
- Description : Places de stationnement réservées pour les personnes à mobilité réduite
- Links/Reference : https://www.data.rennes-metropole.fr/les-donnees/catalogue/?tx_icsopendatastore_pi1%5Bkeywords%5D=&tx_icsopendatastore_pi1%5Bcategories%5D%5B0%5D=11&tx_icsopendatastore_pi1%5Buid%5D=175
- Technical Documentation : Précision géométrique : 1 mètre, Système de référence original : RGF93 CC48 (IGNF : LAMBCC48 - EPSG : 3948)
Sélectionnez l’onglet Dataset Columns. Renseignez les informations suivantes et cliquez sur Save :
- Longitude Column Name : long
De retour dans l’utilitaire, sélectionnez l’onglet Processing et cliquez sur Start.
A l’issue du chargement, retournez sur la plateforme ODGI DataLab à l’adresse https://ogditd2013.cloudapp.net dans notre illustration. Cliquez sur le nouveau jeu de données StationnementPersonnesHandicapees.
Le chargement de jeux de données étant à ce stade illustré, il convient de noter que le site Web proposé par défaut par la plateforme de publication de données ouvertes OGDI DataLab est orienté développeur. Il se veut avant tout un kit de développement interactif vis-à-vis du service de données RESTful de la plateforme.
Fondé sur une architecture de type MVC (Modèle-Vue-Contrôleur), il peut être facilement adapté pour offrir des vues plus orientées usager/citoyen.
Pour autant, la solution Microsoft Open Data propose dans le même temps directement un portail Citoyen Open Data également fondée sur une architecture de type MVC que la plateforme ODPI permet de déployer très simplement. Nous abordons ce point dans la seconde partie de ce billet.