91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python map reduce的方法是什么

發布時間:2021-12-30 14:20:41 來源:億速云 閱讀:139 作者:iii 欄目:云計算

本篇內容主要講解“python map reduce的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“python map reduce的方法是什么”吧!

執行shell腳本run.sh

#! /bin/bash
IN_DIR="/input/20140221"
OUT_DIR="/output/20140221"

HPHOME=$HADOOP_HOME/bin/
JAR_PACKAGE=$HADOOP_HOME/contrib/streaming/hadoop-streaming-0.20.2-cdh4u0.jar

MAP_FILE=$(pwd)/map.py
RED_FILE=$(pwd)/red.py

${HPHOME}hadoop fs -rmr $OUT_DIR
${HPHOME}hadoop jar $JAR_PACKAGE \
        -numReduceTasks 1 \
        -jobconf mapred.job.queue.name=platform \
        -input $IN_DIR \
        -output $OUT_DIR  \
        -file $MAP_FILE  \
        -file $RED_FILE \
        -mapper $MAP_FILE \
        -reducer $RED_FILE \
        -inputformat SequenceFileAsTextInputFormat
exit $?

map.py

#!/usr/bin/env python

import sys

for line in sys.stdin:
        line = line.strip()
        if line.find("str1")!=-1:
                item = line.split('\01')
                key = item[3]
                print '%s\t%s' % (key, 'str3')
        elif line.find("str2")!=-1:
                item = line.split('\01')
                key = item[2]
                value = item[5]
                print '%s\t%s\t%s' % (key, 'str3', value)
        else:
                pass

red.py

#!/usr/bin/env python

from operator import itemgetter
import sys

word2count = {}
total_count = 0
total_money = 0.0
total_error = 0

pre_pid = ''
pre_money = 0.0
is_pre_push = 0
for line in sys.stdin:
        line = line.strip()
        if line.find('str3')!=-1:
                item = line.split('\t')
                total_money += float(item[2])
                total_count += 1
        else:
                pass

print total_count, total_error, total_money ##最后才打印

僅作為參考

hadoop默認以'\t'分隔key和value,第一個字段為key

到reduce時,相同key的都在一起被同一個red.py處理,故可以連續讀取相同key的每一行。(java中相同key的都以數組的形式放在一次reduce中了,而python卻仍要讀取多行,但相同key的都排在一起)

到此,相信大家對“python map reduce的方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

赤水市| 神池县| 禄劝| 于都县| 岚皋县| 临沧市| 彩票| 吴桥县| 乌兰浩特市| 阜新市| 阜新| 深圳市| 平顶山市| 山东省| 阿勒泰市| 河源市| 博野县| 昌宁县| 岳西县| 和田县| 乐平市| 金川县| 伊金霍洛旗| 定结县| 新乐市| 广德县| 武宣县| 罗平县| 前郭尔| 靖远县| 锡林浩特市| 江油市| 定西市| 定安县| 四会市| 封丘县| 宁陵县| 交口县| 察哈| 阳西县| 五台县|