Big Data, Science des données, aide à la décision en entreprise, business intelligence, data warehouse, reporting, OLAP, web analytics, data visualization, data mining, internet des objets, informatique cognitive, intelligence artificielle...

Abonnez-vous gratuitement à Decideo !


Decideo

 


Big Data : Hadoop et Spark ou la fusion du batch et du temps réel !


Rédigé par le 6 Janvier 2014

Rappelez-vous, en janvier 2013, Gartner prédisait que 65% des applications analytiques reposeraient sur une plateforme Hadoop en 2015. Hadoop – que l’on ne présente plus de nos jours, mais pour un petit rappel, vous pouvez lire ceci – a eu droit à un beau lifting en 2013. Ainsi, revenons sur la principale avancée de cette année qui va, très certainement changer notre façon d’organiser les données.



Hadoop des bénéfices et gains incontestables

Abed AJRAOU, Responsable de Domaine Business Intelligence PagesJaunes
Abed AJRAOU, Responsable de Domaine Business Intelligence PagesJaunes
Tout d’abord, rappelons les avantages de ce framework :

• Le coût de stockage : il est fréquent de rencontrer des entreprises qui ne conservent pas l’ensemble de leurs données, uniquement pour un problème de coût. En effet, les données historiques dans les bases de données RDBMS sont souvent purgées pour garantir des performances acceptables et surtout pour ne pas investir davantage d’un point de vue logiciel et en infrastructure. Or Hadoop permet de stocker à moindre de coût ! Avec un tel framework, il devient alors possible de stocker et de conserver toutes les données, pour le plus grand bonheur de nos Data Scientist.

• La performance : contrairement aux bases de données traditionnelles, Hadoop permet aux applications d’interroger et d’analyser des téraoctets de données très rapidement tout en garantissant les performances, en utilisant un système de serveurs très bon marché (cluster parallélisé).

• La rapidité : la structure distribuée d’Hadoop HDFS (hadoop data file system) permet de localiser et de récupérer la donnée où qu’elle se trouve. Ainsi, Hadoop permet de traiter des requêtes en quelques minutes sur des téraoctets de données et sur des pétaoctets en quelques heures.

• La flexibilité : un des grands intérêts d’Hadoop est de pouvoir stocker et analyser aussi bien des données structurées que des données non structurées, et ceci de la même manière ! Ainsi, il devient possible d’analyser et de croiser des bases de données et des données digitales.

• La robustesse : map reduce d’Hadoop n’est pas sensible à la panne d’un serveur du cluster. En d’autres termes, le framework Hadoop se comporte de la même façon même en cas de pannes de serveurs.

La nouveauté de l’année 2013 – finie la frontière entre streaming et batch

Rentrons maintenant plus au cœur d’Hadoop avec un peu plus de détails.

Malgré tous ces avantages, Hadoop est toujours en pleine mue pour être encore plus efficace. En effet, l’un des plus grands inconvénients d’Hadoop réside dans la latence des traitements. Le fait que toute requête utilise le map reduce (mapper les données et les réduire en exploitant l’ensemble des serveurs), il existe un temps de latence incompréhensible qui dépend aussi du nombre de serveurs sollicités.
Après ce constat, des travaux ont été réalisés. En 2012, nous avions découvert Impala qui permettait de faire du temps réel, au détriment du cinquième avantage à savoir la robustesse. En 2013, plusieurs innovations sont apparues. Tout d’abord pour améliorer l’allocation de ressources, le map reduce de nouvelle génération (v2 ou encore appelé YARN), tant attendu, est devenu disponible. L’architecture Hadoop se trouve un peu changée avec l’arrivée du Ressource Manager qui a pour mission de gérer l’ensemble des besoins des Applications Master. Mais le meilleur reste à venir.

En novembre 2013, Cloudera annonce supporter via sa distribution le projet Spark. Spark est un framework d’Apache de type map/reduce (data-processing) qui s’interface avec Hadoop HDFS et permet d’exploiter plus efficacement les serveurs surtout sur des requêtes itératives qui sollicitent les données à plusieurs reprises. Et pour le bien de tous, Spark permet aussi de simplifier les codes map/reduce. Pour les initiés, le fameux traitement « wordcount » se code en 3 lignes sur Spark !

Cette prouesse n’est pas seulement technologique, elle risque de changer aussi notre façon d’architecturer les données. Aujourd’hui, dans les entreprises, différentes architectures de données sont mises en œuvre pour gérer d’une part les besoins en temps réel (« streaming ») et d’autre part les besoins en mode batch (type Business Intelligence traditionnelle). Grâce à Spark, les deux architectures peuvent maintenant être conciliées, ce qui permet de faire des économies en termes de déploiement, de maintenance et en termes de code applicatif. Cette conciliation d’architectures permet aussi d’accélérer une culture d’entreprise basée sur la donnée.

L’uniformité des architectures batch et des architectures temps réel constituerait-elle la prochaine avancée du Big Data ?




Commentaires

1.Posté par Frederic Le Bris le 09/01/2014 16:21
Twitter
Superbe utilisation de spark : http://www.youtube.com/watch?v=7mmcEl_1CPw

2.Posté par Abed Ajraou le 10/01/2014 16:12
Excellent! Merci Frédéric pour la trouvaille.

3.Posté par Heuschling Vincent le 14/01/2014 14:46
Abed,
très bel article qui donne une bonne idée du shift qui se fait autour d'Hadoop et de Spark. Comme toi beaucoup de gens voient dans Spark l'opportunité de pouvoir adresser le stream de données en temps réel. C'est une des applications possibles, mais la grande force de Spark réside plus dans ses caractéristiques originale que sont l'utilisation intensive de la mémoire.

Aujourd'hui l'immense majorité des jobs traitent au final moins de 100 Go de données (même chez les plus grands comme FB). Cette quantité de donnée au final est assez facilement adressable dans l'espace mémoire de quelques serveurs. Les jobs de Machine Learning se caractérisent par la nécessité d'accéder de manière répétée aux mêmes données, et donc en faisant 'sauter' la barrière du disque on peut augmenter considérablement les performances de ceux-ci, même en mode batch.

L'intégration d'Hadoop et de Spark est donc l'opportunité de continuer à organiser les données en volume avec Hadoop pour profiter des capacités quasi illimitées qu'il apporte, et de traiter pour valoriser les données en ayant des niveaux de performances très élevés.

Nouveau commentaire :
Facebook Twitter

Vous pouvez commenter ou apporter un complément d’information à tous les articles de ce site. Les commentaires sont libres et ouverts à tous. Néanmoins, nous nous réservons le droit de supprimer, sans explication ni préavis, tout commentaire qui ne serait pas conforme à nos règles internes de fonctionnement, c'est-à-dire tout commentaire diffamatoire ou sans rapport avec le sujet de l’article. Par ailleurs, les commentaires anonymes sont systématiquement supprimés s’ils sont trop négatifs ou trop positifs. Ayez des opinions, partagez les avec les autres, mais assumez les ! Merci d’avance. Merci de noter également que les commentaires ne sont pas automatiquement envoyés aux rédacteurs de chaque article. Si vous souhaitez poser une question au rédacteur d'un article, contactez-le directement, n'utilisez pas les commentaires.