Quelle est l'utilisation de hcatalog dans hadoop?
Je suis nouveau sur hadoop.Je sais que le HCatalog est un tableau de gestion du stockage et de la couche pour Hadoop. Mais exactement comment il fonctionne & comment l'utiliser. Veuillez donner quelques exemple simple.
source d'informationauteur Vijay_Shinde
Vous devez vous connecter pour publier un commentaire.
HCatalog prend en charge la lecture et l'écriture des fichiers de tout format pour lesquelles une Ruche SerDe (sérialiseur-deserializer) peut être écrit. Par défaut, HCatalog prend en charge RCFile, CSV, JSON, et SequenceFile formats. Pour utiliser un format personnalisé, vous devez fournir le InputFormat, OutputFormat, et SerDe.
HCatalog est construit sur le haut de la Ruche metastore et intègrent des éléments de la Ruche DDL. HCatalog fournit de lire et d'écrire des interfaces pour les Porcs et les MapReduce et utilise la Ruche de l'interface de ligne de commande pour la délivrance de la définition des données et des métadonnées de l'exploration des commandes.
Il présente également une interface REST pour permettre l'utilisation d'outils externes d'accès à la Ruche DDL (Data Definition Language) de l'exploitation, tels que “créer un tableau” et “description de la table”.
HCatalog présente une vue relationnelle de données. Les données sont stockées dans des tables et ces tables peuvent être placées dans des bases de données. Les tableaux peuvent également être partitionnée sur une ou plusieurs touches. Pour une valeur donnée d'une clé (ou un ensemble de touches), il y a une partition qui contient toutes les lignes avec la valeur (ou un ensemble de valeurs).
Edit: la Plupart du texte est de https://cwiki.apache.org/confluence/display/Hive/HCatalog+UsingHCat.
En bref, HCatalog ouvre la ruche des métadonnées à d'autres mapreduce outils. Chaque mapreduce outils a sa propre idée sur HDFS données (exemple de Porc voit le HDFS données comme un ensemble de fichiers, la Ruche qu'il considère comme des tableaux). Avec la table de base de l'abstraction, HCatalog pris en charge mapreduce outils n'ont pas besoin de se soucier de l'endroit où les données sont stockées dans le format et l'emplacement de stockage (HBase ou HDFS).
Nous faisons l'installation des WebHcat à soumettre des travaux dans un Reposante façon, si vous configurez webhcat le long de Hcatalog.
Voici un exemple de base de la façon dont ho utilisation HCATALOG.
J'ai une table dans la ruche ,le NOM de la TABLE est l'ÉTUDIANT qui est stocké dans l'un des HDFS emplacement:
neethu 90
malini 90
sunitha 98
mrinal 56
ravi 90
joshua 8
Maintenant, supposons que je veux charger une table de porc pour la poursuite de la transformation de données,
Dans ce scénario que je peux utiliser HCATALOG:
Lors de l'utilisation d'informations de la table de la Ruche metastore de Porc, ajouter le useHCatalog option lors de l'invocation de porc:
pig -useHCatalog
(vous pouvez les exporter HCAT_HOME 'HCAT_HOME=/usr/lib/ruche-hcatalog/')
Chargement de ce tableau de porc:
A = LOAD 'student' USING org.apache.hcatalog.pig.HCatLoader();
Maintenant que vous avez chargé le tableau de cochon.Pour vérifier le schéma , il suffit de DÉCRIRE la relation.
DESCRIBE A
Grâce
Comme vous l'avez mentionné "HCatalog est un tableau de gestion du stockage et de la couche pour Hadoop" Qui donne de très haut niveau d'abstraction à d'autres cadres, comme MR et de l'Étincelle de Porc en effectuant des opérations d'e/S de stockage Distribué couche pour la Ruche tables.
HCatalog se compose de 3 éléments clés
Une fois HCatalog installé et en cours d'exécution avec succès, vous effectuez les opérations suivantes sur CLI
Exemple:
Hcatalog est la gestion des métadonnées du système de Fichiers Hadoop. Hcatalog peut être consulté par le biais de webhcat ce qui rend l'utilisation de l'api rest. Quelles que soient les tables créées dans hcatalog peut être consulté par le biais de hive et pig.