Volume, vélocité, variété : Ce que vous devez savoir sur le big data

Ce billet est initialement paru sur O’Reilly Radar (« Qu’est-ce que le big data ? »). Il est republié avec autorisation.

Par Edd Dumbill

Les big data sont des données qui dépassent la capacité de traitement des systèmes de base de données classiques. Les données sont trop volumineuses, se déplacent trop rapidement ou ne correspondent pas aux contraintes de vos architectures de base de données. Pour tirer de la valeur de ces données, vous devez choisir une autre façon de les traiter.

Mot à la mode en informatique en 2012, le big data est devenu viable car des approches rentables ont émergé pour apprivoiser le volume, la vélocité et la variabilité des données massives. Dans ces données se trouvent des modèles et des informations précieuses, jusqu’alors cachés en raison de la quantité de travail nécessaire pour les extraire. Pour les grandes entreprises, telles que Walmart ou Google, cette puissance est à portée de main depuis un certain temps, mais à un coût fantastique. Aujourd’hui, le matériel de base, les architectures en nuage et les logiciels à code source ouvert mettent le traitement des big data à la portée des personnes les moins bien loties. Le traitement des big data est éminemment réalisable, même pour les petites startups de garage, qui peuvent louer à bas prix du temps de serveur dans le cloud.

La valeur des big data pour une organisation se divise en deux catégories : l’utilisation analytique, et l’activation de nouveaux produits. L’analyse des big data peut révéler des idées cachées auparavant par des données trop coûteuses à traiter, comme l’influence des pairs parmi les clients, révélée par l’analyse des transactions des acheteurs, des données sociales et géographiques. Le fait de pouvoir traiter chaque élément de données en un temps raisonnable supprime le besoin gênant d’échantillonnage et favorise une approche investigatrice des données, contrairement à la nature quelque peu statique de l’exécution de rapports prédéterminés.

Les startups web à succès de la dernière décennie sont des exemples parfaits de big data utilisées comme facilitateur de nouveaux produits et services. Par exemple, en combinant un grand nombre de signaux provenant des actions d’un utilisateur et de celles de ses amis, Facebook a pu élaborer une expérience utilisateur hautement personnalisée et créer un nouveau type d’activité publicitaire. Ce n’est pas une coïncidence si la part du lion des idées et des outils qui sous-tendent le big data est issue de Google, Yahoo, Amazon et Facebook.

L’émergence du big data dans l’entreprise entraîne une contrepartie nécessaire : l’agilité. Pour réussir à exploiter la valeur du big data, il faut expérimenter et explorer. Qu’il s’agisse de créer de nouveaux produits ou de chercher des moyens d’obtenir un avantage concurrentiel, le métier exige de la curiosité et un esprit d’entreprise.

Image de données

À quoi ressemble le big data ?

En tant que terme fourre-tout, le « big data » peut être assez nébuleux, de la même manière que le terme « cloud » couvre diverses technologies. Les données d’entrée des systèmes big data peuvent être des bavardages sur les réseaux sociaux, des journaux de serveurs web, des capteurs de flux de trafic, des images satellites, des flux audio de diffusion, des transactions bancaires, des MP3 de musique rock, le contenu de pages web, des scans de documents gouvernementaux, des traces GPS, des télémétries d’automobiles, des données de marchés financiers, et la liste est longue. S’agit-il vraiment de la même chose ?

Pour clarifier les choses, les trois V de volume, vélocité et variété sont couramment utilisés pour caractériser différents aspects du big data. Ils constituent un prisme utile pour voir et comprendre la nature des données et les plateformes logicielles disponibles pour les exploiter. Très probablement, vous serez confronté à chacun des V à un degré ou un autre.

Volume

L’avantage tiré de la capacité à traiter de grandes quantités d’informations est le principal attrait de l’analyse des big data. Avoir plus de données bat en brèche le fait d’avoir de meilleurs modèles : de simples bouts de maths peuvent être déraisonnablement efficaces compte tenu de grandes quantités de données. Si vous pouviez exécuter cette prévision en tenant compte de 300 facteurs plutôt que 6, pourriez-vous mieux prévoir la demande ?

Ce volume représente le défi le plus immédiat pour les structures informatiques classiques. Il nécessite un stockage évolutif, et une approche distribuée de l’interrogation. De nombreuses entreprises disposent déjà de grandes quantités de données archivées, peut-être sous forme de journaux, mais pas de la capacité de les traiter.

En supposant que les volumes de données soient supérieurs à ceux que les infrastructures conventionnelles de bases de données relationnelles peuvent prendre en charge, les options de traitement se décomposent globalement en un choix entre des architectures de traitement massivement parallèles – entrepôts de données ou bases de données telles que Greenplum – et des solutions basées sur Apache Hadoop. Ce choix est souvent éclairé par le degré d’intervention de l’un des autres « V » – la variété. Généralement, les approches d’entreposage de données impliquent des schémas prédéterminés, adaptés à un ensemble de données régulier et à évolution lente. Apache Hadoop, en revanche, ne pose aucune condition sur la structure des données qu’il peut traiter.

À la base, Hadoop est une plateforme de distribution des problèmes de calcul sur un certain nombre de serveurs. D’abord développée et publiée en open source par Yahoo, elle met en œuvre l’approche MapReduce inaugurée par Google dans la compilation de ses index de recherche. L’approche MapReduce d’Hadoop consiste à distribuer un jeu de données entre plusieurs serveurs et à opérer sur les données : l’étape « map ». Les résultats partiels sont ensuite recombinés : l’étape « reduce ».

Pour stocker les données, Hadoop utilise son propre système de fichiers distribué, HDFS, qui met les données à la disposition de plusieurs nœuds de calcul. Un schéma d’utilisation typique d’Hadoop comporte trois étapes :

  • chargement des données dans HDFS,
  • opérations MapReduce, et
  • récupération des résultats dans HDFS.

Ce processus est par nature une opération par lot, adaptée aux tâches de calcul analytique ou non interactif. Pour cette raison, Hadoop n’est pas en soi une solution de base de données ou d’entrepôt de données, mais peut agir comme un complément analytique à une telle solution.

L’un des utilisateurs d’Hadoop les plus connus est Facebook, dont le modèle suit ce schéma. Une base de données MySQL stocke les données de base. Celles-ci sont ensuite répercutées dans Hadoop, où des calculs sont effectués, comme la création de recommandations pour vous en fonction des intérêts de vos amis. Facebook transfère ensuite les résultats dans MySQL, pour les utiliser dans les pages servies aux utilisateurs.

uncaptioned Strata 2012 – La conférence Strata 2012, qui se tiendra du 28 février au 1er mars à Santa Clara, en Californie, proposera trois journées complètes de formation pratique sur les données et de sessions riches en informations. Strata rassemble les personnes, les outils et les technologies dont vous avez besoin pour faire fonctionner les données.

Economisez 20 % sur l’inscription avec le code RADAR20

Vélocité

L’importance de la vélocité des données – le taux croissant auquel les données affluent dans une organisation – a suivi une tendance similaire à celle du volume. Des problèmes autrefois limités à des segments de l’industrie se présentent désormais dans un cadre beaucoup plus large. Les entreprises spécialisées, comme les traders financiers, ont depuis longtemps tourné à leur avantage les systèmes qui font face aux données en mouvement rapide. C’est maintenant notre tour.

Pourquoi en est-il ainsi ? L’ère de l’Internet et du mobile signifie que la façon dont nous livrons et consommons les produits et les services est de plus en plus instrumentée, générant un flux de données en retour vers le fournisseur. Les détaillants en ligne sont capables de compiler de vastes historiques de chaque clic et interaction des clients : pas seulement les ventes finales. Ceux qui sont capables d’utiliser rapidement ces informations, en recommandant des achats supplémentaires, par exemple, obtiennent un avantage concurrentiel. L’ère des smartphones augmente encore le taux d’afflux de données, car les consommateurs emportent avec eux une source en continu d’images géolocalisées et de données audio.

Ce n’est pas seulement la vitesse des données entrantes qui pose problème : il est possible de diffuser en continu des données à évolution rapide dans un stockage en vrac pour un traitement par lots ultérieur

, par exemple. L’importance réside dans la vitesse de la boucle de rétroaction, qui fait passer les données de l’entrée à la décision. Une publicité d’IBM souligne que vous ne traverseriez pas la route si vous ne disposiez que d’un instantané de la situation du trafic datant de cinq minutes. Il y a des moments où vous ne pourrez tout simplement pas attendre qu’un rapport s’exécute ou qu’un travail Hadoop se termine.

La terminologie de l’industrie pour ces données qui évoluent rapidement tend à être soit « données en continu », soit « traitement d’événements complexes ». Ce dernier terme était plus établi dans les catégories de produits avant que les données de traitement en continu ne gagnent en pertinence, et semble susceptible de diminuer au profit du streaming.

Il existe deux raisons principales d’envisager le traitement en continu. La première est lorsque les données d’entrée sont trop rapides pour être stockées dans leur intégralité : pour que les exigences de stockage restent pratiques, un certain niveau d’analyse doit se produire au fur et à mesure que les données arrivent. À l’extrémité de l’échelle, le grand collisionneur de hadrons du CERN génère tellement de données que les scientifiques doivent en rejeter l’écrasante majorité – en espérant vivement qu’ils n’ont rien jeté d’utile. La deuxième raison d’envisager le streaming est que l’application exige une réponse immédiate aux données. Grâce à l’essor des applications mobiles et des jeux en ligne, cette situation est de plus en plus courante.

Les catégories de produits permettant de traiter les données en streaming se divisent en produits propriétaires établis, tels que InfoSphere Streams d’IBM, et en frameworks open source moins aboutis et toujours émergents, issus de l’industrie du web : Storm de Twitter, et Yahoo S4.

Comme mentionné plus haut, il ne s’agit pas seulement de données d’entrée. La vélocité des sorties d’un système peut également avoir de l’importance. Plus la boucle de rétroaction est serrée, plus l’avantage concurrentiel est grand. Les résultats peuvent aller directement dans un produit, comme les recommandations de Facebook, ou dans des tableaux de bord utilisés pour guider la prise de décision.

C’est ce besoin de rapidité, notamment sur le web, qui a poussé au développement des key-value stores et des bases de données en colonnes, optimisées pour la récupération rapide d’informations précalculées. Ces bases de données font partie d’une catégorie générale appelée NoSQL, utilisée lorsque les modèles relationnels ne conviennent pas.

Variété

Il est rare que les données se présentent sous une forme parfaitement ordonnée et prête à être traitée. Un thème commun aux systèmes de big data est que les données sources sont diverses, et ne tombent pas dans des structures relationnelles nettes. Il peut s’agir de textes provenant de réseaux sociaux, de données d’images, d’un flux brut provenant directement d’un capteur. Aucun de ces éléments ne vient prêt à être intégré dans une application.

Même sur le web, où la communication d’ordinateur à ordinateur devrait apporter certaines garanties, la réalité des données est désordonnée. Des navigateurs différents envoient des données différentes, les utilisateurs retiennent des informations, ils peuvent utiliser des versions de logiciels ou des fournisseurs différents pour communiquer avec vous. Et vous pouvez parier que si une partie du processus implique un humain, il y aura des erreurs et des incohérences.

Une utilisation courante du traitement des big data consiste à prendre des données non structurées et à en extraire une signification ordonnée, pour une consommation soit par des humains, soit comme entrée structurée d’une application. Un tel exemple est la résolution d’entités, le processus qui consiste à déterminer exactement à quoi un nom fait référence. Cette ville est-elle Londres, en Angleterre, ou Londres, au Texas ? Au moment où votre logique métier s’y attelle, vous ne voulez pas avoir à deviner.

Le processus de passage des données sources aux données applicatives traitées implique une perte d’informations. Lorsque vous mettez de l’ordre, vous finissez par jeter des choses. Cela souligne un principe du big data : quand vous le pouvez, gardez tout. Il peut y avoir des signaux utiles dans les éléments que vous jetez. Si vous perdez les données sources, il est impossible de revenir en arrière.

Malgré la popularité et la nature bien comprise des bases de données relationnelles, il n’est pas vrai qu’elles doivent toujours être la destination des données, même lorsqu’elles sont rangées. Certains types de données conviennent mieux à certaines classes de bases de données. Par exemple, les documents codés en XML sont plus polyvalents lorsqu’ils sont stockés dans un magasin XML dédié tel que MarkLogic. Les relations des réseaux sociaux sont des graphes par nature, et les bases de données de graphes telles que Neo4J rendent les opérations sur ces graphes plus simples et plus efficaces.

Même lorsqu’il n’y a pas d’inadéquation radicale des types de données, un inconvénient de la base de données relationnelle est la nature statique de ses schémas. Dans un environnement agile et exploratoire, les résultats des calculs vont évoluer avec la détection et l’extraction de plus de signaux. Les bases de données NoSQL semi-structurées répondent à ce besoin de flexibilité : elles fournissent suffisamment de structure pour organiser les données, mais n’exigent pas le schéma exact des données avant de les stocker.

En pratique

Nous avons exploré la nature du big data, et sondé le paysage du big data à un haut niveau. Comme d’habitude, lorsqu’il s’agit de déploiement, il y a des dimensions à prendre en compte au-delà du choix de l’outil.

Cloud ou en interne ?

La majorité des solutions de big data sont désormais fournies sous trois formes : logiciel seul, sous forme d’appliance ou basé sur le cloud. Le choix de la voie à suivre dépendra, entre autres, des questions de localisation des données, de confidentialité et de réglementation, des ressources humaines et des exigences du projet. De nombreuses organisations optent pour une solution hybride : utiliser des ressources cloud à la demande pour compléter les déploiements internes.

Les données volumineuses sont volumineuses

C’est un fait fondamental : les données trop volumineuses pour être traitées de manière conventionnelle le sont également pour être transportées n’importe où. L’informatique subit une inversion des priorités : c’est le programme qui doit se déplacer, pas les données. Si vous voulez analyser les données du recensement américain, il est beaucoup plus facile d’exécuter votre code sur la plateforme de services web d’Amazon, qui héberge ces données localement, et qui ne vous coûtera ni temps ni argent pour les transférer.

Même si les données ne sont pas trop volumineuses pour être déplacées, la localité peut encore poser problème, surtout avec des données qui se mettent à jour rapidement. Les systèmes de négociation financière se pressent dans les centres de données pour obtenir la connexion la plus rapide aux données sources, car cette différence de milliseconde dans le temps de traitement équivaut à un avantage concurrentiel.

Les big data sont désordonnées

Ce n’est pas qu’une question d’infrastructure. Les praticiens du big data signalent systématiquement que 80 % de l’effort à fournir pour traiter les données consiste à les nettoyer en premier lieu, comme l’observe Pete Warden dans son glossaire du big data : « Je passe probablement plus de temps à transformer des données sources désordonnées en quelque chose d’utilisable que le reste du processus d’analyse des données combiné. »

En raison du coût élevé de l’acquisition et du nettoyage des données, il vaut la peine de considérer ce que vous devez réellement sourcer vous-même. Les places de marché de données sont un moyen d’obtenir des données communes, et vous êtes souvent en mesure d’apporter des améliorations en retour. La qualité peut bien sûr être variable, mais sera de plus en plus un point de référence sur lequel les places de marché de données se font concurrence.

Culture

Le phénomène du big data est étroitement lié à l’émergence de la science des données, une discipline qui combine mathématiques, programmation et instinct scientifique. Pour tirer profit du big data, il faut investir dans des équipes dotées de ces compétences et les entourer d’une volonté organisationnelle de comprendre et d’utiliser les données à son avantage.

Dans son rapport intitulé « Building Data Science Teams », D.J. Patil caractérise

les data scientists comme ayant les qualités suivantes :

  • Expertise technique : les meilleurs data scientists ont généralement une expertise approfondie dans une discipline scientifique.
  • Curiosité : un désir d’aller sous la surface et de découvrir et distiller un problème en un ensemble très clair d’hypothèses qui peuvent être testées.
  • La narration : la capacité d’utiliser les données pour raconter une histoire et de pouvoir la communiquer efficacement.
  • L’ingéniosité : la capacité d’envisager un problème de manière différente et créative.

La portée considérable des projets d’analyse des big data peut avoir des aspects inconfortables : les données doivent être sorties des silos pour être exploitées, et l’organisation doit apprendre à communiquer et à interpeller les résultats de l’analyse.

Ces compétences en matière de narration et d’intelligence sont les facteurs d’entrée qui déterminent en fin de compte si les bénéfices des travaux d’analyse sont absorbés par une organisation. L’art et la pratique de la visualisation des données deviennent de plus en plus importants pour combler le fossé entre l’homme et l’ordinateur afin de médiatiser la perspicacité analytique de manière significative.

Sachez où vous voulez aller

Enfin, n’oubliez pas que le big data n’est pas une panacée. Vous pouvez trouver des modèles et des indices dans vos données, mais ensuite quoi ? Christer Johnson, leader d’IBM pour l’analyse avancée en Amérique du Nord, donne ce conseil aux entreprises qui débutent avec le big data : commencez par décider du problème que vous voulez résoudre.

Si vous choisissez un vrai problème commercial, comme la façon dont vous pouvez modifier votre stratégie publicitaire pour augmenter les dépenses par client, cela guidera votre mise en œuvre. Si le travail sur le big data bénéficie d’un esprit entreprenant, il bénéficie aussi fortement d’un objectif concret.

Relié:

  • Qu’est-ce que la science des données ?
  • Constituer des équipes de science des données
  • Le Big Data Now
  • « Les données à l’échelle de l’univers », présentation de Kyle Cranmer à Strata NY 2011 (vidéo)
  • Constituer des startups de données : Rapide, gros, et ciblé

.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *