包graphx
α組件GraphX是一個圖像處理框架之上的火花。
- 字母
- 通過繼承
- graphx
- AnyRef
- 任何
- 隱藏所有
- 顯示所有
- 公共
- 所有
類型成員
- 用例類邊緣(艾德](srcId:VertexId=0,dstId:VertexId=0,attr:艾德=null.asInstanceOf (ED))擴展可序列化的與產品
一個源id組成的定向邊緣,目標id,和相關的數據。
一個源id組成的定向邊緣,目標id,和相關的數據。
- 艾德
-
類型的屬性
- srcId
-
頂點的頂點id來源
- dstId
-
目標頂點的頂點id
- attr
-
相關的屬性優勢
- 文摘類EdgeContext(VD,艾德,一個]擴展AnyRef
代表一個邊緣與其相鄰的頂點,並允許發送消息沿邊緣。
代表一個邊緣與其相鄰的頂點,並允許發送消息沿邊緣。中使用的圖# aggregateMessages。
- 類EdgeDirection擴展可序列化的
指示的方向邊緣相對於一個頂點。
- 文摘類EdgeRDD(艾德]擴展抽樣(邊緣(艾德]]
EdgeRDD (ED, VD)
擴展抽樣(邊緣(ED))
通過將邊柱狀格式存儲在每個分區上的性能。EdgeRDD (ED, VD)
擴展抽樣(邊緣(ED))
通過將邊柱狀格式存儲在每個分區上的性能。也許另外存儲頂點屬性與每條邊提供三聯體的觀點。運輸由頂點的屬性impl.ReplicatedVertexView
。 - 類EdgeTriplet(VD,艾德]擴展邊緣(艾德]
優勢三聯體代表優勢以及相鄰頂點的頂點屬性。
優勢三聯體代表優勢以及相鄰頂點的頂點屬性。
- VD
-
頂點屬性的類型。
- 艾德
-
邊緣的類型屬性
- 文摘類圖(VD,艾德]擴展可序列化的
圖形抽象地表示一個圖與任意對象關聯的頂點和邊。
圖形抽象地表示一個圖與任意對象關聯的頂點和邊。圖提供了訪問和操作數據的基本操作與頂點和邊以及底層結構。像火花抽樣,圖為一個功能性變異操作返回新圖表的數據結構。
- VD
-
頂點屬性類型
- 艾德
-
邊緣屬性類型
- 請注意
-
GraphOps包含額外的方便操作和圖形算法。
- 類GraphOps(VD,艾德]擴展可序列化的
包含額外的功能圖。
包含額外的功能圖。所有操作表達的有效GraphX API。這個類是每個圖形對象隱式構造。
- VD
-
頂點屬性類型
- 艾德
-
邊緣屬性類型
- 類型PartitionID=Int
圖分區的整數標識符。
圖分區的整數標識符。必須小於2 ^ 30。
- 特征PartitionStrategy擴展可序列化的
代表的邊緣被分配到邊緣分區基於源和目的地頂點id。
- 類TripletFields擴展可序列化的
- 類型VertexId=長
一個64位的頂點標識符,惟一地標識一個頂點在一個圖。
一個64位的頂點標識符,惟一地標識一個頂點在一個圖。它不需要遵守任何命令或任何非唯一性約束。
- 文摘類VertexRDD(VD]擴展抽樣((VertexId,VD)]
擴展
抽樣((VertexId VD))
通過確保隻有一個條目為每個頂點和通過預先索引條目快速、高效的連接。擴展
抽樣((VertexId VD))
通過確保隻有一個條目為每個頂點和通過預先索引條目快速、高效的連接。兩個VertexRDDs相同指數可以有效地加入。所有操作除外重建索引保留指數。構建一個VertexRDD
,可以使用VertexRDD對象。此外,存儲路由信息,使加入的頂點屬性EdgeRDD。
- VD
-
頂點屬性相關聯的每個頂點的集合。
構造一個
VertexRDD
從一個普通的抽樣:/ /構造一個初始點集瓦爾someData:抽樣(VertexId SomeType)] = loadData (someFile)瓦爾vset = VertexRDD (someData)/ /如果有冗餘值someData我們會使用reduceFunc瓦爾vset2 = VertexRDD (someData reduceFunc)/ /最後,我們可以使用VertexRDD指數的另一個數據集瓦爾otherData:抽樣(VertexId OtherType)] = loadData (otherFile)瓦爾vset3 = vset2.innerJoin (otherData) {(vid, a, b)= >b}/ /現在我們可以快速構建兩組之間的連接瓦爾vset4: VertexRDD [(SomeType OtherType)] = vset.leftJoin (vset3)
例子:
值的成員
- 對象邊緣擴展可序列化的
- 對象EdgeContext
- 對象EdgeDirection擴展可序列化的
一組EdgeDirection年代。
- 對象EdgeRDD擴展可序列化的
- 對象圖擴展可序列化的
圖形對象包含一組例程用於構造圖抽樣。
- 對象GraphLoader擴展日誌記錄
提供了實用程序加載圖從文件。
- 對象GraphXUtils
- 對象PartitionStrategy擴展可序列化的
內置的集合PartitionStrategy實現。
- 對象Pregel擴展日誌記錄
實現了一個Pregel-like bulk-synchronous消息傳遞API。
實現了一個Pregel-like bulk-synchronous消息傳遞API。
與原Pregel API不同,GraphX Pregel API因素sendMessage計算邊緣,使消息發送計算閱讀兩個頂點屬性、圖結構和約束信息。這些變化使更多的有效的分布式執行,同時也暴露了基於計算更大的靈活性。
我們可以使用Pregel抽象來實現網頁排名:
瓦爾pagerankGraph:圖(雙,雙]=圖/ /關聯程度和每個頂點.outerJoinVertices (graph.outDegrees){(視頻、vdata度)= >deg.getOrElse (0)}/ /設置基於程度的邊緣上的重量.mapTriplets (e= >1.0/ e.srcAttr)/ /設置頂點屬性初始pagerank值.mapVertices ((id、attr)= >1.0)defvertexProgram (id: VertexId attr:雙msgSum:雙):雙= resetProb + (1.0- resetProb) * msgSumdefsendMessage (id: VertexId邊緣:EdgeTriplet [雙,雙):迭代器(VertexId雙)=迭代器(邊緣。dstId邊緣。srcAttr * edge.attr))defmessageCombiner (:雙b:雙):雙= a + b瓦爾initialMessage =0.0/ /執行Pregel固定數量的迭代。Pregel (pagerankGraph initialMessage numIter) (vertexProgram、sendMessage messageCombiner)
例子: - 對象VertexRDD擴展可序列化的
用來構造VertexRDDs VertexRDD singleton。