You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by greghogan <gi...@git.apache.org> on 2017/02/28 21:54:52 UTC
[GitHub] flink pull request #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm ...
GitHub user greghogan opened a pull request:
https://github.com/apache/flink/pull/3434
[FLINK-5909] [gelly] Interface for GraphAlgorithm results
Create AlgorithmResult and AnalyticResult interfaces for library algorithms to implement. This flattens algorithm results to a single tuple.
Also create interfaces for UnaryResult, BinaryResult, and TertiaryResult implementing methods to access the 0th, 1st, and 2nd vertices.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/greghogan/flink 5909_interface_for_graphalgorithm_results
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/3434.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #3434
----
commit 70f6780fad4a1231ce99dd03027b17a95e108dbc
Author: Greg Hogan <co...@greghogan.com>
Date: 2017-02-28T18:10:20Z
[FLINK-5909] [gelly] Interface for GraphAlgorithm results
Create AlgorithmResult and AnalyticResult interfaces for library
algorithms to implement. This flattens algorithm results to a single
tuple.
Also create interfaces for UnaryResult, BinaryResult, and TertiaryResult
implementing methods to access the 0th, 1st, and 2nd vertices.
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by vasia <gi...@git.apache.org>.
Github user vasia commented on the issue:
https://github.com/apache/flink/pull/3434
Thanks for the clarification @greghogan. +1 from me.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by vasia <gi...@git.apache.org>.
Github user vasia commented on the issue:
https://github.com/apache/flink/pull/3434
Does `AnalyticResult` also need a method like `toVerboseString()`? Could we replace both with a e.g. `Result` type?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by greghogan <gi...@git.apache.org>.
Github user greghogan commented on the issue:
https://github.com/apache/flink/pull/3434
@vasia, thinking again on `AnalyticResult`, as an empty interface I could simply replace with `GraphAnalytic<K, VV, EV, ? extends AnalyticResult>` with `GraphAnalytic<K, VV, EV, ? extends Object>`, for example [here](https://github.com/apache/flink/pull/3294/files#diff-fe7c1ff55b1b1e4cd1ee7809933607b5R60). Thoughts?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by vasia <gi...@git.apache.org>.
Github user vasia commented on the issue:
https://github.com/apache/flink/pull/3434
Thanks @greghogan. Looks good!
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink pull request #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm ...
Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:
https://github.com/apache/flink/pull/3434
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by greghogan <gi...@git.apache.org>.
Github user greghogan commented on the issue:
https://github.com/apache/flink/pull/3434
Thanks for the review @vasia. The Unary/Binary/TertiaryResult interfaces will allow follow-on algorithms to work with POJOs or non-conforming Tuples (where we don't assume source and target vertices are fields 0 and 1). A common AnalyticResult interface is helpful with drivers that store both directed and undirected results.
The improvements to the library methods docs do reflect an expectation of this PR.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by greghogan <gi...@git.apache.org>.
Github user greghogan commented on the issue:
https://github.com/apache/flink/pull/3434
@vasia, I created `PrintableResult` with a `toPrintableString` method and is now used for both algorithms and analytics.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---
[GitHub] flink issue #3434: [FLINK-5909] [gelly] Interface for GraphAlgorithm results
Posted by vasia <gi...@git.apache.org>.
Github user vasia commented on the issue:
https://github.com/apache/flink/pull/3434
Hi @greghogan, thank you for the PR.
I didn't spot anything that needs fixing, but I'm wondering what's the motivation to add these interfaces. I see how `toVerboseString()` is useful, but not really why `AnalyticResult` is needed. Also, why introduce `UnaryResult`, `BinaryResult`, and `TertiaryResult` instead of simply using tuple types?
I also see that this PR contains no changes to the docs and that the current 1.3-SNAPSHOT docs already reflect the changes of this PR. What am I missing here?
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---