Je t'ai appris à écrire Hadoop mapreduce en Python.

Mob604756fb3b48 2021-10-29 15:11:30
je ai appris crire hadoop

Avec les médias numériques、L'émergence de l'Internet des objets et d'autres développements,Le volume de données numériques produites quotidiennement augmente de façon exponentielle.Cette situation pose un défi à la création d'outils et de technologies de la prochaine génération pour stocker et exploiter ces données..C'est ça. Hadoop Streaming Où il est utilisé!Les diagrammes ci - dessous illustrent les2013Croissance annuelle des données mondiales à partir de.IDCEstimation,À 2025Année,Le volume de données produites chaque année atteindra180 Zettabytes!

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hdfs

IBM Représentation,Presque tous les jours 2.5 10 millions d'octets de données créés,Parmi eux 90% Les données mondiales ont été créées au cours des deux dernières années!Stocker une telle quantité de données est une tâche difficile.Hadoop Peut traiter de grandes quantités de données structurées et non structurées plus efficacement que les entrepôts de données d'entreprise traditionnels.Il stocke ces énormes ensembles de données dans un Cluster informatique distribué.Hadoop Streaming Utiliser MapReduce Cadre,Ce cadre peut être utilisé pour écrire des applications pour traiter de grandes quantités de données.

Parce que MapReduce Le cadre est basé sur Java,Vous voudrez peut - être savoir si le développeur n'a pas Java Expérience,Il est/Comment fonctionne - t - elle?.Volontiers.,Les développeurs peuvent écrire dans leur langue préférée mapper/Reducer Application,Sans trop de maîtrise Java Connaissances,UtiliserHadoop StreamingAu lieu de passer à Pig Et Hive Attendre de nouveaux outils ou technologies.

Qu'est - ce que Hadoop Flow?

Hadoop Streaming - Oui. Hadoop Utilitaires inclus dans la distribution.Il peut être utilisé pour effectuer des programmes d'analyse de données massives.Hadoop Le flux peut être utilisé Python、Java、PHP、Scala、Perl、UNIX Exécution isolinguistique.Cet utilitaire nous permet d'utiliser n'importe quel exécutable ou script comme mapper et/Ou un réducteur pour créer et exécuter Map/Reduce Opérations.Par exemple:

$HADOOP_HOME/bin/hadoop jar $HADOOP_HOME/hadoop-streaming.jar
-input myInputDirs
-Exporter mon répertoire de sortie
-Dossiers/Poubelle/CAT
-Ralentisseur/bin/wc
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

Description des paramètres:

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hadoop_02

Python MapReduce Code:

mapper.py
#!/usr/bin/python
import sys
#Word Count Example
# input comes from standard input STDIN
for line in sys.stdin:
line = line.strip() #remove leading and trailing whitespaces
words = line.split() #split the line into words and returns as a list
for word in words:
#write the results to standard output STDOUT
print'%s %s' % (word,1) #Emit the word
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_java_03

reducer.py

#!/usr/bin/python
import sys
from operator import itemgetter
# using a dictionary to map words to their counts
current_word = None
current_count = 0
word = None
# input comes from STDIN
for line in sys.stdin:
line = line.strip()
word,count = line.split(' ',1)
try:
count = int(count)
except ValueError:
continue
if current_word == word:
current_count += count
else:
if current_word:
print '%s %s' % (current_word, current_count)
current_count = count
current_word = word
if current_word == word:
print '%s %s' % (current_word,current_count)
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_04

Cours!:

  • Créer un fichier avec word.txt.

Chat, souris, lion, Cerf, tigre, lion, cerf

  • Oui. mapper.py Et reducer.py Le script est copié dans le même dossier que le fichier ci - dessus.

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_mapreduce_05

  • Ouvrez le terminal et localisez le Répertoire dans lequel le fichier réside. Les ordres:ls:Liste tous les fichiers du Répertoirecd:Modifier la table des matières/Dossiers

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_06

  • Afficher le contenu du fichier.

Les ordres:cat file_name

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_07

> mapper.py Le contenu de

Les ordres:cat mapper.py

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hdfs_08

>reducer.py Le contenu de

Les ordres:cat reducer.py

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_09

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_mapreduce_10

Nous pouvons utiliser le fichier local(Par exemple:word.txt)Cours. mapper Et reducer.Pour Hadoop Système de fichiers distribués (HDFS) Cours. Map Et Reduce,Il nous fautHadoop Streaming jar.Donc avant que nous soyons HDFS Avant d'exécuter le script,Faisons - les fonctionner localement pour s'assurer qu'ils fonctionnent correctement..

>Exécuter le mapper

Les ordres:cat word.txt | python mapper.py

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hadoop_11

>Exécutionreducer.py

Les ordres: cat word.txt | python mapper.py | sort -k1,1 | python reducer.py

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_12

Nous pouvons voir que le mapper et le réducteur fonctionnent comme prévu,Donc nous n'avons pas d'autres problèmes.

In Hadoop Cours.Python Code

On est là. Hadoop Cours. MapReduce Avant la Mission,Mettre les données locales(word.txt)Copier vers HDFS

> Exemple:hdfs dfs -put source_directory hadoop_destination_directory

Les ordres:hdfs dfs -put /home/edureka/MapReduce/word.txt /user/edureka

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_mapreduce_13

CopierjarChemin du fichier

Basé surjarVersionHadoop Streaming jarLe chemin est:

/usr/lib/hadoop-2.2.X/share/hadoop/tools/lib/hadoop-streaming-2.2.X.jar

Donc,,Trouvé sur votre terminal Hadoop Streaming jar Et copier le chemin.

Les ordres:

ls /usr/lib/hadoop-2.2.0/share/hadoop/tools/lib/hadoop-streaming-2.2.0.jar

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_python_14

Exécution MapReduce Opérations

Les ordres:

hadoop jar /usr/lib/hadoop-2.2.0/share/hadoop/tools/lib/hadoop-streaming-2.2.0.jar -file /home/edureka/mapper.py -mapper mapper.py -file /home/ edureka/reducer.py -reducer reducer.py -input /user/edureka/word -output /user/edureka/Wordcount

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hadoop_15

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_mapreduce_16

Hadoop Fournit une base pour les statistiques et l'information Web Interface.Quand Hadoop Temps d'exécution du cluster,Ouvrir dans un navigateur http://localhost:50070.C'est Hadoop Web Capture d'écran de l'interface.

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hdfs_17

Naviguez maintenant dans le système de fichiers et trouvez ce qui a été généré wordcount Fichier pour voir la sortie.Voici une capture d'écran.

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_hadoop_18

Nous pouvons utiliser cette commande pour voir la sortie sur le terminal

Les ordres:hadoop fs -cat /user/edureka/Wordcount/part-00000

Pour t'apprendre à utiliserPython Compilation Hadoop MapReduce Procédure_java_19

Vous avez maintenant appris à utiliser Hadoop Streaming Application Python Écrit par MapReduce Procédure!

 

​​

版权声明
本文为[Mob604756fb3b48]所创,转载请带上原文链接,感谢
https://pythonmana.com/2021/10/20211029150557973y.html

  1. Python題,我剛學,還不會
  2. Je viens d'apprendre, pas encore.
  3. 云计算开发:Python3-find()方法详解
  4. Real time access to stock data, free—— Python crawler Sina stock actual combat
  5. Développement de l'informatique en nuage: détails de la méthode Python 3 - find ()
  6. 如何使用Python进行超参调参和调优
  7. 如何使用Python進行超參調參和調優
  8. Comment utiliser Python pour le réglage hyperparamétrique
  9. Première connaissance du module urllib Python
  10. Python入门:看了这篇文章如果1个小时没法入门Python,那么还是换个语言吧!!
  11. Python(day1):Python 3 教程
  12. Python(day3):Python3 安装与环境搭建
  13. Python (day3): installation et environnement Python 3
  14. Python (day1): tutoriel Python 3
  15. Démarrer avec Python: Si vous ne pouvez pas commencer avec Python en une heure, changez de langue!!
  16. Pandas:DataFrame对象的基础操作
  17. 关于#python#的问题:月球上物体的体重在地球上的16.5%,编写程序输出未来10年在地球上和月球上的体重状况
  18. 反转一个3位整数(Python 实现)
  19. Inverse un entier de 3 bits (implémentation Python)
  20. Questions sur # Python #: les objets lunaires pèsent 16,5% de la masse de la terre et un programme est programmé pour produire la masse de la terre et de la lune au cours des 10 prochaines années
  21. Compared with Excel, it is easy to learn Python report automation practice!
  22. 7 excellent open source libraries for learning Python Programming
  23. Use of Python pandas!!!!! Explain in detail
  24. Python Qt GUI设计:QPrinter打印图片类(基础篇—21)
  25. Use of Python pandas!!!!! Explain in detail
  26. 2n行输入,Python,判断字母个数
  27. Notes de Python (XV): dérivation de liste
  28. Notes sur Python (XVI): générateur et Itérateur
  29. Notes de Python (18): décorateur
  30. 2n entrée de ligne, Python, nombre de lettres de jugement
  31. Notes Python (17): fermetures
  32. Notes sur Python (20): fonctions d'ordre supérieur intégrées
  33. 想问问这个Python编程咋做呀?
  34. 想問問這個Python編程咋做呀?
  35. Vous voulez savoir ce que fait cette programmation python?
  36. 11.5K Star,一个开源的 Python 静态类型检查库
  37. Sweetviz:让你只需三行代码实现Python探索性数据分析
  38. Sweetviz:讓你只需三行代碼實現Python探索性數據分析
  39. Sweetviz: vous permet d'effectuer une analyse exploratoire des données python avec seulement trois lignes de code
  40. 11.5k Star, une bibliothèque de vérification de type statique Python Open Source
  41. 刚学Python,想让大大给我解释一下代码
  42. 剛學Python,想讓大大給我解釋一下代碼
  43. Je viens d'apprendre Python et je veux que tu m'expliques le Code.
  44. Python QT GUI Design: qmainwindow, QWidget and qdialog window classes (Fundamentals - 10)
  45. Python爬虫项目实战:快手网页版滑块captchaSession分析
  46. python计算时间十二小时制
  47. Temps de calcul Python 12 heures
  48. Python crawler Project actual Fighting: faster Web Version Slider CAPTCHA session Analysis
  49. Python要学习多久可以掌握?多久可以精通?
  50. Combien de temps Python va - t - il apprendre à maîtriser? Combien de temps faut - il pour maîtriser?
  51. 从官网上下载的python安装包安装不了
  52. 深度学习项目:如何使用Python和OpenCV进行人脸识别
  53. python编辑语言如内容所示
  54. La langue d'édition Python est affichée dans le contenu
  55. 有谁知道这怎么回事嘛(Python的简单代码)
  56. 有誰知道這怎麼回事嘛(Python的簡單代碼)
  57. Qui sait ce qui se passe?
  58. Python求某个数的因数【因数是指能被这个数整除的数。例如6的因数有:1、2、3、6; 7的因数有:1、7; 8的因数有:1、2、4、8】。
  59. Python calcule les facteurs d'un nombre [les facteurs sont des nombres qui peuvent être divisés par ce nombre. Par exemple, les facteurs de 6 sont: 1, 2, 3, 6; les facteurs de 7 sont: 1, 7; et les facteurs de 8 sont: 1, 2, 4, 8].
  60. 如何创建一个python程序来模拟电影院的座位预订