En juillet 2014 dernier, l’ex ministre Arnaud MONTEBOURG présentait les 34 plans de la Nouvelle France Industrielle (NFI), un projet de ré industrialisation dont l’ambition est de positionner la France stratégiquement sur le Big Data. Par ce projet, l’Etat montre officiellement que malgré l’engouement médiatique qu’il y’a autour du Big Data, la transition vers l’ère Numérique est bien réelle et les opportunités du Big Data sont bel et bien existantes.
L’humanité produit tous les 2 jours autant de données qu’elle n’en a générée depuis l’aube de la civilisation jusqu’en 2003. Selon les études de l’IDC, cela correspond à 2 Go de données produits tous les jours par chaque homme, femme et enfant sur la planète. Pour qualifier cette explosion massive de données, le qualificatif « Big Data » a été adopté.Les entreprises sont en train de comprendre les enjeux que représentent les données et aujourd’hui, toutes celles qui ont décidé de tirer profit du volume de données qu’elles possèdent utilisent Hadoop d’une façon ou une autre.
Hadoop est resté pendant longtemps entre les mains de l’open source. Mais aujourd’hui, grâce au travail de la fondation Apache et des éditeurs Cloudera, Hortonworks et MapR, il est en passe de devenir le standard de Facto de traitement de données dans les entreprises. Chacun de ces éditeurs proposent une distribution Hadoop :Cloudera avec sa distribution CDH, Hortonworks, avec sa distribution HDP et MapR avec sa distribution CDP. Etant donné que ces trois distributions s’appuient toutes sur le même socle open source d’Hadoop, il peut être difficile pour une entreprise, ou une DSI de choisir la distribution qui lui correspond ou de justifier l’investissement d’une distribution au détriment d’une autre. Dans cet article, nous allons vous donner 5 critères sur lesquels vous pouvez vous appuyer pour choisir la distribution qui convient à votre entreprise et à votre projet.
Avant d’entrer dans le détail de ces 5 critères, un petit tableau récapitulatif des composants de chacune de ces 3 distributions (Attention ! ce tableau est susceptible d’avoir évolué. Renseignez-vous directement auprès de l’éditeur pour plus de précision).
Tableau 1:caractéristiques majeures de chaque distribution Hadoop en 2016
Catégories d’outils | Cloudera CDH | Hortonworks HDP | MapR CDP |
Modèles de calcul | MapReduce, Mahout, Spark, DataFu | MapReduce, Spark, TEZ | MapReduce, Mahout, Spark |
Langages d’abstraction | Hive, Pig | Hive, Pig | Hive, Pig |
SQL | Impala | HAWK, Phoenix | Drill, Impala |
Système de fichier distribué | HDFS, Fuse-DFS | HDFS | MapR-FS |
Base de données | HBASE, Kudu | HBASE, Accumulo | HBase, MapR DB |
Ingestion Streaming | Flume, Kafka | Flume, Kafka | Flume, MapR Stream |
Traitement temps réel | Spark | Storm | Storm |
Coordination | ZooKeeper | ZooKeeper | ZooKeeper |
Workflow | Oozie | Oozie | Oozie |
Intégration | Sqoop | Sqoop | Sqoop |
Administration | Cloudera Manager, Sentry | Ambari, Slider, Atlas, Ranger | MCS (MapR Control System) |
Gestionnaire de ressources | YARN | YARN | YARN, Myriad |
Versions | 5.1 | 2.5 | 5.2 |
Maintenant que vous avez un aperçu de chaque distribution, vous pouvez vous appuyer sur les 5critères les suivants pour choisir la distribution qui correspond à votre entreprise : la sécurité, le support, le TCO, l’alignement stratégique de la distribution à l’entreprise, et la convivialité dans l’utilisation. Nous allons expliquer en détail chacun de ces critères.
#Critère 1 : la sécurité
Les révélations d’Edward Snowden en 2013 concernant l’espionnage mondial des moyens de télécommunication ont envoyé des ondes de chocs sur toute la planète et nous ont rappelé à tous que la sécurité, plus précisément la confidentialité, sera l’un des plus grands défis de l’ère du Big Data. A cause de sa capacité de centralisation de données, Hadoop sera l’un des éléments les plus importants de l’entreprise à sécuriser. Malheureusement, sécuriser un cluster Hadoop représente le plus grand challenge du monde de l’open source comme le monde du logiciel propriétaire actuellement. Ce qui rend Hadoop si difficile à sécuriser est qu’il ne s’appuie pas sur le modèle classique d’architecture client-serveur, mais sur un modèle distribué. En effet, dans un cluster Hadoop, le système de fichier est partitionné et distribué, requérant ainsi une vérification d’autorisation à plusieurs niveaux ; un job soumis est exécuté plus tard, dans des nœuds différents du noeud sur lequel le client s’est authentifié et a soumis le job; de plus, le passage à l’échelle du cluster à l’ordre du millier de machines n’arrange pas la situation. Par défaut, Hadoop s’exécute sans aucun mode de sécurité, aucune authentification n’est requise pour l’exploiter. Le mode de sécurité le plus abouti qui est fourni par Apache actuellement pour Hadoop c’est l’authentification KERBEROS, un protocole d’authentification réseau qui repose sur un mécanisme de chiffrement symétriqueet non sur les mots de passe en clair, évitant ainsi le risque d’interception frauduleuse des mots de passe en clairs des utilisateurs. Malheureusement, l’authentification KERBEROS est un mode de sécurité très global. Votre politique de sécurité Hadoop devrait aller plus loin que cela et inclure la sécurité des jobs, les restrictions des droits d’accès par catégorie d’utilisateurs, les niveaux d’autorisation sur les jobs, les fichiers, les applications, l’intégration de l’authentification avec l’annuaire de l’entreprise (authentification LDAP, Active Directory), le cryptage des données lorsqu’elles sont transférées d’un service Hadoop à un autre. Une fois que vous avez défini les éléments de votre politique de sécurité Hadoop, regardez l’offre de chaque éditeur selon ces différents éléments. Au-delà de cela, si la distribution de l’éditeur s’appuie exclusivement sur l’open source, alors assurez-vous que l’éditeur garantit qu’il n’y’a aucun risque de sécurité lié au principe de partage du code source. Le tableau 2 ci-bas détaille les fonctionnalités de sécurité offertes par chacune des distributions ;
#Critère 2 : le support
l’un des principaux problèmes avec l’open source c’est le manque de support, support en termes de documentation et support en termes de compétences technologiques. Le manque de support que ce soit l’un ou l’autre peut potentiellement bloquer vos équipes et à termes vous empêcher de rentrer dans l’investissement de votre cluster Hadoop. Ainsi, vous devez vous assurer que l’éditeur fournit suffisamment de documentation nécessaire à l’exploitation des outils de sa distribution, le support d’intervention sur site en cas de problème avec votre cluster (ainsi que le coût de leur intervention), et les cursus de formations certifiants offerts pour permettre aux utilisateurs de monter en compétence sur l’écosystème de la distribution. Aujourd’hui, les trois éditeurs du marché fournissent ces trois niveaux de supports, mais à des tarifs différents. Comparez leur offre et sélectionnez celle qui correspond aux besoins de l’entreprise et à son budget ;
#Critère 3 : le TCO
le TCO ou Total Cost of Ownership, en français Coût Total de possession, est le coût de revient de l’infrastructure du système informatique d’une entreprise. Il prend en compte le coût des ordinateurs, le coût d’acquisition des logiciels, le coût des licences, et le coût de support de cette infrastructure (Salaire des personnes qui travaillent pour maintenir l’infrastructure en marche, coût d’électricité pour faire tourner l’infrastructure…). Le TCO donne une indication sur le poids du système informatique dans la structure de coût globale de l’entreprise, et sert ainsi comme indicateur de prise de décision lors des affectations de budget et des achats informatiques. Le TCO d’un cluster Hadoop traduit le coût de l’infrastructure du cluster (coût de l’ensemble des nœuds du cluster, des commutateurs réseau, câbles réseau LAN), le coût des licences de la distribution, et le cout de support du cluster (coût d’électricité, coût du personnel d’exploitation et d’administration, coût de maintient des bâtiments dans lesquels résident le cluster,…). En clair le TCO d’un cluster Hadoop vous dit combien vous coûte votre cluster Hadoop. Ce coût ne dépend pas uniquement de l’éditeur, mais également de l’offre de cluster Haute performance des différents fabricants d’ordinateurs tels que Dell, LENOVO, ou HP. En ce qui concerne les coûts des licences, vous devez savoir que globalement, les éditeurs facturent la location de leur distribution sous forme de licence souscrite annuellement. Le prix de cette licence varie en fonction du nombre de nœuds du cluster, du niveau de support offert et d’autres facteurs propres à l’éditeur. Pensez à vérifier ces facteurs avec l’éditeur et négociez les prix !
#Critère 4 :l’alignement stratégique de la distribution à l’entreprise
Dans l’ouvrage the « World View : Global Strategies for the New Economy » publié par la Harvard Business Review, l’un des auteurs s’indigne du fait que beaucoup de dirigeants occidentaux croient à tort qu’améliorer son entreprise c’est l’équiper en dernière technologies à la pointe, en dernières versions logicielles, associant ainsi nouveauté à compétitivité. Il dit à cet égard « Nous suspectons que si les entreprises analysaient de façon rigoureuse leurs technologies propriétaires, elles seraient surprises du grand nombre d’entre elles qui n’apportent aucun avantage compétitif ». Nicholas CARR qui est l’un des analystes IT les plus respectés renchérit ce constat dans son article « IT Doesn’tmatter » en montrant que la technologie, aussi nouvelle et efficace soit-elle, ne fournit aucun avantage concurrentiel. Par le critère d’alignement de la distribution à l’entreprise, nous voulons déplacer le focus des dirigeants de la façon dont ils peuvent utiliser Hadoop à la façon dont Hadoop peut servir l’entreprise. En d’autres termes, ne conformez pas votre entreprise (ou le système informatique de votre entreprise) à une distribution, mais conformez la distribution à votre entreprise. Lors de la sélection d’une distribution, gardez toujours à l’esprit que ce sont les processus métiers de l’entreprise qui crée de la valeur et pas la technologie ;
#Critère 5 : la convivialité dans l’utilisation de la distribution
la convivialité est un critère simple, et plus discret que les autres critères, pourtant il est la clé du retour sur investissement de la distribution. L’expérience a montré et continue de montrer que l’adoption d’une technologie ne dépend pas des développeurs, mais des utilisateurs métiers (confère loi de Metcalfe). Autrement dit, pour qu’une technologie accroche les métiers, il faut absolument qu’elle soit transparente pour eux, c’est-à-dire qu’elle ne demande aucune compétence supplémentaire de la part des utilisateurs. Aujourd’hui, en matière de gestion de données, le SQL est la compétence favori des métiers. Ainsi, vous pouvez être sûr que toute technologie de données qui ne propose pas à l’utilisateur de travailler avec le SQL sera simplement rejetée. Les outils offerts par la distribution de l’éditeur doivent être simples à utiliser, et doivent être le plus proche possible du SQL. Plus les utilisateurs seront confortables avec la distribution, et plus ils seront productifs, et plus ils seront productif et plus vous rentrerez dans vos investissements. Privilégiez donc autant que faire ce peut les éditeurs qui proposent des interfaces graphiques pour l’exploitation des outils de leur distribution et des outils compatibles avec le SQL.
Le tableau suivant récapitule les solutions offertes par les 3 distributeurs vis-à-vis de ces 5 critères. Si vous souhaitez aller plus loin, nous vous recommandons l’ouvrage « Hadoop – Devenez opérationnel dans le monde du Big Data » paru chez les éditions ENI dont nous sommes l’auteur. Vous y découvrirez d’autres critères pour sélectionner votre distribution, les pièges à éviter pour réussir votre projet Big Data, les opportunités offertes par Hadoop et le Big Data,et les éléments nécessaires pour faire monter en compétence vos équipes sur le Big Data.
Tableau 2 : benchmark des distributions Hadoop open source et propriétaires selon nos 5 critères de sélection.
Critère | Apache | Cloudera | Hortonworks | MapR |
Sécurité | Authentification Kerberos, Autorisation de Niveau de Service, Authentification des consoles Web, Confidentialité des données | Authentification Kerberos, Autorisation de Niveau de Service, rôles, cryptage SSL, RPC, HTTPS, TLS, traçage des données, Apache Sentry (en incubation) | Authentification Kerberos, Autorisation de Niveau de Service, cryptage SSL, RPC et HTTPS, traçage des données, Apache Ranger (en incubation) | Authentification Kerberos, Autorisation de Niveau de Service, cryptage TLS, SSL, conformité au standard NIST, traçage des données, gestion des identités |
Alignement stratégique | Dépend de la perception des dirigeants vis-à-vis du rôle de la technologie dans l’entreprise | Dépend de la perception des dirigeants vis-à-vis du rôle de la technologie dans l’entreprise | Dépend de la perception des dirigeants vis-à-vis du rôle de la technologie dans l’entreprise | Dépend de la perception des dirigeants vis-à-vis du rôle de la technologie dans l’entreprise |
support | Documentation très technique, support et formation non offerts | Très bien documenté aussi bien techniquement que fonctionnellement. support et formation à la demande. Programme de certification disponible pour la montée en compétence | Très bien documenté aussi bien techniquement que fonctionnellement Support disponible sous souscription d’un abonnement annuel. Formation à la demande. Programme de certification disponible pour la montée en compétence | Très bien documenté techniquement et fonctionnellement. support disponible sous souscription selon un plan. Formation disponible gratuitement. Programme de certification disponible pour la montée en compétence |
TCO | Open source | Location annuelle de licence. | Location annuelle de licence | Location annuelle de licence. |
Convivialité | HUE, Ambari | Hue, Cloudera Manager, fournit des outils manipulables via le SQL | HUE, Zeppelin, Ambari, fournit des outils manipulables via le SQL | Hue, MapR Control System, fournit des outils manipulables via le SQL |