There is no "preferred way" to represent labeled graphs. A close example to your adjacency list idea is LongDoubleDoubleAdjacencyListVertexInputFormat.

Hope that helps,

Avery

On 4/11/12 10:00 AM, Paolo Castagna wrote:
Hi,
I am not sure what's the best way to represent labeled graphs in Giraph.

Here is my graph (i.e. vertex_id --edge_label_id-->  vertex_id ):

32 --62-->  115
32 --153-->  189
32 --200-->  236
32 --266-->  303
32 --266-->  331
32 --266-->  363
303 --153-->  407
303 --266-->  331
331 --153-->  394
331 --266-->  32
...

I have code to produce an adjacency list:

32 ( 62 115 ) ( 153 189 ) ( 200 236 ) ( 266 303 331 363 )
303 ( 153 407 ) ( 266 331 )
331 ( 153 394 ) ( 266 32 )
...

What's the bets way to represent labeled graphs with Giraph?

Correct me if I am wrong, but none of the current VertexInputFormat(s) is good
for this, am I right?

As a workaround, it is possible to generate an unlabeled adjacency list with
just the edge type someone is interested in, say for example --266-->  :

32 303 331 363
303 331
331 32
...


Cheers,
Paolo


PS:
The graph above is RDF, parsed using Apache Jena's RIOT and stored in TDB.
An example of code to generate the adjacency list from TDB indexes is here:
https://github.com/castagna/jena-grande/blob/0667599264527721daea80d56ad3f99e437dcda2/src/main/java/org/apache/jena/grande/examples/RunTdbLowLevel.java

Reply via email to