PythonのWordCount

このセクションには、Pythonで書かれたWordCountサンプルを実行するためのソースコードと命令が含まれています。

以下はマッパーのソースコードである。 このコードを「WordCount_mapper.pyファイルに保存する:
#!/usr/bin/env python
import sys
for line in sys.stdin:
(key,value) = line.split('\t')
wordList = value.split(' ')
for word in wordList:
print(word.strip() + "\t1")
以下はレデューサーのソースコードです。 このコードを「WordCount_reducer.pyファイルに保存する:
#!/usr/bin/env python
import sys
word = ""
sum = 0
for line in sys.stdin:
(key,value) = line.split('\t')
if word == key:
sum = sum + int(value)
else:
if word != "":
print(word + "\t" + str(sum))
word = key
sum = 1
if key != "": print(key + "\t" + str(sum))
mapreduce_dbデータベース内のwords1テーブル('idと'sentenceカラムを含む)に格納されたデータに対してこの例を実行するには、以下のコマンドを実行する:
mapreduce jar /nz/export/ae/products/netezza/mapreduce/current/mapreducestreaming.
jar
-db mapreduce_db
-input 'words1' 'id' 'sentence'
-output 'results' 'word' 'count'
-mapper 'WordCount_mapper.py'
-mapper_out_key_size 20
-mapper_out_value_size 20
-file <path to WordCount_mapper.py file>
-reducer 'WordCount_reducer.py'
-reducer_out_key_size 20
-reducer_out_value size 20
-file <path to WordCount_reducer.py file>

実行後、コマンドは2つのカラムを含む'resultsテーブルを作成する: wordと'count、どちらもVARCHAR(20)型である。