Commit b51868f4 authored by jiongzhu's avatar jiongzhu
Browse files

Add initial files for WordCount

parents
hadoop-streaming-2.6.3.jar as hadoop-streaming.jar
#!/usr/bin/env python2.7
import sys
# input comes from STDIN (standard input)
for line in sys.stdin:
# remove leading and trailing whitespace
line = line.strip()
# split the line into words
words = line.split()
# increase counters
for word in words:
# write the results to STDOUT (standard output);
# what we output here will be the input for the
# Reduce step, i.e. the input for reducer.py
#
# tab-delimited; the trivial word count is 1
print '%s\t%s' % (word, 1)
#!/usr/bin/env python2.7
from operator import itemgetter
import sys
current_word = None
current_count = 0
word = None
# input comes from STDIN
for line in sys.stdin:
# remove leading and trailing whitespace
line = line.strip()
# parse the input we got from mapper.py
word, count = line.split('\t', 1)
# convert count (currently a string) to int
try:
count = int(count)
except ValueError:
# count was not a number, so silently
# ignore/discard this line
continue
# this IF-switch only works because Hadoop sorts map output
# by key (here: word) before it is passed to the reducer
if current_word == word:
current_count += count
else:
if current_word:
# write result to STDOUT
print '%s\t%s' % (current_word, current_count)
current_count = count
current_word = word
# do not forget to output the last word if needed!
if current_word == word:
print '%s\t%s' % (current_word, current_count)
#!/bin/bash
dirname="$(dirname "$0")"
if ! [ -z $1 ]; then
jarname="hadoop-streaming-$1.jar"
echo "Switch to $jarname; copying $dirname/bin/$jarname to $dirname/hadoop-streaming.jar"
cp $dirname/bin/$jarname $dirname/hadoop-streaming.jar
echo "$jarname as hadoop-streaming.jar" > $dirname/bin/current_version.txt
else
if [ -f $dirname/bin/current_version.txt ]; then
cat $dirname/bin/current_version.txt
fi
echo "Usage: $0 <jar-version>"
echo " e.g. $0 2.6.3"
echo "Choices:"
ls $dirname/bin/*.jar
fi
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment