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

Greg Hogan commented on FLINK-1815:
-----------------------------------

One area I would like to explore with the next release is storing graphs as 
adjacency lists (dependent on FLINK-3695). Depending on if this is successful 
and depending on how these are represented, would it be better to read and 
write the adjacency list CSV from/to an adjacency list Graph?

{{CsvInputFormat}} uses {{FieldParser}} to convert raw input to the proper 
type. I think this is more future-proof than this PR's 
{{GraphAdjacencyListReader.fromString}}. I don't know if there are thoughts on 
allowing users to register a {{FieldParser}} for a custom type.

I'm not seeing a {{Graph.writeAsCsv}} wrapper around {{DataSet.writeAsCsv}}. If 
not implemented this might be nice to add on different ticket.

Thoughts?

> Add methods to read and write a Graph as adjacency list
> -------------------------------------------------------
>
>                 Key: FLINK-1815
>                 URL: https://issues.apache.org/jira/browse/FLINK-1815
>             Project: Flink
>          Issue Type: New Feature
>          Components: Gelly
>    Affects Versions: 0.9
>            Reporter: Vasia Kalavri
>            Assignee: Faye Beligianni
>            Priority: Minor
>
> It would be nice to add utility methods to read a graph from an Adjacency 
> list format and also write a graph in such a format.
> The simple case would be to read a graph with no vertex or edge values, where 
> we would need to define (a) a line delimiter, (b) a delimiter to separate 
> vertices from neighbor list and (c) and a delimiter to separate the neighbors.
> For example, "1 2,3,4\n2 1,3" would give vertex 1 with neighbors 2, 3 and 4 
> and vertex 2 with neighbors 1 and 3.
> If we have vertex values and/or edge values, we also need to have a way to 
> separate IDs from values. For example, we could have "1 0.1 2 0.5, 3 0.2" to 
> define a vertex 1 with value 0.1, edge (1, 2) with weight 0.5 and edge (1, 3) 
> with weight 0.2.



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

Reply via email to