圖計算:一張圖秒級洞察千億級復雜關系


在數據規模越來越大、數據結構越來越復雜的大數據時代,傳統的關系型數據暴露出了建模缺陷、水平伸縮等問題,於是具有更強大表達能力的圖數據受到業界極大的重視。如果把關系數據模型比做火車的話,那么現在的圖數據建模可比做高鐵。

什么是圖呢?

圖(Graph),將信息中的實體,以及實體之間的關系,分別抽象表達成為頂點以及頂點間的邊這樣的結構數據。

像Facebook和Twitter這樣的社交網絡,其數據天生就適合於圖表示法。諸多典型的大數據應用易於通過圖來進行建模,如交通網絡、CDR通話圖、用戶與產品之間的二分圖、論文中作者之間的合作關系網、文章之間的索引關系、金融交易網絡等等。

於是,基於圖數據的分析技術—關系分析(圖計算)應運而生。圖計算系統就是針對圖結構數據處理的系統,並在這樣的數據上進行針對性優化的高效計算。

我們可以用圖這個通用的、富有表現力的結構來建模各種場景,從宇宙火箭的建造到道路系統,從食物的供應鏈及原產地追蹤到人們的病歷。

在許多實際場合中我們都能找到圖分析的應用。

例如:

在金融風控中,將多種變量(如賬號、交易、資金)之間的關系通過圖聯系在一起,共同分析其對金融安全的影響,典型的金融異構系統,如洗錢、龐氏騙局等都能反映出特定的圖結構。

在大圖上做環路檢測可以有效識別循環轉賬,幫助預防信用卡詐騙;

分析可疑人物的近鄰好友和基於屬性圖的社團發現可以進一步挖掘出騙子團伙或者僵屍賬號。

知識圖譜通過圖來建立知識概念之間的聯系,並在此基礎上設計推理算法。

知識圖譜常用來進行知識推理,從語義層面理解用戶意圖,改進搜索質量。

LinkedIn的知識圖譜對會員顯式輸入的技能,比如“分布式系統”、“Hadoop”等,自動推理出其他技能,比如“產品管理”、“NoSQL”等。特別是AI和機器學習中需要處理很多由實體和關系構成的信息。例如,在推薦系統中,用戶和電影就是實體,他們之間的喜好構成了實體間的關系;搜索查詢和商品也是實體,他們之間的點擊率構成了實體間的關系。

業界洞察

整個圖計算領域可進一步細分為查詢分析、計算引擎、存儲管理、可視化等子方向。目前並沒有一種涵蓋所有子方向的圖引擎。例如圖數據庫Neo4j、Titan等擅長於圖數據的實時查詢,但並不能高效地據進行離線分析;分析引擎Turi、GraphX側重圖數據的離線分析和挖掘,卻不能對屬性圖進行管理,且不支持實時查詢。

同時,圖計算領域也面臨大數據環境下帶來的巨大挑戰。就當前的社交網絡而言,對全網做查詢分析就意味着對數十億節點(人物)數百億邊(關系)的大圖進行操作。而規模更大的互聯網、物聯網可達到百億節點千億邊甚至以上。在如此巨大數據量的情況下,實現高效高並發的查詢是當前一大難點。

一方面,鑒於圖數據結構的稀疏性,並不能通過GPU等硬件手段上取得很好的加速。

另一方面,圖的局部性也有別於傳統機器學習系統的數據組織形式。

社交網絡中一個人的平均好友數達到數百,那他的2度好友就會達到數十萬之多,於是探索一個人ego-net(對圖中某節點做擴線查詢得到的子圖)往往會遍歷上千萬甚至更多條邊。

在多機環境下,這些邊往往分布在不同的機器上,進一步增大了遍歷的難度。此外,隨着數據復雜性的增加,節點和邊往往帶有屬性信息。這些信息既可以是固有屬性(如年齡、性別等),也可以是計算得到的結果(如介數中心度、pagerank值等),這些計算結果往往又是下一次查詢的輸入。屬性管理與交互式計算查詢,是圖領域的另一大挑戰。

華為圖引擎服務GES

華為人工智能平台上的EYWA圖引擎提供了從底層的圖存儲和管理、核心的高性能計算引擎、直到面向上層的圖分析和圖查詢,一整套的關系網絡分析解決方案,其基本特征如下:

 高性能

EYWA基於邊集流的塊狀數據組織兼顧了圖計算與圖數據查詢的性能要求,並集成了多種面向行業領域的優化算法。它通過優化的prefetch策略降低磁盤的IO操作的性能損耗,同時也通過松弛BSP模型來降低通信IO帶來的性能損耗。相比Powergraph, GraphX, Powerlyra等計算速度提速4~10倍以上,而圖數據查詢的性能提升更加明顯,具備秒級多跳實時查詢的強大性能。

 一體化

EYWA實現圖計算、圖查詢和圖存儲的一體化:提供基於屬性圖模型的數據存儲,支持基本查詢(點查、邊查、遍歷、屬性過濾等),常用的圖算法(PageRank, SSSP, K-core, graph metrics等)可以基於圖的結構和屬性進行計算,並將結果回寫到圖的某一屬性中便於后續查詢。

EYWA已經在百億節點和千億邊的大規模圖實踐上驗證了其高並發、低時延的能力。

其中一份實驗用到的公開數據集是基於斯坦福大學SNAP研究組提供的Friendster, 來自真實的社會網絡。我們用全球計算機排名Graph500提供的Kronecker代碼在對該數據集進行擴展,形成了具有2.5億點110億邊的大圖和5.2億點和1011億邊的超大圖。通過擴線查詢模擬對社交網絡節點的ego-net的探索,我們的實驗結果顯示在百億邊圖100並發下的3跳擴線查詢總響應時間基本在0.1秒以內。

以下是針對不同並發請求數EYWA系統的響應時間(上:並發狀態下單個請求的執行時間;下:所有並發請求執行完成的總時間);千億邊圖100並發下3跳擴線查詢總響應時間在0.5~3秒(隨種子節點不同而變化)。

EYWA圖引擎支持基於屬性圖模型的復雜屬性管理、內置了20余種拓撲度量和基本圖分析算法,並通過服務化API將圖引擎的能力開放出去,提供全方位的關系網絡洞察。

在電信網絡等行業實踐中,利用EYWA我們很自然地表達了各類交換機、路由器、終端設備等網元構成的物理通信網絡,以及在其上抽象出來的邏輯網絡,並在此基礎上運行復雜的網絡規划仿真算法,極大提升了業務工作效率;

在金融、公共安全等行業實踐中,利用EYWA可表達大量的人物、賬戶、商家、手機等相互關聯的不同實體,並通過頂點和邊上的屬性(如人物的年齡、性別,賬戶的創建時間,人和商家之間的交易金額等)精細描述真實世界的信息。基於EYWA大規模高並發的支持,以及內置的最短路徑、中間人查找、回路分析、鄰居子圖等分析功能,客戶能夠高效地進行反欺詐、團伙發現等業務計算、幫助業務人員發現大量關聯數據背后有價值的隱藏信息。

轉自:華為雲社區  作者:mr.FangYang 

原文鏈接:http://t.cn/RFADb7C

華為圖引擎服務:http://t.cn/RFz2xkP


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM