MapReduce кантип иштейт жана маалыматтар ишчилерге кандай бөлүнүп, натыйжалар кандай биригет?
sobes.tech AI
AIден жооп
MapReduce — bu katta maglumatlary paýlanýan gurşawda işlemek üçin programmalaşdyryş modeli. Ol iki esasy tapgyra bölünýär: Map (haritalama) we Reduce (kisaltma).
-
Map: giriş maglumatlary böleklere bölünýär we işçilere (düwmeler) paýlanýar. Her bir işçi öz maglumat bölegine Map funksiýasyny ulanýar we giriş ýazgylaryny açar-çözüw jümlelerine öwürýär.
-
Shuffle and Sort: Map tapgyrynyň netijeleri açarlara görä toparlanýar we tertiplendir. Bu amal ähli deň açara degişli gymmatlaryň şol bir işçä ýetmegini üpjün edýär.
-
Reduce: her bir işçi belli bir açar üçin gymmatlar toparyny alýar we Reduce funksiýasyny ulanýar, bu gymmatlary jemläp, soňky netijä öwürýär.
Maglumatlaryň paýlanmagy faýl ulgamynyň (meselem, HDFS) arkaly amala aşyrylýar, ol maglumatlary bloklara bölüp, olary işçilere bellemäge mümkinçilik berýär. Map tapgyryndan soň, ara maglumatlar tor arkaly Reduce işçilerine geçirilýär we jemleme işlenýär.
Mysal üçin: uly tekstde sözleriň sanyny hasaplamak.
// Map funksiýasy
map(String key, String value) {
for (String word : value.split(" ")) {
emit(word, 1);
}
}
// Reduce funksiýasy
reduce(String key, Iterator<Integer> values) {
int sum = 0;
while (values.hasNext()) {
sum += values.next();
}
emit(key, sum);
}
Şu görnüşde, MapReduce uly maglumatlary netijeli we paralel işlemek mümkinçiligini berýär.