Hi all,
I've submitted my proposal to gsoc for HAMA-894 <https://issues.apache.org/jira/browse/HAMA-894> . I tought I have time to update proposal till 18th April. After the submission of my proposal, these are things what I did:

Figured out, if I want to add new algorithm to run every vertex, my class needs to be extended from Vertex class and implement compute method. Also VertexInputReader class to set vertexID and edge of vertex. I read some articles for k-core algorithms [1],[2],[3],[4] and some others [5], [6]. If we recursively delete all vertices which degree less than k, the remaining graph is k-core.

My approach is roughly like that:
In superstep 0 every vertex sends its node degree to neighbors. Next sepersteps if vertex received smaller degree of its degree, it changes node degree as far as new value and sends it to neighbors. Otherwise vertex halts (voteToHalt) until new messages are received. I was able to run correctly 3 supersteps by GraphJob and if I set node degree arrays right then I think I'm gonna solve the problem. I think I have to write aggregators to hold max k-core, vertex count for each k-cores, percentage etc.

I wanted to send this email to show that I have improved my proposal and I have started my implemantation and also made a progress in case I will not able to edit my proposal.

[1] Fast algorithms for determining (generalized) core groups in social networks
[2] Distributed k -Core Decomposition
[3] An O(m) Algorithm for Cores Decomposition of Networks
[4] BSP vs MapReduce
[5] HAMA: An Efficient Matrix Computation with the MapReduce Framework
[6] Apache Hama Programming

Reply via email to