Apache Giraph Google Summer of Code 2013 Ideas Page
Please see the directories below for this years proposals.
|Table of Contents|
1.Project: Giraph implementation of Nutch LinkRank Algorithm
2.Project: Giraph integration with Tinkerpop
This project relates to the respective JIRA: https://issues.apache.org/jira/browse/GIRAPH-549
Graph databases are dbms that are very efficient to run graph traversals to answer queries. Typical examples are Neo4j, OrientDB, Dex, etc. Graph databases and Giraph solve two different problems in the graph processing world. The first ones solve needs for queries that touch a small portion of the graph, and that need to be answered with low latency (milliseconds). The second one solves the need for large computations that touch all the graph, possibly many times, hence potentially lasting for hours. Both tools are not good in solving the problem the other one is good at.
However they can work together. By injecting the graph from a graph database into Giraph, it is possible to run analytics that cannot be run on the graph database itself, as much as MapReduce can be used to run OLAP queries on data stored in a standard RDBMS.
The aim of the project is to integrate graph databases as inputs for Giraph, along with the current ones (e.g. HBase, Accumulo etc.). In particular, use Tinkerpop with Giraph as a way to inject data into Giraph for graph analytics. Precisely, to leverage Blueprints and Rexter, that build a vendor-agnostic API over the vendor-specific ones, and export it via a REST API.
The project scope is divided in three main milestones:
- Support Titan as an input
- Support GraphSON as an InputFormat
3.Project: Remove maven-plugin from Giraph
This project relates to the respective JIRA: https://issues.apache.org/jira/browse/GIRAPH-101
Munge is a hacky way of support multiple versions of Hadoop. The shim layers in Pig and Hive could be a cleaner way to do this.
How to apply
Please read GSoC guide for student to apply. It is highly recommend to discuss your interest before you apply. The best way to discuss is to comment on individual Jira or send mail to dev list.