Télécharger
Transcription
Télécharger
Jeff Feng, chef de produit Tableau Software Les 5 meilleures pratiques pour Tableau et Hadoop 2 Tableau a été conçu pour faciliter les échanges en temps réel avec les données via plusieurs plates-formes. Les utilisateurs professionnels ayant le sentiment d’être freinés par les outils traditionnels se sont tournés vers ce modus operandi. Que se passe-t-il alors lorsque les requêtes sont renvoyées après quelques heures ou minutes, au lieu de quelques secondes ? Peuvent-ils rester concentrés sur leur tâche ? Nous vivons à une époque où il est possible d’analyser les millions ou même les milliards de lignes de données à notre disposition. Pourtant, l’utilisateur s’attend à obtenir des résultats presque instantanés (voir l’étude sur la règle des 2 secondes pour la récupération d’informations). Lorsque le temps de réponse et d’interaction est supérieur à 2 ou 3 secondes, l’utilisateur perd le fil de l’analyse visuelle. Il est donc impératif d’assurer une vitesse suffisante pour les requêtes, pour que l’utilisateur reste concentré et appréhende au mieux ses déploiements Big Data. Un certain nombre de meilleures pratiques lui permettent d’optimiser les performances de ses visualisations et de ses tableaux de bord Tableau créés sur des plates-formes Big Data. Les meilleures pratiques consistent essentiellement en cinq activités : 1. 2. 3. 4. 5. L’exploitation d’un moteur de requête interactif rapide L’utilisation stratégique des connexions en direct et des extraits L’organisation de vos données depuis le lac de données L’optimisation de vos extraits La personnalisation des performances de votre connexion 3 1. L’exploitation d’un moteur de requête interactif rapide Les requêtes Hive exécutées sur Hadoop à l’aide de MapReduce sont particulièrement lentes en raison du traitement associé au mappage des requêtes SQL dans une tâche MapReduce. L’utilisation de Hive avec MapReduce est très intéressante pour réaliser des traitements par lots, comme pour les applications ETL, car ce service offre une grande tolérance aux pannes. Cependant, il reste limité en termes de performances. Nouveaux indicateurs de performance pour SQL sur Hadoop : Impala 1.4 creuse l’écart en termes de performance Les évolutions de Hive se traduisent par de nouvelles structures d’application telles que Tez (qui permet les requêtes interactives) et Spark (qui permet le traitement en mémoire), qui améliorent considérablement la vitesse des requêtes. En dehors de Hive sur Hadoop, il existe un certain nombre d’options très intéressantes pour accélérer vos requêtes. Impala est très connu pour avoir les performances les plus rapides sur Hadoop selon les derniers indicateurs. Bien qu’il en soit encore à un stade initial de son développement, Spark SQL a montré un fort potentiel en tant que moteur de traitement de données rapide. Il peut traiter des données stockées sur Hadoop ou sur des RDD de schéma Spark référencés par un métastore Hive. Impala et Spark SQL L’indicateur de performance du Big Data offre des comparaisons quantitatives et qualitatives pour cinq systèmes. sont tous les deux pris en charge en tant que connecteurs nommés dans Tableau. Pivotal HAWQ, Presto et Apache Drill sont également des technologies régulièrement mentionnées dans les discussions relatives aux performances sur Hadoop. Il existe d’autres possibilités en dehors de Hadoop. Vous pouvez aussi héberger vos données dans des bases de données analytiques rapides comme Actian Vector, HP Vertica, Teradata Aster Data, SAP HANA, ParAccel, Pivotal Greeplum, etc. pour les requêtes à faible latence des utilisateurs professionnels de Tableau une fois que ces données ont été traitées dans Hadoop. Les services d’infrastructure hébergés dans le cloud connaissent également un succès croissant. Google BigQuery exploite l’infrastructure massive de Google, excellente pour traiter des données ainsi que pour permettre des requêtes rapides, en particulier pour de grands ensembles de données. D’un autre côté, Amazon Redshift est un entrepôt de données en colonnes entièrement géré, axé sur l’accès rapide aux données. Récemment, plusieurs nouvelles technologies issues de startups et de projets open source qui utilisent les cubes OLAP (traitement analytique en ligne) (AtScale, eBay Kylin) ou des moteurs d’indexation (JehtroData) pour Hadoop ont vu le jour. Elles offrent la possibilité d’interroger un milliard de lignes ou plus avec une faible latence. 4 2. L’utilisation stratégique des connexions en direct et des extraits L’architecture de données hybride Tableau permettant de se connecter en direct à une source de données ou au moteur de données Tableau via un extrait stocké en mémoire offre aux utilisateurs une flexibilité optimale pour exploiter le Big Data. Les extraits sont parfaits lorsque les moteurs de requête rapides ne sont pas disponibles, pour des ensembles de données de petite ou moyenne taille (pas plus de plusieurs centaines de millions de lignes) ou s’il faut une analyse hors ligne. Pour des ensembles de données plus volumineux, Hadoop Hive et d’autres moteurs de requête seront plus efficaces que Tableau en raison de l’exécution distribuée. Aussi, lorsqu’un moteur de base de données rapide est disponible ou si une analyse en temps réel est requise, il est préférable de choisir une connexion en direct. La liste complète des scénarios recommandés est indiquée ci-dessous dans la Figure 1. Extraits Connexion en direct recommandés recommandée Lorsque l’exécution des requêtes de base de données est lente Lorsqu’un moteur de requête de base de données rapide est disponible Lorsqu’un ensemble de données plus petit est utilisé (par exemple, des centaines de millions de lignes ou moins) Lorsque des ensembles de données plus volumineux sont requis Lorsqu’une analyse hors ligne est requise Lorsqu’une analyse en temps réel est requise Lors de l’utilisation de requêtes SQL personnalisées Lorsqu’un classeur utilise des fonctions RAWSQL directes Lorsque des fonctionnalités analytiques supplémentaires sont nécessaires (définition, rang, différenciation, médiane) Lorsqu’une sécurité substantielle au niveau de l’utilisateur est requise (à l’exception des extraits publiés sur Tableau Server) Figure 1 : scénarios recommandés pour les extraits et les connexions en direct. 5 3. L’organisation de vos données depuis le lac de données L’un des avantages de Hadoop est que sa faculté d’adaptation, sa rentabilité et sa capacité à gérer des données non structurées en font un lac de données idéal, autrement dit un référentiel pour contenir toutes vos données dans leur format natif. Tableau est un outil efficace pour explorer vos données dans le lac de données, mais lorsque vous voulez les meilleures performances pour une visualisation comparative de vos données avec Hadoop, que vos travailleurs du savoir pourront exploiter, il est toujours préférable de commencer par organiser au mieux votre ensemble de données. En tant qu’administrateur informatique, vous avez à votre disposition diverses techniques pour améliorer l’efficacité de votre cluster Hadoop : Conception des partitions : l’organisation d’une table Hive dans des fichiers séparés (chacun comportant de nombreux blocs de données), le tout dans un système distribué avec un ou plusieurs champs de partitionnement, peut grandement accélérer les requêtes par rapport à une requête filtrée par un champ non partitionné. Taille de l’ensemble de données : lorsque vous savez quelles dimensions et mesures observer pour un ensemble d’analyses et que vous connaissez la plage de lignes, le fait de limiter le meilleur ensemble de données présenté à vos travailleurs du savoir vous permettra de toujours optimiser les performances. Les champs clusterisés en tant que champs de regroupement et clés de jointure : les champs qui sont clusterisés peuvent déterminer la façon dont les données de la table sont séparées sur le disque. Les champs clusterisés JOIN et GROUP BY verront leurs performances optimisées. Format de fichier de stockage : le format de fichier joue un rôle essentiel dans l’exécution efficace des requêtes. Utilisez le format de fichier qui correspond le mieux au moteur de requête que vous utilisez. Pour Hive, il s’agit du format Optimized Row Columnar (ORC), et pour Impala, il s’agit de Parquet. Conception d’un modèle de données • Type de données : utilisez des données de type numérique aussi souvent que possible, celles-ci étant bien plus rapides que les chaînes. • Jointures : évitez les jointures inutiles, car elles ne sont pas parfaitement implémentées sur de nombreux systèmes Big Data. Si vous utilisez des jointures, exécutez d’abord l’instruction COMPUTE STAT pour aider le moteur de traitement à optimiser automatiquement les performances des requêtes de jointure. • Formules : évitez d’utiliser des formules qui ne peuvent pas être évaluées efficacement. 6 4. L’optimisation de vos extraits Le moteur de données de Tableau est une base de données analytique en mémoire qui exploite toute la hiérarchie de la mémoire entre le disque et le cache L1. Il peut être un outil puissant pour accélérer votre analyse. Bien qu’il n’ait pas été créé pour avoir la même envergure que Hadoop, le moteur de données de Tableau peut fournir des résultats à faible latence par rapport aux extraits de données avec une cardinalité de centaines de millions de lignes et un grand nombre de colonnes. Bien que l’exploitation des extraits dans le moteur de données de Tableau permette instantanément d’optimiser les performances, il existe plusieurs façons d’accélérer vos requêtes en diminuant la taille de vos données : Définir des filtres : créez un filtre de façon à vous concentrer uniquement sur les données intéressantes. Masquer les champs inutilisés : masquez les champs qui ne sont pas requis pour l’analyse de façon à rendre l’extrait compact et concis. Regrouper des dimensions visibles : regroupez préalablement les données pour obtenir un affichage plus sommaire lorsque les détails ne sont pas nécessaires afin de conduire aux mêmes découvertes avec des requêtes plus rapides. Regrouper les dates : regroupez des dates dans des chronologies plus sommaires lorsque cela est possible. Échantillonnage : pour des bases de données qui prennent en charge cette fonctionnalité, l’échantillonnage peut compresser considérablement les données tout en continuant à représenter les tendances principales. N premiers : si vous recherchez simplement les valeurs les plus élevées d’un ensemble de données, il s’agit là d’un moyen efficace de réduire la taille de l’ensemble de données. 7 5. La personnalisation des performances de votre connexion En tant qu’utilisateur de Tableau, vous disposez d’un certain nombre de possibilités pour optimiser les performances de votre connexion pour des requêtes en direct : SQL personnalisé : le SQL personnalisé vous permet d’utiliser des expressions SQL comme base pour une connexion dans Tableau. Cela peut être particulièrement efficace pour limiter la taille de l’ensemble de données (en utilisant la clause LIMIT). Vous pourrez ensuite explorer ou façonner un nouvel ensemble de données. SQL initial : le SQL initial offre la possibilité de définir les paramètres de configuration et de travailler dès que vous établissez une connexion. Vous pouvez notamment effectuer les actions suivantes : • Améliorer le parallélisme pour l’analyse des données en réduisant la taille du bloc par défaut pour les fonctions Map et Reduce. • Optimiser les performances des jointures en activant des filtres clusterisés. • Régler les configurations pour une distribution inégale en activant les paramètres qui demandent à Hive d’adopter une autre approche pour les tâches MapReduce. Résumé Nous sommes entrés dans l’ère du Big Data : les volumes de données deviennent plus importants et les entreprises se tournent vers Hadoop, Spark et NoSQL pour leur infrastructure de données afin de s’adapter à la nouvelle norme en matière de données. La capacité de Tableau à développer quotidiennement le potentiel des professionnels met les informations visuelles du Big Data à la portée de tous. Même si vous adoptez les meilleures pratiques et que vous les adaptez à votre application, vous serez en mesure de maximiser la valeur de vos investissements Big Data. 8 À propos de Tableau Tableau aide les utilisateurs à visualiser et à comprendre leurs données. Tableau permet à chacun d’analyser, de visualiser et de partager rapidement des informations. Plus de 26 000 clients font confiance à Tableau pour obtenir rapidement des résultats, au bureau ou en déplacement. Tableau Public permet à des dizaines de milliers d’utilisateurs de partager des données sur leurs blogs et sites Web. Découvrez comment Tableau peut vous aider. Téléchargez la version d’évaluation gratuite à l’adresse www.tableau.com/fr-fr/trial. Ressources supplémentaires Télécharger une version d’évaluation gratuite Démos produit Formations et didacticiels Communauté et assistance Témoignages clients Solutions Livres blancs connexes Ce que Tableau pense du Big Data 7 conseils pour maîtriser le Big Data Promouvoir la culture des données : un rapport spécial de l’Economist Intelligence Unit et Tableau Big Data : la prochaine révolution industrielle Tableau Software et le Big Data Groupe Aberdeen : optimiser la valeur des analyses et du Big Data Voir tous les livres blancs Tableau et Tableau Software sont des marques commerciales de Tableau Software, Inc. Tous les autres noms de société et de produit peuvent être des marques appartenant à leurs détenteurs respectifs.