GraphX:分布式數據流框架中的圖形處理
抽象的
為了追求圖形處理性能,係統社區在很大程度上放棄了通用分布式數據流框架,以支持專門的圖形處理係統,這些程序提供了量身定製的編程抽象並加速了迭代圖形算法的執行。在本文中,我們認為,可以在現代通用分布式數據流係統中恢複專用圖形處理係統的許多優勢。我們介紹GraphX,這是一個嵌入式圖形處理框架,建立在Apache Spark的頂部,這是一個廣泛使用的分布式數據流係統。GraphX提出了一個熟悉的合並圖抽象,足以表達現有的圖形API,但隻能使用幾個基本數據流操作員(例如,JOIN,MAP,Group-Bob-Boby)實現。為了通過專門的圖形係統實現性能奇偶校驗,GraphX將特定於圖形的優化作為分布式連接優化和實體視圖維護。通過利用分布式數據流框架的進步,GraphX為圖形處理帶來了低成本的容錯性。我們在實際工作負載上評估GraphX,並證明GraphX在基本數據流框架上實現了數量級的性能增益,並匹配了專用圖形處理係統的性能,同時啟用了更廣泛的計算範圍。