Ist das MapReduce-Framework eine Art BSP?

11

Ist es richtig, das mapReduce- Framework als eine Art synchrones paralleles Massenprogrammierungsframework ohne lokale Speichererhaltung innerhalb von Prozessoren zwischen Synchronisierungen zu bezeichnen? Wenn nicht, welches parallele Programmiermodell kapselt das mapReduce-Framework am genauesten?

Jeff Kubina
quelle
1
das ist eine schöne frage!
Suresh Venkat
danke Suresh, was denkst du, stimmst du zu?
Jeff Kubina
Eine schwierige Entscheidung bei der Auswahl der besten Antwort, da ich denke, dass sie mir alle geholfen haben, mehr über Mapreduce und die Sichtweise anderer zu erfahren. Ich entschied mich für Sashos Antwort, da sie mich zu einem Artikel führte, in dem meine Frage am besten beantwortet wurde. Danke an alle.
Jeff Kubina

Antworten:

11

In Abschnitt 2 von http://arxiv.org/abs/1101.1902 definieren die Autoren ein MapReduce-Modell, das absichtlich wie BSP strukturiert ist. Sie beweisen auch Simulationssätze. Kann ein guter Anfang sein.

Sasho Nikolov
quelle
5

Ja, meiner Meinung nach ist das klassische MapReduce ein BSP-Modell (und hat daher seine inhärenten Einschränkungen hinsichtlich der maximal möglichen parallelen Leistung, die erreicht werden kann). Neuere Arbeiten an MapReduce scheinen sich jedoch auf lockerere Begriffe der Synchronisation zu konzentrieren, die dieses "verallgemeinerte MapReduce" aus dem strengen BSP-Framework herausnehmen würden. Insbesondere wenn man einige der Daten repliziert, kann die Synchronisationsstruktur gelockert werden, was zu Leistungssteigerungen führt.

Siehe zum Beispiel Arbeiten von Foto Afrati und Jeff Ullman: Optimierung von Joins in einer kartenreduzierten Umgebung , EDBT 2010. ( Preprint )

András Salamon
quelle
2

Da in MapReduce der Berechnung ein einfaches und strukturiertes Diagramm zugrunde liegt, kann dies IMHO als Datenflussmodell klassifiziert werden.

Massimo Cafaro
quelle
Ich bin damit einverstanden, dass MapReduce dieselbe Berechnungsstrategie hat wie eine Tagged-Dataflow-Maschine. Die Pig-Sprache von Yahoo baut sogar eine Datenflusssprache auf MapReduce auf.
Rindfleisch