Mais à quoi bon le big data ?

Un des mots à la mode dans notre domaine du traitement des données est big data. Il s’agit de la capacité à traiter des quantités massives de données structurées ou non structurées. Mais massives comment ? A partir de combien est-ce du big data ? Qui en a besoin ? Quelle est la réalité opérationnelle derrière ces mots ?

Rappelons d’abord que l’origine du big data est liée à une logique de programmation distribuée dite map-reduce qui a été développée par des sociétés du Web comme Google, Yahoo!, Facebook etc : ces grands sites mondiaux ont des tonnes de données à analyser et ne pouvaient pas se contenter des approches « bases de données centric » habituelles. Dropbox gère 100 millions de sauvegardes de fichiers par jour, Twitter annonce 200 millions de tweets quotidiens, Facebook supporte 250 millions d’uploads de photos par jour et en stocke plus de 40 milliards… Le big data est donc d’abord une approche informatique qui prend le relais quand une implémentation classique basée sur l’utilisation de quelques serveurs, même très costauds, ne suffit plus pour assurer les temps de traitement attendus. Ainsi, ces acteurs exploitent des clusters regroupant chacun plusieurs milliers de serveurs et manipulant des péta-octets [1] de données.

D’un point de vue logiciel, le big data est souvent associé à la pile technologique Hadoop mise en open source par Yahoo! et reprise par nombre d’entreprises à vocation commerciale (EMC, Cloudera, Hortonworks…). Hadoop et ses dérivés apportent un système de stockage distribué, une base de données répartie, ainsi qu’un cadre de programmation et d’exécution de tâches de calcul réparties.

 

Mais à quoi cela sert-il et quel sens cela a-t-il pour la plupart des entreprises qui ont quelques téra-octets de données à analyser ?

Quelques éléments de réponse :

  • Le big data est une technologie et non une solution. C’est un moyen et pas une fin. Donc dire « je vais faire du big data » n’a pas de sens car celui-ci ne répond à aucun besoin fonctionnel en particulier. C’est comme dire « je vais faire de la base de données » ou « je vais faire du Web ». Pour quoi faire ? La démarche doit rester pragmatique : partez de votre besoin, voyez s’il est satisfait de façon acceptable par des solutions existantes. Et si rien de ce qui existe ne convient (trop cher, trop lent) alors demandez-vous si une approche alternative exploitant les technologies du big data peut être envisagée.
  • Le big data nécessite de très fortes compétences. Tout d’abord, le niveau de maturité des technologies proposées nécessite des ingénieurs qualifiés pour installer, paramétrer, optimiser et faire tourner ces couches logicielles. A fortiori si vous comptez bâtir des solutions opérationnelles critiques. Il en va de même pour le développement des applications car celles qui veulent tirer partie de l’approche doivent être ré-écrites selon les principes du map-reduce. Souvenons-nous que chez Google ou Facebook, ce sont leurs meilleurs ingénieurs logiciels et  mathématiciens qui développent les applications big data.
  • Pour faire du big data, il faut beaucoup de données. Des téra-octets, voire plutôt des dizaines de téra-octets. À moins de 10 ou 15 serveurs, le passage au big data n’a pas de sens.
    Un exemple : Oracle vient de sortir une appliance big data petit format : 18 serveurs, 864 Go de mémoire, 648 To de stockage pour la modique somme de 455 000 $. Et encore… il reste à intégrer et à développer les applications qui reposeront sur cette architecture.


    Avec l’arrivée des processeurs massivement multi-cœurs, du in-memory computing ou des SSD, la frontière se déplace et pour la majorité des cas, un seul serveur moderne suffit encore. Alors que dans le cas d’un cluster, il faut prendre en compte le coût élevé de possession (TCO) : achat des machines, installation et administration, électricité, froid, maintenance… A fortiori s’il s’agit de n’effectuer que quelques heures ou jours de calcul par mois, la rentabilité d’une telle approche est difficile à atteindre. Big data et cloud computing pourraient alors avoir un avenir commun, mais a condition que les entreprises veuillent bien envoyer dans le cloud leurs téra-octets de données à analyser.

En définitive, il ne s’agit pas de savoir sur combien de serveurs les calculs sont faits, mais de savoir lesquels. Pour quel usage ? Quelle valeur créée ?
C’est pourquoi ce sont plutôt les éditeurs de logiciels qui vont s’emparer du big data, afin d’offrir des solutions opérationnelles répondant aux besoins des entreprises et passant à l’échelle du péta-octets. Les éditeurs de logiciels déjà actifs dans la BI, le data mining ou les moteurs de recherche intégreront ces techniques pour fournir des version « big » de leurs solutions.

Et d’ailleurs qu’en est-il côté Antidot ? Nos solutions sont conçues dès l’origine pour fonctionner aussi bien sur un seul serveur que sur des clusters de machines pour traiter des millions de données et répondre à des centaines de requêtes par seconde. Et nous travaillons déjà à intégrer à nos solutions les apports de l’approche big data.

Mais au delà de la surenchère marketing, nous nous attachons surtout à fournir des solutions qui créent de la valeur pour nos clients. Ainsi, notre framework d’analyse de documents offre des modules prêts à l’emploi couvrant des besoins aussi variés que la classification, la normalisation, l’annotation, l’enrichissement sémantique ou la géolocalisation des données… Agilité et vitesse d’exécution sont des enjeux qui nous semblent plus importants que force et volume.

Conclusion : ce n’est pas la peine de complexer si vous n’avez pas plusieurs centaines de téra-octets de données à analyser et si vous vous sentez exclu du big data. Car en définitive, seule la valeur que vous saurez tirer de vos données a vraiment de l’importance !

[1] un péta-octet, en abrégé Po, représente 1015 octets, soit mille téra-octets ou un million de giga-octets…

Découvrez les Monuments Historiques grâce à l’Open Data !

Pourquoi cette application ?

L’ouverture du site data.gouv.fr le 5 décembre 2011, aussitôt suivie d’autres initiatives, a marqué une accélération du mouvement Open Data en France.

Nous avons voulu apporter notre pierre à l’édifice, en réalisant une démonstration qui met en avant le grand intérêt qu’il y a à pouvoir mailler des données issues de différentes sources grâce aux standards du web sémantique, et la capacité de notre solution Antidot Information Factory à le faire rapidement et simplement, dans une approche industrielle.

Et parce que la France demeure année après année la première destination touristique mondiale, parce que nos territoires regorgent de trésors architecturaux et patrimoniaux, nous avons choisi de réaliser une application de recherche qui vous permet de partir à la découverte de près de 44.000 monuments historiques français !

Quelques explications (un peu) techniques :

Notre application « Monuments historiques » a été réalisée en exploitant 7 sources de données ouvertes :

  1. la liste des Immeubles protégés au titre des Monuments Historiques disponible sur data.gouv.fr. Cette source de données décrit 43.720 monuments dans un fichier CSV.
  2. la liste des gares de voyageurs du Réseau Ferré National avec leurs coordonnées  telle que fournie par data.gouv.fr. Cette source de données décrit 3.065 gares dans un fichier XLS. Elle est exploitée pour situer les monuments à proximité d’une gare.
  3. la liste des stations du métro parisien avec leurs coordonnées, fournie par OpenStreetMap. Cette source de données décrit 301 stations et elle est exploitée pour situer les monuments à proximité d’une station de métro.
  4. les données du code officiel géographique (COG) de l’INSEE. Cette source de données décrit 22 régions, 99 départements, plus de 4.000 cantons et chefs lieux dans un graphe RDF.
  5. Les photos des monuments historiques de Wikipedia proposée par Wikimedia Commons. Cette source de données, notamment alimentée par le concours Wiki loves monuments, apporte 122.828 photos pour 12.586 monuments historiques désignés par leur code PA : il s’agit d’un code délivré de façon unique pour chaque monument et présent dans la liste citée en 1.
  6. La description des monuments historiques de Wikipedia fournie par DBpedia. Cette source de données en RDF décrit 3,64 millions d’objets, dont 413.000 lieux. Cette source est accessible directement à partir des informations de Wikimedia Commons
  7. Les informations de géolocalisation de Yahoo! via Yahoo! PlaceFinder. Cette source permet de géolocaliser à partir de leur adresse les monuments non géolocalisés dans Wikimedia Commons ou DBpedia

La chaine de traitement mise en œuvre pour la réalisation de cette application avec Antidot Information Factory est la suivante :

  1. Une première étape de nettoyage, normalisation et transformation en RDF des fichiers CSV et XLS issus de data.gouv.fr au moyen de Google Refine.
  2. Récupération des données de Wikimedia Commons : un processus de traitement Antidot Information Factory collecte les informations via l’API de Wikimedia et les transforme en RDF : Antidot Information Factory a permis de construire ce processus industriel sans avoir à écrire une seule ligne de code, simplement en assemblant des modules de traitement pris dans une bibliothèque de 50 modules existants.
  3. Récupération des données d’OpenStreetMap pour les stations de métro via son API.
  4. Collecte de toutes les informations de géolocalisation par Antidot Information Factory via l’API de Yahoo! PlaceFinder, pour les lieux non déjà géolocalisés.
  5. Maillage de toutes les données issues des 7 sources par Antidot Information Factory : le résultat est un graphe RDF comprenant plus de 4,5 millions de triplets, dont près de 450.000 ont été inférés à partir des sources.
  6. Ce triple store est ensuite la source unique mise en entrée du module d’indexation du moteur de recherche Antidot Finder Suite.

Le résultat est une application web de recherche permettant  de trouver des monuments historiques

  • par une recherche en plein texte
  • dans une région, un département ou une ville donnés
  • par type de monument : église, château, statue, site industriel
  • par période historique : préhistoire, moyen-âge, renaissance etc
  • par type de propriétaire : personne ou société privée, commune, Etat…

avec combinaison possible de tous ces critères, sous forme de « facettes de recherche » très simples à manipuler.

Conclusion (provisoire)

Cette application a été réalisée en quelques jours, sans impliquer de développeurs et par simple paramétrage de notre solution Antidot Information Factory. Cela montre, s’il en est encore besoin, la puissance et la justesse de l’approche et des technologies du Web Sémantique promues par le W3C.

Cette application démontre que l’Open Data favorise l’émergence de nouveaux usages : par la mise à disposition de données qui sont facilement reliées à d’autres données, la seule limite devient notre imagination et notre capacité à proposer de nouveaux services innovants et utiles !

Merci à tous les fournisseurs de données qui ont rendu possible cette réalisation, notamment le Ministère de la Culture et de la Communication pour la liste des monuments historiques et la Société Nationale des Chemins de Fer pour la liste des gares, avec une mention toute particulière pour les contributeurs de Wikipedia, que vous pouvez soutenir par un don.

A vous maintenant de partir à la découverte de nos monuments historiques, au gré de vos envies !


Crédits : Etalab | Wikimedia Commons | DBpedia | Open Street Map | INSEE | Wikipedia francophone | Wikipedia anglophone

Application réalisée avec Antidot Information Factory – Nous contacter : [email protected]


Le contenu de ce billet est sous licence CC BY-SA. Traduction en anglais disponible ici.