1. 程式人生 > >TigerGraph開源十大圖資料庫演算法庫 ——基於GSQL的圖靈完備的演算法,執行演算法查詢與執行GSQL查詢動作一致

TigerGraph開源十大圖資料庫演算法庫 ——基於GSQL的圖靈完備的演算法,執行演算法查詢與執行GSQL查詢動作一致

日前,全球速度最快的企業級圖分析平臺TigerGraph宣佈,正式開源 TigerGraph GSQL 圖資料庫演算法庫,釋出三大類共十大核心演算法。

通過開放這些演算法庫,將為使用者提供圖分析的演算法模板和示範,讓使用者以更加簡單易用的方式支援更廣泛場景的業務分析。

目前,使用者可以從github下載該演算法庫 ,體驗TigerGraph原生並行圖資料庫的高速查詢和演算法庫強大的分析能力 。

圖資料庫核心演算法

圖資料庫演算法是一系列的函式,用於計算圖、圖內頂點及其相互關係的指標和特徵。 它可以從內部揭示出某個圖中的各個實體之間的角色及其關聯關係。

TigerGraph GSQL圖演算法庫包含了一系列效能卓越的GSQL查詢,所以GSQL的圖形演算法本質上是GSQL查詢。每種演算法都可以作為一個獨立的查詢使用,而每個查詢都可以實現某種標準的圖演算法。

在演算法執行中,使用者可以選擇三種不同格式的輸出結果,包括 JSON格式流輸出、 輸出值寫入表格類檔案,以及儲存為頂點屬性值。目前,GSQL的圖形演算法庫中開源的核心演算法可分為三類:路徑搜尋的演算法、衡量中心度的演算法以及衡量群體度的演算法。

路徑搜尋的演算法,用於幫助使用者找到最短路徑或評估某條路徑的可行性或質量。其中主要包括:

  • 無權重單起點最短路徑演算法(Single-Source Shortest Path)。這種演算法在大量應用中都有廣泛運用,例如估計事件影響、評估知識傳播,或者用於調查犯罪的方法等。
  • 含權重單起點最短路徑演算法(Single-Source Shortest Path)。 這種演算法在尋找更優路線的應用中非常普遍,例如在GPS導航的路徑規劃中尋找兩個地點之間的最短路徑。

衡量中心度的演算法,用於幫助確定網路中某個頂點對於總體的重要性,可以用來解釋“位置有多靠中心”這樣的問題。其中主要包括:

  • 頁面排名演算法(PageRank)。這種演算法主要用於測量每個頂點對於其他頂點的影響力,例如能夠揭示個人在社交網路中的社會影響力大小、尋找複雜網路分析中的源頭和權威性等。
  • 接近中心度演算法(Closeness Centrality)。這種演算法可以幫助精確地衡量某一個頂點到底“多靠近中心”,例如在複雜的社交網路中,確定出中心度越高的個體,越有可能是網路中的一箇中心。

衡量群體度的演算法,主要用於評估一個網路結構中個體組合或分裂的程度,同時也能夠獲得網路的組織程度正在加強或削弱的趨勢,其中主要包括:

  • 連通分量演算法(Connected Components)。這種演算法能夠幫助確定互相連通的一組頂點和邊的最大範圍,例如在社會網路分析領域用於尋找網路中的有聯絡的小團體或個體。
  • 標籤傳播演算法(Label Propagation)。這種演算法是一種啟發性演算法,利用頂點間的關係建立關係完全圖模型,用於確定社群內部關係,例如廣泛地應用到多媒體資訊分類、虛擬社群挖掘等領域。
TigerGraph演算法庫總覽

TigerGraph GSQL 演算法庫特點

作為TigerGraph專門開發的圖資料庫查詢語言,GSQL大大降低了使用者的學習和使用門檻,不需要使用者具有特別專業的資料庫知識。由於GSQL的圖形演算法本質上是GSQL查詢,所以執行演算法查詢與執行GSQL查詢的動作是相同的。

正是由於TigerGraph GSQL查詢語句特別適用於圖資料庫的演算法,使得高效能的GSQL 演算法庫具有顯著的特點和優勢:

  • 圖靈完備:完全支援指令式程式設計和程式式程式設計,是演算法運算的理想選擇,特別適合高效實時分析。
  • 並行和分散式處理:每種演算法都可以作為一個獨立的查詢使用,也可作為模組在大型圖上被呼叫計算。
  • 程式碼規範且擴充套件自由:由於基於GSQL規範編寫並由使用者自行編譯,使用者可以非常容易地修改和定製。
  • 完全開源:使用者可以通過公佈的示例學習不同的GSQL演算法,並且也可將自行開發的程式碼提交到演算法庫中。

TigerGraph是非常完備和優化的圖資料庫平臺,支援大規模圖儲存以及大規模圖的執行處理,具有非常強大的查詢語言和演算法庫。TigerGraph的技術突破代表了圖資料庫發展的最新方向,標誌著正式邁入了第三代圖資料庫時代。

TigerGraph也因此被Strata Data Awards授予“最具顛覆性初創公司”的獎項。

TigerGraph的原生並行圖系統與市場上的圖資料庫解決方案相比,該項技術在查詢速度和儲存容量方面均具有明顯的領先優勢。另外,TigerGraph目前推出TigerGraph Cloud,支援在公有云(AWS以及Azure)中應用GSQL查詢和可自定義的圖演算法庫。