There was an error while loading. Please reload this page.
1 parent 248d793 commit abba940Copy full SHA for abba940
MapReduce.py
@@ -0,0 +1,26 @@
1
+import json
2
+
3
+class MapReduce:
4
+ def __init__(self):
5
+ self.intermediate = {}
6
+ self.result = []
7
8
+ def emit_intermediate(self, key, value):
9
+ self.intermediate.setdefault(key, [])
10
+ self.intermediate[key].append(value)
11
12
+ def emit(self, value):
13
+ self.result.append(value)
14
15
+ def execute(self, data, mapper, reducer):
16
+ for line in data:
17
+ record = json.loads(line)
18
+ mapper(record)
19
20
+ for key in self.intermediate:
21
+ reducer(key, self.intermediate[key])
22
23
+ #jenc = json.JSONEncoder(encoding='latin-1')
24
+ jenc = json.JSONEncoder()
25
+ for item in self.result:
26
+ print jenc.encode(item)
0 commit comments