-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/9811/
-----------------------------------------------------------

(Updated March 28, 2013, 10:11 p.m.)


Review request for giraph.


Changes
-------

Just a rebase. Ready for review


Description (updated)
-------

Port Giraph to "pure YARN" clusters, using Hadoop MapReduce classes in our code 
(IO formats etc.) but running the cluster job without any active participation 
by a running MapReduce framework. This means doing some things ourselves that 
Hadoop used to do for us.

This patch is ready for review. There is an integration test to verify the YARN 
components can run a no-op Giraph job successfully. All BSP code is covered by 
our MRv1 tests, which are sufficient since once Giraph is running, it does not 
know or care if its running on YARN. We use minimal munge flags, and mostly 
trick the internal BSP Giraph code into thinking we're still running on MR by 
supplying the GiraphTaskManager with a "dummy" Mapper#Context that tells it 
what it needs to know to run the job on the YARN cluster instead. This allows 
us to wait on ripping apart our IO formats or other MRv1 baked-in dependencies 
before we're ready to abandon MR. This also sets up a paradigm by which it will 
be easy to port us to other cluster frameworks (Mesos, etc.)

My goal is to make this not only our port of YARN, but another (there aren't 
many) good and well-commented example of how to run "real applications" like 
Giraph on YARN clusters. So I'm hoping its clear and easy to follow on that 
level as well. Happy to hear feedback on that angle as well!

Thanks! Will post a wiki page explaining a bit more about this when its all 
finished. This version is still depending on Hadoop-2.0.3-alpha, but a future 
JIRA can bring us to 2.0.0 or higher (and trunk of course.) depending on what 
sort of YARN-enabled Hadoop versions we want to support.


Diffs
-----

  checkstyle.xml 370c120 
  giraph-core/pom.xml 3580d0c 
  giraph-core/src/main/java/org/apache/giraph/GiraphRunner.java 5bd5686 
  giraph-core/src/main/java/org/apache/giraph/bsp/BspInputFormat.java cc53271 
  giraph-core/src/main/java/org/apache/giraph/conf/GiraphConfiguration.java 
963b82a 
  giraph-core/src/main/java/org/apache/giraph/conf/GiraphConstants.java c5b9b93 
  giraph-core/src/main/java/org/apache/giraph/graph/GraphTaskManager.java 
57f7dff 
  giraph-core/src/main/java/org/apache/giraph/master/BspServiceMaster.java 
404e47e 
  giraph-core/src/main/java/org/apache/giraph/utils/ConfigurationUtils.java 
bd30455 
  giraph-core/src/main/java/org/apache/giraph/worker/BspServiceWorker.java 
74c1f87 
  giraph-core/src/main/java/org/apache/giraph/yarn/GiraphApplicationMaster.java 
PRE-CREATION 
  giraph-core/src/main/java/org/apache/giraph/yarn/GiraphYarnClient.java 
PRE-CREATION 
  giraph-core/src/main/java/org/apache/giraph/yarn/GiraphYarnTask.java 
PRE-CREATION 
  giraph-core/src/main/java/org/apache/giraph/yarn/YarnUtils.java PRE-CREATION 
  giraph-core/src/main/java/org/apache/giraph/yarn/package-info.java 
PRE-CREATION 
  giraph-core/src/test/java/org/apache/giraph/yarn/TestYarnJob.java 
PRE-CREATION 
  giraph-core/src/test/resources/capacity-scheduler.xml PRE-CREATION 
  giraph-examples/pom.xml 3b6a08c 
  pom.xml 1e321b8 

Diff: https://reviews.apache.org/r/9811/diff/


Testing (updated)
-------

Integration tests included.


Thanks,

Eli Reisman

Reply via email to