Spark-Graphx系列-基礎用法

一.簡介

Spark GraphX是一個並行圖計算框架,它是基於Spark平臺提供對圖計算和挖掘簡潔易用的而豐富的接口,極大的方便了對餅形圖處理的需求。在GraphX中,圖的基礎類爲Graph,它包含兩個RDD:一個爲邊RDD,另一個爲頂點RDD。

與其他圖處理系統和圖數據庫相比,基於圖概念和圖處理原語的GraphX,它的一大優勢在於,既可以將底層數據看作一個完整地圖,使用圖的概念和圖處理原語:也可以將它們看作獨立的邊RDD和頂點RDD,使用數據並行處理原語,進行mapped、joined、transformed等操作。

二.特點

靈活性高

圖可以和集合進行無縫對接,GraphX統一了單個系統中的ETL、探索性分析和迭代圖計算。您可以查看與圖形和集合相同的數據,有效地使用RDD 轉換和圖的連接操作,以及使用 Pregel API 編寫自定義迭代圖算法。

速度快

可以與最快的專業圖形處理系統相媲美。

GraphX與最快的圖形系統競爭性能,同時保留Spark的靈活性,容錯性和易用性。

算法多

從不斷增加的圖算法庫中進行選擇。

除了高度靈活的API之外,GraphX還提供了各種圖形算法,其中許多都是由我們的用戶提供的。網頁排名,連接組件,標籤傳播,SVD ++,強大的連接組件以及三角計數等。

三.案例

 def main(args: Array[String]): Unit = {
    val session = SparkSession.builder().appName("GraphxDemo10").master("local[*]").getOrCreate()
    val sc = session.sparkContext
    //
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章