Comprendre Hadoop-as-a-Service
By   |  August 10, 2015

Hadoop est clairement devenu la plate-forme leader pour les grandes analyses de données d’aujourd’hui. Mais en dépit de ses immenses promesses, toutes les entreprises ne sont pas prêtes ou capables de mettre en œuvre et de maintenir un environnement Hadoop avec succès. En conséquence, la nécessité d’Hadoop couplé avec le manque d’expertise dans la gestion de grands systèmes, a entraîné la création d’une multitude d’offres d’un nouveau genre sous la forme de Hadoop-as-a-Service (Haas). Les fournisseurs HaaS représentent une occasion exceptionnelle pour les administrateurs et DSI débordés qui ont besoin d’intégrer Hadoop mais ne possèdent pas les ressources ou l’expertise interne pour le faire.

Mais de quel type de fournisseur HaaS avez-vous besoin? Les différences entre chaque offre de service peuvent être considérables. Les fournisseurs Haas offrent une gamme de fonctionnalités et de support, de l’accès de base aux logiciels Hadoop et aux machines virtuelles, de logiciels préconfigurés dans un environnement “run it yourself” (RIY). Toute évaluation d’une offre HaaS devrait prendre en compte la façon dont chacun des services vous permet d’atteindre vos objectifs tout en réduisant les problèmes de gestion de l’infrastructure. Voici cinq critères qui aident à distinguer la variété des options Haas.

HaaS devrait satisfaire les besoins des scientifiques à la fois les données et les administrateurs de centre de données
Les Data scientists passent beaucoup de temps à manipuler des données, à intégrer des ensembles de données et à procéder à des analyses statistiques. Ces types d’utilisateurs désirent généralement un environnement fonctionnel riche et puissant. Idéalement, les data scientists devraient avoir la possibilité d’exécuter Hadoop à travers Hive, Pig, R, Mahout ou tout autre outils de data science. Idéalement toujours, les résultats des opérations devraient être immédiatement disponibles. Or bien souvent, les éventuels retards dans le démarrage des grappes et le rechargement des données fait perdre du temps. Un service Hadoop doit par conséquent éviter les retards frustrants qui se produisent lorsque le data scientist doit déployer un cluster et charger les données de bases de données non HDFS avant de commencer le travail.

Le travail des administrateurs système implique généralement un ensemble de tâches de gestion connexes. Les consoles de gestion devraient être rationalisées pour leur permettre d’effectuer ces tâches rapidement et avec un nombre minimal d’étapes. Si l’administrateur doit configurer un ensemble de paramètres, seuls ces derniers devraient être exposés, en évitant l’accès aux paramètres qui sont gérés par le prestataire Haas. De même, les détails de surveillance à basse altitude devraient être laissés au fournisseur Haas. L’interface d’administration devrait simplement rendre compte de l’état de santé général et de la conformité du service.

HaaS doit stocker les données au format HDFS
HDFS est le format natif pour stocker des données dans Hadoop. Lorsque les données existent dans d’autres formats, elles doivent être migrées au format HDFS. Le stockage persistant de données au format HDFS évite les délais et les coûts de traduction des données d’un autre format à HDFS.

Après le chargement des données initiales, les utilisateurs ne devraient pas avoir à gérer les données dans les systèmes de stockage exogènes à Hadoop. HDFS est le standard éprouvé pour fournir un stockage rentable, fiable et évolutif. Il est optimisé pour fonctionner efficacement avec MapReduce et est adapté à une utilisation interactive par les analystes et les data scientists, et est en outre compatible avec l’écosystème croissant d’applications Hadoop tierces. Les solutions Haas devraient toujours proposer HDFS en standard afin que les utilisateurs peuvent facilement tirer parti de ces avantages.

HaaS devrait fournir de l’élasticité
L’élasticité doit être une considération centrale lors de l’évaluation des fournisseurs Haas.

Une autre considération lors de l’évaluation des fournisseurs Haas est la facilité – l’élasticité – avec laquelle le service gère la demande. En particulier, on doit considérer la transparence avec laquelle le service gère les demandes changeantes des ressources de calcul et de stockage. Par exemple, les jobs Hadoop peuvent générer des résultats provisoires stockés temporairement. Un service HaaS mature doit pouvoir élargir le stockage nécessaire de façon transparente et sans intervention de l’administrateur système. Sinon, les administrateurs devront intégrer une mission de vérification et de réglage des paramètres de stockage, au risque de retarder la bonne marche des jobs Hadoop.

Il est tout aussi important de vérifier au préalable la façon dont HaaS gère les charges de travail. Les environnements qui soutiennent à la fois les jobs de production et d’analyse par les data scientists connaîtront un large éventail de charges de travail mixtes. Comment le service s’adapte-t-il à ces charges de travail variables? Peut-on gérer efficacement la capacité CPU connexe?

Idéalement, l’expansion et la contraction élastique des ressources devraient créer nombre minimal de tâches de configuration et d’administration.

HaaS devrait soutenir une activité continue
Dans les environnements de production avec des charges de travail fixes, les administrateurs système tirent parti du système d’exploitation et des applications mises au point pour optimiser le traitement de ces charges de travail. Ils peuvent réaliser des opérations non-stop en élaborant le meilleur ensemble de paramètres de configuration et de surveillance des paramètres d’exploitation clés pour assurer exécuter des travaux comme prévu.

Les environnements de données importants, complexes, distribués et les systèmes parallèles présentent des conditions d’exploitation plus difficiles que l’on retrouve dans les applications non parallèles, y compris:

  • La possibilité de redémarrer un sous-processus ayant échoué appartenant à un job pour éviter le redémarrage de l’intégralité du job
  • La réduction ou élimination des jobs qui accaparent les ressources et finissent tard (ou pas du tout), même lorsque les ressources sont disponibles.
  • Eviter le phénomène de « Deadlock », qui se produit quand un seul processus doit attendre une ressource détenue par un autre processus tandis que le second processus attend simultanément une ressource détenue par le premier processus.

HaaS devrait être auto-configurable
Un des avantages d’utiliser un Haas est qu’il réduit la nécessité d’une expertise Hadoop. Un HaaS devrait configurer automatiquement le nombre et type des nœuds optimaux en fonction du traitement retenu. Les data scientists peuvent avoir des connaissances approfondies afin d’appliquer un test statistique particulier ou utiliser un algorithme de machine learning spécifique mais peuvent ne pas disposer des compétences pour décider de la configuration d’un cluster Hadoop nécessaire pour faire fonctionner leurs workflows.

Les administrateurs système ont rarement une expertise approfondie dans tous les domaines de la gestion des systèmes. Un HaaS qui fournit l’auto-configuration permet aux administrateurs système de se concentrer leur temps et leurs efforts sur des tâches prioritaires qui ne peuvent être facilement automatisés.

Les solutions Haas doivent configurer dynamiquement le nombre optimal et le type de noeuds et de déterminer automatiquement les paramètres de réglage en fonction du type de charge de travail et de stockage nécessaire. Ces environnements optimisés réduisent considérablement l’erreur humaine, le temps d’administration, et fournissent des résultats plus rapidement.

Evaulez les offres HaaS disponibles avant de choisir
Hadoop en tant que service est une option prometteuse pour construire et maintenir des clusters Hadoop. Les fournisseurs Haas proposent un large éventail de fonctionnalités et de support. Il convient cependant d’évaluer soigneusement ces offres Haas avant de fixer votre choix afin de vous laisser la meilleure chance de choisir celle qui répond à la fois à vos contraintes de gestion, de données et de traitements.

Raymie Stata est PDG et fondateur de Altiscale, Inc. Raymie fut précédemment Chief Technical Officer chez Yahoo! où il a joué un rôle déterminant dans la recherche algorithmique, l’affichage publicitaire et le cloud computing. Il a également contribué à la stratégie Open Source de Yahoo et a lancé sa participation dans le projet Apache Hadoop.

© HPC Today 2024 - All rights reserved.

Thank you for reading HPC Today.

Express poll

Do you use multi-screen
visualization technologies?

Industry news

Brands / Products index