重磅!騰訊正式開源圖計算框架 Plato,十億級節點圖計算進入分鐘級時代

整理 | 唐小引
封圖 | 付費下載自東方 IC
出品 | CSDN(ID:CSDNnews)

騰訊開源進化 8 年,進入爆發期!

繼剛剛連續開源 TubeMQ、Tencent Kona JDK、TBase、TKEStack 四款重點開源項目後,騰訊開源再次迎來重磅項目!北京時間 11 月 14 日,騰訊正式宣佈開源高性能圖計算框架 Plato,這是在短短一週之內,騰訊開源的第五個重大項目。

據騰訊官方介紹,Plato 是騰訊內部圖計算 TGraph 團隊整合內部資源自主研發的一款高性能圖計算框架,取名 Plato 是爲了致敬偉大的數學家柏拉圖,目前騰訊雲大數據團隊正在封裝 Plato,即將對所有開發者開放使用。

相對於目前全球範圍內其它的圖計算框架,Plato 可滿足十億級節點的超大規模圖計算需求,將算法計算時間從天級縮短到分鐘級,性能全面領先領先於其它主流分佈式圖計算框架,並且打破了原本動輒需要數百臺服務器的資源瓶頸,現在,最少只需要十臺服務器即可完成計算。

騰訊 Plato 團隊負責人於東海表示:“Plato 已經賦能騰訊內部包括微信在內的衆多核心業務,尤其是爲騰訊超大規模社交網絡圖數據的各類計算提供支撐,解決了現有其他計算框架無法在有限資源和有限時間內完成計算的難點。Plato 不僅爲騰訊創造了巨大的業務價值,開源後還將持續推動圖計算技術和行業的協同發展,加速創新。”

詳解騰訊高性能圖計算開源框架 Plato

實際上,圖計算的“圖”並不是指普通的圖像和照片,而是用於表示對象之間關聯關係的一種抽象數據結構,圖計算就是以圖作爲數據模型來表達問題並予以解決的過程。圖計算可以將不同來源、不同類型的數據融合到同一個圖裏進行分析,得到原本獨立分析難以發現的結果,因此成爲社交網絡、推薦系統、網絡安全、文本檢索和生物醫療等領域至關重要的數據分析和挖掘工具。

據瞭解,Plato 的計算性能方面極其強悍,比目前市場上最爲領先的圖計算框架 Spark GraphX 還高出 1-2 個數量級,它將算法計算時間從天級縮短到分鐘級,性能提升數十倍,也標誌着圖計算全面進入分鐘級時代。

另外一個巨大優勢是,Plato 在內存消耗方面遠小於主流的圖計算框架,比 Spark GraphX 減少 1-2 個數量級,僅需 10 臺服務器左右的中小規模集羣,即可完成超大規模圖計算,相比此前動輒需要數百臺服務器的限制,資源壓力和計算成本都得到了極大降低。

目前,Plato 主要提供兩大核心能力:騰訊數據量級下的離線圖計算和騰訊數據量級下的圖表示學習。

同時,Plato 天然適配 Kubernetes、YARN 等資源調度平臺,並提供支持主流文件系統的多種接口,能爲開發者提供更友好的運行環境。

架構設計上,Plato 框架的核心是自適應圖計算引擎,它能夠根據不同類型的圖算法,提供多種計算模式供開發者靈活選擇,包括自適應計算模式、共享內存計算模式和流水線計算模式等。另外,還設計了良好的接口支持接入新的計算通信模式。


△Plato 整體架構圖

在計算引擎之上,Plato 爲算法設計者或具體的業務提供多層次接口:從底層的 API,到圖算法庫,再到爲具體業務量身打造的“解決方案”——圖工具集。通過這些應用層的接口和工具,Plato 還可以把離線計算結果與其他機器學習算法相結合,共同支撐頂層的不同業務。

值得一提的是,目前 Plato 的算法庫中的圖特徵、節點中心性指標、連通圖和社團識別等多種算法都已經開源,未來還將進一步開源更多的算法。

性能對比

據騰訊官方介紹,Plato 的計算性能遙遙領先於主流的分佈式圖計算框架。下圖選取了 Plato 與 Spark GraphX 在 PageRank 和 LPA 這兩個 benchmark 算法的性能對比,可以看到,Plato 的性能比 Spark GraphX 高出 1-2 個數量級。

除了計算性能不足,內存佔用過大也是限制大規模圖計算的主要因素。Plato 的另一個巨大優勢則是它的內存開銷遠小於主流圖計算框架。從下圖看到,Plato 的內存消耗比 Spark GraphX 減少了 1-2 個數量級,爲超大規模圖計算創造了更大的想象空間。

Plato 不僅在 benchmark 算法中獨樹一幟,在真實的業務算法中也同樣成效卓著。在騰訊數據量級下,Plato 的計算性能也非常優秀。下圖給出了 Plato 在騰訊數據量級下的共同類計算、Node2Vec、LINE、GraphSage 等典型業務算法的性能。

騰訊開源 8 年進化:86 個項目,GitHub 排名前十

從 2011 年騰訊在內部提倡以公共組件的形式共享和複用代碼、2012 年發佈第一個對外開源項目到今天,騰訊開源已經走過了 8 年,也已取得豐碩成果。截止目前,騰訊已經在 GitHub 上已經開源了 86 個項目,超過 1000 個貢獻者參與了開源貢獻,擁有超過 25 萬個 Star 數,在 GitHub 全球公司貢獻榜上排名前十。

同時,騰訊業已加入 Linux、Apache 等 9 大開源基金會,成爲最高級別會員,並向 Linux、Apache、LF AI 等開源基金會捐贈 3 大優秀開源項目。2018 年,騰訊將高性能 RPC 開發框架 TARS,及其輕量化名字服務方案 TSeer 捐贈給 Linux 基金會,將業界領先的深度學習框架 Angel 捐贈給 Linux 旗下專注人工智能的 LF AI 基金會;2019 年,騰訊新發布的萬億級分佈式消息中間件 TubeMQ 捐贈給 Apache 基金會,成爲官方認可的 Incubator 項目。

總結來看,騰訊通過“三步走”的開源計劃,通過代碼開放和社區運營,不斷深化騰訊已有的技術能力,向協同開放和社區開放治理的縱深方向發展。

具體來說,第一步是內部開源協同。首先拉通內部項目和組織,通過部門小團隊作戰或跨部門大團隊作戰的方式協同推進,以優化資源配置的方式集中優勢尋求技術突破,並建立起篩選機制將代碼開放出來。

第二步是外部代碼開放。優化設計與代碼結構,不斷拓展落地場景,有效利用外部貢獻者資源實現資源整合,構建技術影響力。

第三步是社區開放治理,在這一階段,注重大規模技術推廣與應用、開發者生態體系構建、社區領袖與領導力培養、全社會研發資源的優化配置四個方面。

對於騰訊爲什麼如此重視開源治理,騰訊開源聯盟(TOSA)主席、騰訊技術工程事業羣數據平臺部大數據海量存儲與海量計算負責人堵俊平在接受 CSDN(ID:CSDNnews)採訪時談到了至關重要的兩點:「第一點,騰訊對於開源的態度非常成熟,開源不是像其他公司開源出去大家贏得掌聲就結束了。開源代碼開放只是第一步,第二步是建立好的社區,第三步是通過這個好的社區進行技術挖掘。給生態上的各個企業帶來一些回報,這是很長期的過程,不是一次代碼開放就解決的。第二點,騰訊是做社交起家的,很擅長於做人與人之間的連接,開源能夠做成功和騰訊包容和溝通是離不開的,這就是爲什麼我們比較重視這一點。」

現在,快來 GitHub 上 Star Plato 吧!

Plato 開源地址:https://github.com/tencent/plato

【活動推薦】

2019 嵌入式智能國際大會來啦!以“萬物互聯·泛在智能”爲主題,邀請30+位海內外頂級專家作爲分享嘉賓,展示嵌入式AI的未來,涵蓋計算機視覺、3D視覺,醫療影像處理、語音識別、NLP、傳感器融合、自動駕駛等核心技術和應用。集聚500+位來自主流AIoT領域踐行創新的中堅力量,100+位海內外特邀技術領袖。還將有數十家芯片、模組、 工具和應用集成商展示最新產品,是不容錯過的行業盛會。

2019嵌入式智能國際大會,8.3折限時優惠票,最高可省499元!學生票僅售399元!戳鏈掃碼買起來!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章