203 votes

Quand utiliser Hadoop, HBase, Hive et Pig ?

Quels sont les avantages de l'utilisation Hadoop o HBase o Ruche ?

D'après ce que j'ai compris, HBase évite d'utiliser map-reduce et dispose d'un stockage orienté colonne au-dessus de HDFS. Ruche est une interface de type sql pour Hadoop y HBase .

J'aimerais également savoir comment Ruche se compare à Cochon .

0 votes

Hadoop : Système de fichiers distribués Hadoop + Modèle de traitement informatique MapReduce. HBase : Stockage clé-valeur, bon pour la lecture et l'écriture en quasi temps réel. Ruche : Utilisé pour l'extraction de données à partir du HDFS en utilisant une syntaxe de type SQL. Cochon : est un langage de flux de données pour la création d'ETL.

0voto

swaroop Points 1

Nous utilisons Hadoop pour stocker des données volumineuses (c'est-à-dire des données structurées, non structurées et semi-structurées) dans des formats de fichiers tels que txt et csv.

Si nous voulons des mises à jour en colonnes dans nos données, nous utilisons l'outil Hbase.

Dans le cas de Hive, nous stockons des données volumineuses dans un format structuré. et en plus de cela, nous fournissons des analyses sur ces données.

Pig est un outil qui utilise le langage latin Pig pour analyser les données dans n'importe quel format (structure, semi-structure et non-structure).

0voto

Akshay Sharma Points 77

Nettoyer les données dans Pig est très facile, une approche appropriée serait de nettoyer les données dans Pig, puis de les traiter dans Hive et enfin de les télécharger dans HDF.

0voto

user1326784 Points 124

Utilisation de Hive, Hbase et Pig en fonction de mon expérience réelle dans différents projets.

Hive est surtout utilisé pour :

  • L'objectif de l'analyse où vous avez besoin de faire une analyse sur les données historiques.

  • Générer des rapports d'activité sur la base de certaines colonnes

  • Gérer efficacement les données et les métadonnées.

  • Joindre des tables sur certaines colonnes qui sont fréquemment utilisées en utilisant le concept de "bucketing".

  • Stockage et interrogation efficaces à l'aide du concept de partitionnement

  • Pas utile pour les opérations au niveau des transactions/rangs comme la mise à jour, la suppression, etc.

Le porc est surtout utilisé pour :

  • Analyse fréquente des données sur des données énormes

  • Générer des valeurs/comptes agrégés sur des données énormes

  • Générer très fréquemment des indicateurs clés de performance au niveau de l'entreprise

Hbase est le plus utilisé :

  • Pour le traitement des données en temps réel

  • Pour gérer efficacement les schémas complexes et imbriqués

  • Pour des requêtes en temps réel et des résultats plus rapides

  • Pour une extensibilité facile avec des colonnes

  • Utile pour les opérations au niveau de la transaction/rangée comme la mise à jour, la suppression, etc.

0voto

Ajay Ahuja Points 557

La réponse courte à cette question est -

Hadoop - est un cadre qui facilite le système de fichiers distribués et le modèle de programmation qui nous permet de stocker des données de taille énorme et de traiter les données de manière distribuée très efficacement et avec un temps de traitement très court par rapport aux approches traditionnelles.

(HDFS - Système de fichiers distribués Hadoop) (Map Reduce - Modèle de programmation pour le traitement distribué)

Hive - Langage d'interrogation qui permet de lire/écrire des données à partir du système de fichiers distribué Hadoop d'une manière très populaire semblable à SQL. Cela a facilité la vie de nombreuses personnes n'ayant pas de formation en programmation, car elles n'ont plus à écrire de programme Map-Reduce, sauf dans des scénarios très complexes où Hive n'est pas pris en charge.

Hbase - Est une base de données NoSQL colonnaire. La couche de stockage sous-jacente de Hbase est à nouveau HDFS. Le cas d'utilisation le plus important pour cette base de données est de pouvoir stocker des milliards de lignes avec des millions de colonnes. La fonction de faible latence de Hbase permet un accès plus rapide et aléatoire des enregistrements sur des données distribuées, ce qui est une caractéristique très importante pour la rendre utile pour des projets complexes comme les moteurs de recommandation. De plus, la capacité de versionnage au niveau de l'enregistrement permet à l'utilisateur de stocker très efficacement des données transactionnelles (ce qui résout le problème de la mise à jour des enregistrements que nous rencontrons avec HDFS et Hive).

J'espère que cela vous aidera à comprendre rapidement les trois fonctions ci-dessus.

0voto

Je pense que ce fil de discussion n'a pas rendu justice à HBase et Pig en particulier. Alors que je crois que Hadoop est le choix du système de fichiers distribué et résilient pour les implémentations de lacs de grosses données, le choix entre HBase et Hive est en particulier bien séparé.

En effet, de nombreux cas d'utilisation requièrent des interfaces de type SQL ou non SQL. Avec Phoenix en plus de HBase, bien que des capacités de type SQL soient certainement réalisables, les performances, les intégrations tierces, la mise à jour des tableaux de bord sont une sorte d'expérience douloureuse. Cependant, c'est un excellent choix pour les bases de données nécessitant une mise à l'échelle horizontale.

Pig est en particulier excellent pour les calculs non récursifs par lots ou le pipelining ETL (où il surpasse Spark d'une distance confortable). De plus, ses implémentations de flux de données de haut niveau constituent un excellent choix pour les requêtes et les scripts par lots. Le choix entre Pig et Hive repose également sur les besoins en matière de scripts côté client ou serveur, les formats de fichiers requis, etc. Pig supporte le format de fichier Avro, ce qui n'est pas le cas de Hive. Le choix entre "langage de flux de données procédural" et "langage de flux de données déclaratif" est également un argument de poids pour le choix entre Pig et Hive.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X