Reduksjonsfasen behandler nøkler og deres individuelle liste over verdier, slik at det som normalt returneres til klientprogrammet, er et sett med nøkkel / verdi-par. Her er blow-by-blow så langt: Et stort datasett er delt inn i mindre stykker, kalt inngangssplitt, og individuelle forekomster av mapperoppgaver har behandlet hver enkelt av dem.
I noen tilfeller er denne enkeltfasen av behandling alt nødvendig for å generere ønsket programutgang. Hvis du for eksempel kjører en grunnleggende transformasjonsoperasjon på dataene - konverterer all tekst til store versjoner, for eksempel, eller utvider nøkkelbilder fra videofiler - er den eneste fasen alt du trenger. (Dette er kjent som en map-only jobb, forresten.)
Men i mange andre tilfeller er jobben bare halvt ferdig når mapper oppgavene har skrevet utdataene sine. Den gjenværende oppgaven koker ned alle foreløpige resultater til et enkelt, samlet svar.
I likhet med mapper oppgaven, som behandler hver enkelt rekord en-for-en, reduserer reduksjonen hver nøkkel individuelt. Normalt returnerer reduksjonsverktøyet et enkelt nøkkel / verdi-par for hver nøkkel det behandler. Disse nøkkel / verdi-parene kan imidlertid være så ekspansive eller så små som du trenger dem til å være.
Når reduksjonsoppgaver er ferdig, returnerer hver av dem en resultatfil og lagrer den i HDFS (Hadoop Distributed File System). Som vist her, kopierer HDFS-systemet automatisk disse resultatene.
Hvor ressursforvalteren (eller JobTracker hvis du bruker Hadoop 1) forsøker å tilordne ressurser til mapper-oppgaver for å sikre at innspillingen behandles lokalt, finnes det ingen slik strategi for reduksjonsoppgaver. Det antas at mapper oppgavesett sett må overføres over nettverket for å bli behandlet av reduksjonsoppgaver.
Dette er en rimelig implementering fordi det med hundrevis eller tusenvis av mapperoppgaver ikke ville være noen praktisk måte for reduksjonsoppgaver å ha samme lokalitetsprioritering.
