Verteilte Job-scheduling -, management-und reporting

Vor kurzem hatte ich einen spielen, um mit Hadoop und war beeindruckt, es ist Planung, management und reporting von MapReduce-jobs. Es erscheint die Verteilung und Ausführung von neuen Arbeitsplätzen ganz nahtlos, so dass die Entwickler konzentrieren sich auf die Umsetzung Ihrer Aufträge.

Frage ich mich, wenn alles, was existiert, in die Java-Domäne, die für die verteilte Ausführung von jobs, die sind nicht leicht ausgedrückt als MapReduce-Probleme? Zum Beispiel:

  • Aufträge, die eine Aufgabe Koordination und Synchronisation. So können Sie zum Beispiel beinhalten sequentielle Ausführung von Aufgaben noch ist es möglich, die Ausführung mancher Aufgaben gleichzeitig:

                   .-- B --.
            .--A --|       |--.
            |      '-- C --'  |
    Start --|                 |-- Done
            |                 |
            '--D -------------'
  • CPU-intensive Aufgaben, die Sie gerne verteilen aber nicht bieten keine Ausgaben zu reduzieren - Bild-Konvertierung/Größenänderung zum Beispiel.

Gibt es also ein Java-framework/Plattform, die sich wie eine verteilte computing-Umgebung? Oder ist diese Art der Sache akzeptabel/erreichbare mithilfe von Hadoop - und wenn ja, gibt es irgendwelche Muster/Richtlinien für diese Art von Arbeit?

InformationsquelleAutor teabot | 2009-12-16
Schreibe einen Kommentar