OpenI 啟智社區(qū)

啟智社區(qū),確實(shí)給力

當(dāng)前位置:首頁(yè) > 資訊 > 行業(yè)資訊 >

騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代

近日,騰訊開(kāi)源再次迎來(lái)重磅項(xiàng)目。14 日,騰訊正式宣布開(kāi)源高性能圖計(jì)算框架 Plato,這是在近一周之內(nèi),開(kāi)源的第五個(gè)重大項(xiàng)目。前面依次開(kāi)源了 TubeMQ、Tencent Kona JDK、TBase、TKEStack 四個(gè)開(kāi)源項(xiàng)目。
  • TubeMQ:https://github.com/Tencent/TubeMQ 
  • Tencent Kona JDK:https://github.com/Tencent/TencentKona-8 
  • TBase:https://github.com/Tencent/TBase 
  • TKEStack:https://github.com/tkestack 
據(jù)介紹,Plato 可滿足十億級(jí)節(jié)點(diǎn)的超大規(guī)模圖計(jì)算需求,并將算法計(jì)算時(shí)間從天級(jí)縮短到分鐘級(jí);而且在性能方面也處于領(lǐng)先,并打破了原本動(dòng)輒需要數(shù)百臺(tái)服務(wù)器的資源瓶頸。現(xiàn)雷鋒網(wǎng) AI 開(kāi)發(fā)者將本次開(kāi)源項(xiàng)目 Plato 相關(guān)內(nèi)容整理如下。
騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代

先導(dǎo):什么是圖計(jì)算?

盡管現(xiàn)在圖像識(shí)別很火,但圖計(jì)算的「圖」并不是指普通的圖像和照片,而是用于表示對(duì)象之間關(guān)聯(lián)關(guān)系的一種抽象數(shù)據(jù)結(jié)構(gòu)。簡(jiǎn)單來(lái)講,圖計(jì)算就是研究在這些大量數(shù)據(jù)中,如何高效計(jì)算、存儲(chǔ)并管理圖數(shù)據(jù)等問(wèn)題的領(lǐng)域。

傳統(tǒng)的關(guān)系型數(shù)據(jù)暴露出了建模缺陷、水平伸縮等問(wèn)題,于是具有更強(qiáng)大表達(dá)能力的圖數(shù)據(jù)受到業(yè)界極大的重視。圖計(jì)算就是以圖作為數(shù)據(jù)模型來(lái)表達(dá)問(wèn)題并予以解決的過(guò)程。

它可以將不同來(lái)源、不同類型的數(shù)據(jù)融合到同一個(gè)圖里進(jìn)行分析,得到原本獨(dú)立分析難以發(fā)現(xiàn)的結(jié)果,因此也成為了社交網(wǎng)絡(luò)、推薦系統(tǒng)、網(wǎng)絡(luò)安全、文本檢索和生物醫(yī)療等領(lǐng)域至關(guān)重要的數(shù)據(jù)分析和挖掘工具。

騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代

Plato 圖計(jì)算框架

Plato 是騰訊內(nèi)部圖計(jì)算 TGraph 團(tuán)隊(duì)整合內(nèi)部資源自主研發(fā)的一款圖計(jì)算框架,而 Plato 這一命名正是為了致敬數(shù)學(xué)家柏拉圖。
  • 在計(jì)算性能方面,Plato 它能夠?qū)⑺惴ㄓ?jì)算時(shí)間從天級(jí)縮短到分鐘級(jí),不僅讓當(dāng)前的圖計(jì)算性能提升數(shù)十倍,也將圖計(jì)算帶進(jìn)了分鐘級(jí)計(jì)算時(shí)代。
  • 在內(nèi)存消耗方面,Plato 也遠(yuǎn)小于主流的圖計(jì)算框架。具體而言,僅需 10 臺(tái)服務(wù)器左右的中小規(guī)模集群,即可完成原本需要上百臺(tái)服務(wù)器支持的超大規(guī)模圖計(jì)算。
  • 架構(gòu)設(shè)計(jì)方面,Plato 框架的核心是自適應(yīng)圖計(jì)算引擎,它能夠根據(jù)不同類型的圖算法,提供多種計(jì)算模式供開(kāi)發(fā)者靈活選擇,包括自適應(yīng)計(jì)算模式、共享內(nèi)存計(jì)算模式和流水線計(jì)算模式等。另外,還設(shè)計(jì)了接口支持接入新的計(jì)算通信模式。
騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代
Plato 整體架構(gòu)圖
  • 在計(jì)算引擎上,Plato 則為算法設(shè)計(jì)者或具體的業(yè)務(wù)提供了多層次接口:從底層的 API,到圖算法庫(kù),再到為具體業(yè)務(wù)量身打造的「解決方案」——圖工具集。通過(guò)這些應(yīng)用層的接口和工具,Plato 還可以把離線計(jì)算結(jié)果與其他機(jī)器學(xué)習(xí)算法相結(jié)合,共同支撐頂層的不同業(yè)務(wù)。
  • 目前,Plato 主要提供兩大核心能力,包括:騰訊數(shù)據(jù)量級(jí)下的離線圖計(jì)算和騰訊數(shù)據(jù)量級(jí)下的圖表示學(xué)習(xí);同時(shí),Plato 可在通用的 X86 集群中運(yùn)行,包括: Kubernetes、YARN 等資源調(diào)度平臺(tái);在文件系統(tǒng)方面,Plato 提供了多種接口支持主流的文件系統(tǒng),如 HDFS、Ceph 等。

性能對(duì)比

據(jù)官方數(shù)據(jù)展示,Plato 的計(jì)算性能領(lǐng)先于主流的分布式圖計(jì)算框架。

下圖(左)為 Plato 與 Spark GraphX 在 PageRank 和 LPA 這兩個(gè) benchmark 算法的性能對(duì)比,可以看到,Plato 的性能比 Spark GraphX 高出 1-2 個(gè)數(shù)量級(jí)。

騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代

左圖為計(jì)算性能對(duì)比,右圖為內(nèi)存占用對(duì)比
 
Plato 的另一個(gè)優(yōu)勢(shì)則是它的內(nèi)存開(kāi)銷遠(yuǎn)小于主流圖計(jì)算框架。從上圖(右)看到,Plato 的內(nèi)存消耗比 Spark GraphX 減少了 1-2 個(gè)數(shù)量級(jí)。

除此之外,在真實(shí)的業(yè)務(wù)算法下,Plato 的計(jì)算性能也很好。下圖給出了 Plato 在騰訊數(shù)據(jù)量級(jí)下的共同類計(jì)算、Node2Vec、LINE、GraphSage 等典型業(yè)務(wù)算法的性能。

騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代
 Plato 在騰訊數(shù)據(jù)量級(jí)下計(jì)算性能

Plato 主要貢獻(xiàn)

圖作為一種表示和分析大數(shù)據(jù)的有效方法,已成為眾多領(lǐng)域至關(guān)重要的數(shù)據(jù)分析和挖掘工具。而圖數(shù)據(jù)是高維度數(shù)據(jù);圖算法的計(jì)算性能是決定圖挖掘能否成功的關(guān)鍵因素之一。對(duì)于目前大量的超過(guò)十億級(jí)節(jié)點(diǎn)大規(guī)模社交網(wǎng)絡(luò)數(shù)據(jù),計(jì)算性能顯得尤為重要。

Plato 的出現(xiàn),則將算法計(jì)算時(shí)間從天級(jí)縮短到分鐘級(jí),并且打破了動(dòng)輒需要數(shù)百臺(tái)服務(wù)器的資源瓶頸;使得現(xiàn)有計(jì)算框架能夠在有限資源和有限時(shí)間內(nèi)完成對(duì)于一些大規(guī)模社交網(wǎng)絡(luò)基礎(chǔ)統(tǒng)計(jì)特征的計(jì)算。

在這次開(kāi)源中,騰訊 Plato 團(tuán)隊(duì)負(fù)責(zé)人于東海也表示:「Plato 已經(jīng)支持騰訊內(nèi)部包括微信在內(nèi)的眾多核心業(yè)務(wù),尤其是為騰訊超大規(guī)模社交網(wǎng)絡(luò)圖數(shù)據(jù)的各類計(jì)算提供支撐,解決了現(xiàn)有其他計(jì)算框架無(wú)法在有限資源和有限時(shí)間內(nèi)完成計(jì)算的難點(diǎn)。」

截止目前,騰訊已經(jīng)在 GitHub 上已經(jīng)開(kāi)源了 86 個(gè)項(xiàng)目。而 Plato 的算法庫(kù)中的圖特征、節(jié)點(diǎn)中心性指標(biāo)、連通圖和社團(tuán)識(shí)別等多種算法都已經(jīng)開(kāi)源,未來(lái)還將進(jìn)一步開(kāi)源更多的算法。

其中,已經(jīng)開(kāi)源的算法包括:
  • 圖特征
樹(shù)深度/寬度
圖特征打包計(jì)算:節(jié)點(diǎn)數(shù)/邊數(shù)/密度/節(jié)點(diǎn)度分布
N-階度
HyperANF
  • 節(jié)點(diǎn)中心性指標(biāo)
 KCore
 Pagerank
 Closeness
 Betweenness
  • 連通圖 & 社團(tuán)識(shí)別
 Connected-Component
 LPA
 HANP
  • 圖表示學(xué)習(xí)
 Node2Vec-Randomwalk
 Metapath-Randomwalk
  • 聚類/分圈算法
 LDA
 FastUnfolding
  • 其他圖相關(guān)算法
 BFS
 共同類計(jì)算
騰訊開(kāi)源圖計(jì)算框架 Plato:十億級(jí)節(jié)點(diǎn)圖計(jì)算進(jìn)入分鐘級(jí)時(shí)代
Plato 開(kāi)源地址:
https://github.com/tencent/plato 
來(lái)源 | 雷鋒網(wǎng)
作者 | 楊鯉萍
主站蜘蛛池模板: 波多野结衣电影一区二区| 日本特黄特黄刺激大片| 99在线视频精品费观看视| 国产一区二区在线视频| 日韩国产免费一区二区三区| 4480yy苍苍私人| 成人毛片18女人毛片免费视频未| 高清性色生活片a| 久久精品中文闷骚内射| 国产大片91精品免费观看男同| 极品丝袜老师h系列全文| 97视频久久久| 亚洲大尺码专区影院| 国产精品无码专区在线播放| 欧美精选欧美极品| 老妇bbwbbw视频| 亚洲а∨精品天堂在线| 国产成人精品视频一区二区不卡| 欧洲亚洲国产精华液| 黄色毛片在线播放| 中文无码一区二区不卡αv| 国产xx在线观看| 女人把腿给男人桶视频app| 特级aa**毛片免费观看| 18禁成人网站免费观看| 久久精品国产免费观看三人同眠 | 国产成人久久精品一区二区三区| 日韩欧美亚洲精品| 美女隐私免费视频看| av潮喷大喷水系列无码| 亚洲女成人图区| 国产亚洲精品91| 天天摸天天摸色综合舒服网| 正在播放91大神调教偷偷| 国产性夜夜春夜夜爽三级| 一进一出动态图| 亚洲免费观看在线视频| 国产**毛片一级视频| 在线无码VA中文字幕无码 | av片在线观看永久免费| 亚洲av之男人的天堂网站|