Da quanto ho capito, ogni mappatore emette un file intermedio. I dati intermedi (i dati contenuti in ciascun file intermedio) vengono quindi ordinati per chiave.
Quindi a un riduttore viene assegnata una chiave dal master. Il riduttore legge dal file intermedio contenente la chiave e quindi le chiamate riducono utilizzando i dati letti.
Ma in dettaglio, come sono organizzati i dati intermedi? Un dato corrispondente a un tasto può essere contenuto in più file intermedi? Cosa succede quando ci sono troppi dati corrispondenti a un tasto che devono essere trattenuti da un singolo file?
In breve, in che modo le partizioni intermedie differiscono dai file intermedi e in che modo vengono affrontate queste differenze nell'implementazione?