anchor.diff:  
   NOTE: This model of graph computing was made popular by Google's link:http://googleresearch.blogspot.com/2009/06/large-scale-graph-computing-at-google.html[Pregel] graph system. In the open source world, this model is found in OLAP graph computing systems such as link:https://giraph.apache.org/[Giraph], link:https://hama.apache.org/[Hama], and link:http://faunus.thinkaurelius.com[Faunus].
   
  -[[mapreduce-extensions]]
  -MapReduce Extensions
  ---------------------
  +[[mapreduce]]
  +MapReduce
  +---------
   
   The BSP model proposed by Pregel stores the results of the computation in a distributed manner as properties of the vertices in the graph. However, in many situations, it necessary to aggregate those resultant properties into a single result set (i.e. a statistic). For instance, assume a VertexProgram that computes a nominal cluster for each vertex. At the end of the computation, each vertex will have an hidden property denoting the cluster it is in. In order to answer the following questions, MapReduce jobs are required:
   
  
positive.code: </dependency>
  ----
  
  image:giraph-logo.png[width=75,float=left] link:http://giraph.apache.org[Giraph] is an Apache Foundation project focused on OLAP-based graph processing. Giraph makes use of the message-passing model of the distributed graph computing paradigm made popular by Google's Pregel. In Giraph, developers write "vertex programs" that get executed at each vertex in parallel. These programs can then communicate with one another in a bulk synchronous parallel (BSP) manner. This model aligns with TinkerPop3's `GraphComputer` API. TinkerPop3 provides an implementation of `GraphComputer` that works for Giraph called `GiraphGraphComputer`. Moreover, with TinkerPop3's MapReduce-framework, Giraph is extended to support an arbitrary number of MapReduce results to aggregate and present results. Finally, note that `GiraphGraph` also supports read-only OLTP operations (though via linear scans of HDFS serializations).
  
  IMPORTANT: image:hadoop-logo-notext.png[width=100,float=left] This section assumes that the user has a Hadoop 1.x cluster functioning. For more information on getting started with Hadoop, please see their link:http://hadoop.apache.org/docs/r1.2.1/single_node_setup.html[Single Node Setup] tutorial. Moreover, it is advisable that the reader also familiarize themselves with Giraph as well via their link:http://giraph.apache.org/quick_start.html[Getting Started] page.
  
  Installing Giraph-Gremlin
  ~~~~~~~~~~~~~~~~~~~~~~~~~
  
  To the `.bash_profile` file, add the following environmental variables (of course, be sure the directories are the respective locations on the local machine).
  
  [source,text]
  export GIRAPH_HOME=/usr/local/giraph-1.0.0
  export GIRAPH_GREMLIN_HOME=/usr/local/giraph-gremlin-3.0.0
  
  If using the Gremlin Console, it is important to install the Giraph-Gremlin plugin.
  
  [source,text]
  ----
  
negative.code: 
  The classic link:http://en.wikipedia.org/wiki/PageRank[PageRank] centrality algorithm can be executed over TinkerPop classic from the command line.
  
  NOTE: The extension `ldjson` in `giraph-graphson.properties` refers to link:http://en.wikipedia.org/wiki/Line_Delimited_JSON[line-delimitated JSON] which is the file format used by `GraphSONWriter` when writing an link:http://en.wikipedia.org/wiki/Adjacency_list[adjacency list] representation of a graph.
  
  [source,text]
  $ hadoop fs -copyFromLocal ../data/tinkergraph-classic-vertices.ldjson tinkergraph-classic-vertices.ldjson
  $ hadoop fs -ls
  Found 2 items
  -rw-r--r--   1 marko supergroup        891 2014-07-28 13:00 /user/marko/tinkerpop-classic-vertices.gio
  -rw-r--r--   1 marko supergroup       2356 2014-07-28 13:00 /user/marko/tinkerpop-classic-vertices.ldjson
  $ hadoop jar target/giraph-gremlin-3.0.0-job.jar com.tinkerpop.gremlin.giraph.process.computer.GiraphGraphComputer conf/giraph-graphson.properties
  14/07/29 12:08:27 INFO computer.GiraphGraphComputer: GiraphGremlin: com.tinkerpop.gremlin.process.computer.ranking.pagerank.PageRankVertexProgram
  14/07/29 12:08:28 INFO mapred.JobClient: Running job: job_201407281259_0041
  