檢視精彩回放:
https://developer.aliyun.com/live/245851内容簡要:
一、圖計算的背景
二、大規模圖計算挑戰
三、一站式超大規模圖計算系統GraphScope
四、一站式、開發便捷、極緻性能
五、從一個demo看端到端的解決實際問題
六、持續發力開源社群建設,一起打造最先進的圖計算系統
阿裡巴巴擁有全球最大的電商知識圖譜,圖譜包含買家、商鋪、商品等“頂點”,它們之間可以通過購買、加購物車、浏覽、評價等“邊”産生關聯。
圖就像下圖這張知識圖譜一樣,将萬事萬物用關系關聯起來。在資料大爆炸的時代,管理和利用圖資料中的關聯也成為越來越重要的課題。

這張電商知識圖譜裡包含了數百億點、萬億邊,每天有千億更新,覆寫全球數億消費者、幾十億的商品、數千萬商家。
在阿裡,包括供應鍊、推薦、風控等很多場景,已經在使用這份大規模圖資料,圖資料和計算的技術正在飛速發展,不像稠密的Tensor圖像資料,圖計算非常适合高維、稀疏資料,同時具有非常強大的表達能力。圖計算将是未來人工智能3.0的基礎能力之一,将在更多領域得到廣泛使用。
二、大規模圖計算充滿挑戰
2.1 示例:論文分類預測
如果把全世界所有發表的學術論文和論文作者看成一些頂點,我們可以構造出這樣的一張圖,這張圖裡有很多關聯的邊,例如論文和論文之間有引用關系,作者和論文之間有寫作關系,這可以構成一張很大的圖譜。
直覺地說,從論文和論文之間引用的關系網絡中,可以做機器學習任務來預測論文分類,那麼應該怎麼做?
第一步:先擷取資料,清洗整理資料,做資料抽取和處理;
第二步:互動式查詢,嘗試去互動式的了解和分析,得到結果再去驗證及整理資料;
第三步:圖分析,機器學習的任務不僅是做一個圖神經網絡,還需要加一些點上自帶特征以外的圖結構特征,幫助做分類;
第四步:将Tensorflow合在一起,做圖神經網絡的學習。
我們會發現以下幾點:
第一,真正的圖計算任務,不隻是一個計算任務,而是包含多種計算任務;
第二,在真實的場景中把流程跑通涉及到多個系統;
第三,每一個步驟的使用本身具備一定難度,把每一個步驟組合使用則更加困難。
綜上,我們需要一個非常高效率的系統,那麼有沒有好的辦法來解決?
2.2 圖分析:怎麼從小資料到大資料?
解決一個日常問題的時候,從開發模型、了解問題到設計算法,最簡單是從例子出發,從小資料出發,從寫一個簡單易開發的單機串行程式開始。
工作過程正常順序:Concept- Engineering- Testing-Production,從小單機/順序/小資料到分布式/并行/大程式,一個順序的圖計算算法是很難并行化。
舉例,一個圖挖掘算法簡單做一次二重循環,對圖做次掃描,然後對圖中一個小部分做内部再掃描,僅這樣很難都做并行化,放到點中心的程式設計模型上也十分困難。
2.3 互動式分析:怎麼利用分布式并行計算自動擴充超大圖?
如何做互動式分析,互動式分析的困難在哪裡?
業界有一個标準的語言叫做Gremlin,它按使用者指令從圖中一批起點出發沿圖結構遊走,再把遊走的結果傳回,這個過程稱為圖遊曆。該語言非常靈活,可做圖上查詢和互動式了解。
上圖以有向環檢測作為風控場景查詢為例,尋找從一個名叫“Tom”的人出發所有 k+1 度長的有向環路,可以用Gremlin的語句來表述。這裡無需考慮并行,但現有的JanusGraph等圖資料庫系統不支援并行執行這樣的語言以及語言背後的查詢,這也是目前面臨的一個大挑戰。
2.4 圖神經網絡:如何應用于工業生産?
包括阿裡在内的網際網路絡公司及其他行業都在嘗試用圖神經網絡解決機器學習問題,是以引申出一個最大的問題:如何把圖神經網絡中的算法模型,從學術界提出概念到大規模的工業生産應用?
這其中面臨着許多問題,包括異構圖多樣的屬性、複雜的采樣、海量圖資料的采樣和Tensor計算的融合等,都是巨大的挑戰。
綜上所述,圖計算大規模應用挑戰可以歸結為三大類:
一, 問題複雜,計算模式多樣,解決方案碎片;
二, 學習難度大、成本高、門檻高;
三, 資料量大,計算複雜、效率低。
二、GraphScope:一站式超大規模圖計算系統
基于此,阿裡巴巴做了業界第一個真正一站式超大規模圖計算系統,系統結合了阿裡巴巴的海量資料與豐富場景,以及達摩院、新零售智能引擎等相關研究開發團隊的關聯,如下圖所示。
系統大緻分三層:
系統互動層,底層是開源的共享分布式記憶體圖存儲,稱為Vineyard,它可以實作高效的存儲格式、靈活圖分區元件、0-copy資料共享及中繼資料管理子產品;
核心架構層,支援圖互動式查詢引擎、圖分析引擎和圖深度學習引擎;
工具元件層,為使用者提供打開即用的圖分析算法庫和圖學習算法庫,可以直接在工業場景應用中快速落地。
GraphScope的三大技術優勢:一站式、開發便捷、極緻性能
4.1 一站式
Ø 多模态圖計算一站完成
在這個系統,使用者可以一站式進行圖分析、圖互動查詢和圖深度學習,無需把資料放在不同的系統或者多個系統疊加。背後利用了高效共享分布式存儲插件Vineyard,底層是基于Kubernete的解決方案。
Ø 圖分析:從小資料到大資料的自動并行化
這裡使用PIE (GRAPE) 模型,實作了串行算法的即插即用并行化,目前基于此模型的系統已經在阿裡内部使用,同時一個輕量化的C++庫已經開源:
https://github.com/alibaba/libgrape-lite,通過這個完成圖分析的工作。
Ø 圖互動分析:業界第一個基于高層語言的自動并行化圖遊曆引擎
此子產品已被網絡系統最頂級會議NSDI錄用,将在NSDI2021發表。我們做了一個高效的Dataflow的運作時和編譯器,将非常複雜的Gremlin文法的查詢語句自動做海量并行化,可以在多機上高效并行執行,效率比現有的系統大約快兩個數量級。
Ø 圖深度學習:高性能、可擴充的圖深度學習引擎
基于已經開源的Graph-Learn圖神經網絡的系統交易,背後的阿裡AliGraph獲得了2019年世界人工智能大會最高獎SAIL獎。
我們內建這三個業界最領先圖相關的計算引擎,在一個系統中實作。
4.2 開發便捷
GraphScope是一個開發便捷的産業級圖計算架構,是Python和Gremlin生态的深度結合,支撐産與研的快速疊代與全面擁抱,支援自動并行化,降低開發門檻,内置豐富的圖分析、圖學習的算法庫。
4.3 極緻性能
主要包括:高效的共享圖儲存、智能的編譯優化以及性能領先的運作時。
Ø 高效的共享圖存儲
可以實作應用驅動的自平衡分布式圖分區及零拷貝的高效跨引擎共享。
Ø 智能的編譯優化
業界首個Gremlin分布式編譯優化例,支援自動增量化處理動态圖更新及跨語言混合CodeGen 。
Ø 性能領先的運作時
支援多種計算模态的定制優化及異構硬體的異步執行架構.
4.4 業界最領先的圖計算系統
Ø 賦能業務
日均10000+計算任務支撐阿裡巴巴核心業務,賦能30+外部業務。
Ø 端到端開發時間
從周縮短到天。
Ø 豐富的算法庫
50+圖分析和圖學習算法庫。
Ø 工業級的複雜場景
單圖100+标簽,1000+屬性。
Ø 超大規模
單任務1萬核,單圖千億以上邊 50TB級以上圖資料。
Ø 性能遙遙領先業界主流引擎
LDBC Analytics (XL規模),4節點算法 平均 1.08B EVPS;最高達 5.22B EVPS;
LDBC Interactive(20億點、170億邊 最大規模的圖上)線性可擴充;
圖深度學習模型訓練時長縮短50%。
以下通過Demo進行流程示範:
所有的圖計算工作均可在Python中完成,可以像操作一台單機電腦,利用Kubernetes指揮一個巨大的叢集,解決複雜的圖計算任務。
GraphScope系統可大大降低使用者使用圖計算的門檻,讓更複雜的圖應用和機器學習的應用能開發出來。如果大家對大資料及圖計算感興趣,歡迎前來使用。
• 開源位址:
https://github.com/alibaba/GraphScope• 項目網站:
https://graphscope.io/• 協定:Apache License 2.0
歡迎大家試用并參與到圖計算社群的建設中 我們會持續Release和更新,更多的功能敬請期待。讓我們一起攜手,打造業界最好的圖計算開源系統。