Sunteți pe pagina 1din 75

I = [(k11 , v11 ), ...

, (k1n , v1n )]
map reduce
map

map(k1i , v1i ) →
− [(k21 , v21 ), ..., (k2m , v2m )]

reduce

reduce(k2j , [v2j 1 , ..., v2j l ]) →


− v3
public void map(String key, String value){
// key: document name
// value: document content
for (String word : value.split(" ")){
emitIntermediate(word, new Integer(1));
}
}

public void reduce(String key, Iterator values){


// key: a word
// values: a list of counts
Integer sum = 0;
while (values.hasNext()){
sum += (Integer) values.next();
}
emit(sum);
}
∈ Rn
n = 128 n = 64
n = 128
� 1 ), ..., (f rame id, desc
− [(f rame id, desc
map(f rame id, f rame) → � n )]

map

reduce

� 1 , ... , desc
reduce(f rame id, [desc � n ]) → � 1 , ... , desc
− (f rame id, [desc � n ])
k S = S1 , ..., Sk
n x1 , ..., xn Si
µi

k �

argmin �xj − µi �2
S i=1 xj ∈S

k µ1 , ..., µk
xi Sj µj

µj Sj
xi

S-ar putea să vă placă și