[ 
https://issues.apache.org/jira/browse/MADLIB-992?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15654846#comment-15654846
 ] 

Frank McQuillan edited comment on MADLIB-992 at 11/10/16 7:12 PM:
------------------------------------------------------------------

Current implementation so far from Grails paperl is using 
https://en.wikipedia.org/wiki/Bellman%E2%80%93Ford_algorithm
which supports neg edge values.

Other option is
https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm
where min priority queue could be used here for faster run time.

Perhaps we could look at supporting both, a check on neg edge values to pick 
the right one.

Regarding alternative graph structures to test for scalability, perhaps try a 
power law distribution common in social networks.



was (Author: fmcquillan):
Current implementation so far from Grails paperl is using 
https://en.wikipedia.org/wiki/Bellman%E2%80%93Ford_algorithm
which supports neg edge values.

Other option is
https://en.wikipedia.org/wiki/Dijkstra%27s_algorithm
where min priority queue could be used here for faster run time.

Perhaps we could look at supporting both, a check on neg edge values to pick 
the right one.

> Graph - single source shortest path
> -----------------------------------
>
>                 Key: MADLIB-992
>                 URL: https://issues.apache.org/jira/browse/MADLIB-992
>             Project: Apache MADlib
>          Issue Type: New Feature
>          Components: Module: Graph
>            Reporter: Frank McQuillan
>            Assignee: Orhan Kislal
>             Fix For: v1.10
>
>         Attachments: SSSP graph scale tests.pdf, sssp-grails.sql
>
>
> Background 
> The academic foundation for this work comes in part from Jignesh Patel at 
> University of Wisconsin-Madison, who has researched how to build graph 
> engines in relational databases [1][2][3].
> Story
> As a MADlib developer, I want to investigate how to implement shortest path 
> in an efficient and scaleable way.
> Acceptance
> 1) Interface defined
> 2) Design document updated
> 3) Form an opinion on whether 1GB workaround can be useful to improve graph 
> size and performance from https://issues.apache.org/jira/browse/MADLIB-991
> 4) Functional tests complete
> 5) Scaleability tests complete
> References
> [1] Grails paper
> http://pages.cs.wisc.edu/~jignesh/publ/Grail.pdf
> [2] Grails deck
> http://pages.cs.wisc.edu/~jignesh/publ/Grail-slides.pdf
> [3] Grails repo
> https://github.com/UWQuickstep/Grail
> [4]  Grails generated SQL for shortest patch (attached)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to