Qu'est-ce que le streaming Hadoop?

Le streaming Hadoop est un utilitaire fourni avec la distribution Hadoop qui peut être utilisé pour exécuter des programmes d'analyse de big data. Il existe plusieurs langages qui peuvent être utilisés pour effectuer cela, comme Java, Scala, Unix, Perl, Python et bien d'autres. L'utilitaire nous aide à créer et à exécuter des tâches de réduction de la carte, tout exécutable ou script étant le mappeur et / ou le réducteur.

Définition

Il s'agit d'une distribution Hadoop avec utilitaire. L'utilitaire nous aide à créer et exécuter des travaux MapReduce spécifiques avec un exécutable ou le script comme mappeur et / ou réducteur.

Compréhension

Il existe des utilitaires java fournis par la distribution Hadoop qui sont appelés streaming Hadoop. L'utilitaire est conditionné dans un fichier JAR. À l'aide de l'utilitaire, nous pouvons créer et exécuter des travaux MapReduce avec un script exécutable. De plus, nous pouvons créer des scripts exécutables pour exécuter les fonctions de mappage et de réduction. Les scripts exécutables sont transmis au streaming Hadoop à l'aide d'une commande. Une fois les scripts transmis au streaming Hadoop, l'utilitaire de streaming Hadoop crée une carte et réduit les travaux et les soumet au cluster. Ces travaux peuvent également être surveillés avec cet utilitaire.

Comment ça marche?

Le script spécifié pour le mappeur et le réducteur fonctionne comme ci-dessous-

Après l'initialisation complète du script du mappeur, il lancera l'instance du script avec différents ID de processus. La tâche de mappage lors de l'exécution prend les lignes d'entrée et les transmet à l'entrée standard. En même temps, les sorties de la sortie standard du processus sont collectées par le mappeur. Il convertit chaque ligne en une paire clé-valeur. L'ensemble des paires clé-valeur est ensuite collecté en tant que sortie du mappeur. La paire de valeurs clés est sélectionnée en fonction du premier caractère de tabulation. La partie de la ligne jusqu'à l'onglet initial est sélectionnée comme clé tandis que le reste de la ligne est sélectionné comme partie précieuse. Dans le cas où l'onglet n'est pas présent dans une ligne, la ligne totale est sélectionnée comme clé et il n'y a pas de partie valeur pour la ligne. Cela peut être ajusté en fonction des besoins de l'entreprise.

Objectif de l'utilisation du streaming Hadoop

Il est utilisé pour l'ingestion de données en temps réel qui peut être utilisée dans différentes applications en temps réel. Il existe différentes applications en temps réel telles que la surveillance des portefeuilles d'actions, l'analyse des parts de marché, la narration du rapport météo, les alertes de trafic qui sont effectuées à l'aide du streaming Hadoop.

Fonctionnement du streaming Hadoop

Voici un exemple simple du fonctionnement du streaming Hadoop:

$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar \
-input myInputDirs \
-output myOutputDir \
-mapper org.apache.hadoop.mapred.lib.IdentityMapper \
-reducer /bin/wc

La commande d'entrée est utilisée pour fournir le répertoire d'entrée tandis que la commande de sortie est utilisée pour fournir le répertoire de sortie. La commande mapper est utilisée pour spécifier la classe de mappeur exécutable tandis que la commande reducer est utilisée pour spécifier la classe de réducteur exécutable.

Avantages du streaming Hadoop

Voici les avantages du streaming Hadoop:

1. Disponibilité

Cela ne nécessite aucun logiciel séparé supplémentaire pour être installé et géré. Il existe d'autres outils comme un cochon, une ruche qui peut être installé, je dois être géré séparément.

2. Apprentissage

Il ne nécessite pas d'apprendre de nouvelles technologies. Le streaming Hadoop peut être exploité avec un minimum de compétences Unix pour l'analyse des données.

3. Réduisez le temps de développement

Il nécessite d'écrire du code de mappage et de réduction tout en développant des applications de streaming sous Unix, tandis que faire le même travail en utilisant l'application Java MapReduce est plus complexe et doit être compilé d'abord, puis tester, puis empaqueter, puis exporter le fichier JAR, puis exécuter.

4. Conversion plus rapide

Il faut très peu de temps pour convertir des données d'un format à un autre à l'aide du streaming Hadoop. Nous pouvons l'utiliser pour convertir des données d'un fichier texte en fichier de séquence, puis à nouveau d'un fichier de séquence en fichier texte et bien d'autres. Ceci peut être réalisé en utilisant les options de format d'entrée et de format de sortie dans le streaming Hadoop.

5. Test

Les données d'entrée et de sortie peuvent être rapidement testées en utilisant le streaming Hadoop avec Unix ou Shell Script.

6. Exigence pour les entreprises

Pour les besoins métier simples comme les opérations de filtrage simples et les opérations d'agrégation simples, nous pouvons les utiliser avec Unix.

7. Performance

En utilisant le streaming Hadoop, nous pouvons obtenir de meilleures performances tout en travaillant avec des données en streaming. Le streaming Hadoop présente également plusieurs inconvénients qui sont résolus en utilisant d'autres outils dans le package Hadoop tels que Kafka, flume, spark.

Pourquoi avons-nous besoin du streaming Hadoop?

Il aide à l'analyse des données en temps réel, qui utilise beaucoup plus rapidement la programmation MapReduce s'exécutant sur un cluster à plusieurs nœuds. Il existe différentes technologies comme spark Kafka et d'autres qui aident au streaming Hadoop en temps réel.

Comment cette technologie vous aidera-t-elle à progresser dans votre carrière?

De nos jours, toutes les grandes entreprises migrent vers Hadoop pour l'analyse de leurs données et nombre d'entre elles peuvent nécessiter une analyse des données en temps réel. La demande pour l'utilisation de données en temps réel et le traitement du même jour au jour le jour et cette technologie crée beaucoup de possibilités pour la croissance de carrière individuelle.

Conclusion

Il offre un large éventail d'avantages pour différents traitements de données en temps réel utilisant des données en streaming.

Articles recommandés

Ceci est un guide du streaming Hadoop. Nous discutons ici de la définition, du concept, des avantages et des inconvénients du streaming Hadoop. Vous pouvez également consulter nos autres articles suggérés pour en savoir plus-

  1. Qu'est-ce que le cluster Hadoop?
  2. Qu'est-ce que l'exploration de données?
  3. Qu'est-ce que la visualisation des données
  4. Qu'est-ce que la modélisation des données?
  5. Guide complet des outils Kafka

Catégorie: