Dans les épisodes précédents, nous avons présenté comment planifier des workflows avec les coordonnateurs de Oozie. Voyons maintenant un moyen rapide pour interroger des données avec Impala.
Hue, marche avec Impala depuis sa première version et apporte des requêtes interactives rapides au sein de votre navigateur. Si vous n'etes pas familier avec Impala , nous vous conseillons de jete un oeil a la documentation du plus rapide moteur SQL pour Hadoop.
Impala App
La plupart du SQL de Hive est compatible avec Impala et nous allons comparer les requêtes d’un épisode precedent avec les applications Impala et Hive. Notez que cette comparaison n'est pas 100% scientifique, mais elle montre ce qui se passerait en pratique.
Utiliser Impala à travers l'application de Hue est plus facile à bien des égards que de l'utiliser à travers la ligne de commande du impala-shell. Par exemple, les noms de tables, bases de données, des colonnes, des fonctions intégrées sont auto-completable et la coloration syntaxique montre les fautes de frappe potentielles dans vos requêtes. Plusieurs requêtes ou une partie sélectionnée d'une requête peut être exécutée à partir de l’éditeur. Les requêtes paramétrées sont pris en charge et l'utilisateur sera invité a saisir des valeurs au moment de la soumission. Les requêtes Impala peuvent être sauvegardés et partagés entre les utilisateurs ou supprimées, puis restaurées à partir de déchets en cas d'erreurs.
Impala utilise le même Metastore de Hive afin que vous puissiez parcourir les tables avec le Metastore Browser . Vous pouvez également choisir une base de données avec une liste déroulante dans l’éditeur. Après la présentation, les progrès et les journaux sont signalés et vous pouvez naviguer sur le résultat avec défilement infini ou télécharger les données depuis votre navigateur.
Comparaison de vitesse
Commençons par les exemples de Hue car ils sont facilement accessibles. Ils sont très petits mais montrent la vitesse de l’éclair d'Impala et l'inefficacité de la série de MapReduces créés par Hive.
Assurez-vous que les exemples Hive et Impala soient installés dans Hue puis dans chaque application, allez dans « Requêtes enregistrées », copier la requête ‘Sample: Top salaries » et soumettez la.
Ensuite, nous revenons à nos données de Yelp. Prenons la requête de l’épisode un et exécuter la dans les deux applications:
SELECT r.business_id, nom, SUM (froid) AS fraîcheur de l'examen r JOIN affaires b ON (r.business_id = b.business_id) lorsque des catégories like '%% Restaurants » ET `date` = '$ Date' GROUP BY r. business_id, nom ORDER BY fraîcheur DESC LIMIT 10
Encore une fois, vous pouvez voir les avantages de l'Impala grace a son l'architecture et optimisation .
Conclusion
Ce message décrit comment Impala permet une analyse de données interactive et plus productif que le batch de Hive. Les résultats reviennent vite, et dans notre cas de données de Yelp, instantanément. Impala et Hue combinés sont une recette pour l'analyse rapide avec Hadoop. En outre, l’API Python de Hue peut aussi être réutilisée si vous voulez construire votre propre client.
La VM de démo de Cloudera avec ses tutoriels Hadoop est une excellente façon de commencer avec Impala et Hue. Un prochain blog post décrira comment utiliser les formats de fichiers les plus efficaces dans l'Impala.
Comme d'habitude, n'hésitez pas à commenter sur la mailing list ou sur la Twiter @gethue!