Dream Team. It's Forming and Motivation – Fresh-Up Breakfast – 2014.06.24
2014.06.24.graph support
-
Upload
jim-cooley -
Category
Software
-
view
255 -
download
0
description
Transcript of 2014.06.24.graph support
Graph Support by Alexander Albul
| UBIX |
UBIX.IO
Architecture
UBIX.IO
+ +
Idea
UBIX.IO
Phase one: Denial and Isolation
UBIX.IO
Possible problems
UBIX.IO
● Our engine did not support it. ● How to construct graphs? ● What to do with commands?
Problem #1. Engine
UBIX.IO
Problem #1. New Engine
UBIX.IO
Problem #2. Graph construction
UBIX.IO
Problem #2. Graph construction
UBIX.IO
Problem #2. Graph construction
UBIX.IO
val context = new SparkContext("local", "graphx app") val verticesRdd = context.textFile("vertices.csv").map { case line => val lineSplit = line.split(",") lineSplit.head.toLong -> lineSplit.last } val edgesRdd = context.textFile("edges.csv").map { case line => val lineSplit = line.split(",") val fromId = lineSplit.head.toLong val toId = lineSplit.tail.head.toLong val attribute = lineSplit.last Edge(fromId, toId, attribute) } val graph = Graph(verticesRdd, edgesRdd) println(graph.numVertices)
Problem #2. Graph construction
UBIX.IO
● Extract data from raw file ● Transform to GraphX format ● Build Graph
Problem #2. Graph construction
UBIX.IO
Problem #2. Graph construction
UBIX.IO
Problem #2. Graph construction
UBIX.IO
Problem #3. Graph commands
UBIX.IO
Can i use graphs now?
Problem #3. Implicit type conversion
UBIX.IO
Problem #3. Graph to table
UBIX.IO
…. val graph = Graph(verticesRdd, edgesRdd) val table = graph.triplets.map { case triplet => triplet.srcId :: triplet.srcAttr :: triplet.dstId :: triplet.dstAttr :: triplet.attr :: Nil } table.foreach(println)
Q & A
UBIX.IO