Exposing Parallelism in Giraph
This chapter covers
- Per-worker computations
- Thread safety in Giraph
- The importance of graph partitioning
- Implementing custom partitioners
In the previous chapters, you looked at the different programming primitives of Giraph and discovered how to use them to implement graph algorithms. In the process of implementing graph algorithms, you considered graphs in an abstract way, viewing them only as vertices and edges that can communicate each other through messages. Fortunately, you did not have to worry about what happens under the hood; that is, where these vertices and edges live when Giraph executes ...