重磅:腾讯正式开源图计算框架Plato,十亿级节点图计算进入分钟级时代
整理 | 唐小引
来源 | 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 为算法设计者或具体的业务提供多层次接口:从底层的 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)采访时谈到了至关重要的两点:「第一点,腾讯对于开源的态度非常成熟,开源不是像其他公司开源出去大家赢得掌声就结束了。开源代码开放只是第一步,第二步是建立好的社区,第三步是通过这个好的社区进行技术挖掘。给生态上的各个企业带来一些回报,这是很长期的过程,不是一次代码开放就解决的。第二点,腾讯是做社交起家的,很擅长于做人与人之间的连接,开源能够做成功和腾讯包容和沟通是离不开的,这就是为什么我们比较重视这一点。」
Plato 开源地址:
https://github.com/tencent/plato
(*本文为AI科技大本营转载文章,转载请联系原作者)
◆
精彩推荐
◆
2019 中国大数据技术大会(BDTC)再度来袭!豪华主席阵容及百位技术专家齐聚,15 场精选专题技术和行业论坛,超强干货+技术剖析+行业实践立体解读,深入解析热门技术在行业中的实践落地。6.6 折票限时特惠(立减1400元),学生票仅 599 元!
推荐阅读
重磅:腾讯正式开源图计算框架Plato,十亿级节点图计算进入分钟级时代相关推荐
- 重磅!腾讯正式开源图计算框架 Plato,十亿级节点图计算进入分钟级时代
整理 | 唐小引 封图 | 付费下载自东方 IC 出品 | CSDN(ID:CSDNnews) 腾讯开源进化 8 年,进入爆发期! 继刚刚连续开源 TubeMQ.Tencent Kona JDK.TB ...
- 腾讯正式开源图计算框架Plato,十亿级节点图计算进入分钟级时代
腾讯开源再次迎来重磅项目,14日,腾讯正式宣布开源高性能图计算框架Plato,这是在短短一周之内,开源的第五个重大项目. 相对于目前全球范围内其它的图计算框架,Plato可满足十亿级节点的超大规模图计 ...
- 腾讯开源图计算框架 Plato:十亿级节点图计算进入分钟级时代
日,腾讯开源再次迎来重磅项目.14 日,腾讯正式宣布开源高性能图计算框架 Plato,这是在近一周之内,开源的第五个重大项目.前面依次开源了 TubeMQ.Tencent Kona JDK.TBase ...
- 重磅!腾讯助推十亿级节点图计算进入分钟级时代;沈向洋离开微软;阿里:拥有超6000项已授权专利,涉及云、AI等领域……...
戳蓝字"CSDN云计算"关注我们哦! 嗨,大家好,重磅君带来的[云重磅]特别栏目,如期而至,每周五第一时间为大家带来重磅新闻.把握技术风向标,了解行业应用与实践,就交给我重磅君吧 ...
- 腾讯高性能图计算框架Plato及其算法应用
作者:hunteryu,腾讯 WXG 后台开发工程师 Plato 简介 腾讯高性能图计算框架 Plato 图作为一种表示和分析大数据的有效方法,已成为社交网络.推荐系统.网络安全.文本检索和生物医疗等 ...
- Facebook开源了超大规模图嵌入算法,上亿个节点也能快速完成
https://www.toutiao.com/a6675562914365047300/ 图,是很有用的数据结构,用节点 (Node) 和边 (Edge) 织成一张网.比如,知识图谱就是这样的网. ...
- 围棋 android 开源,腾讯正式开源围棋AI技术PhoenixGo
PingWest 品玩 5 月 11 日消息,微信团队研发的 PhoenixGo 正式开源,这也是国内第一个开源的围棋 AI 项目.PhoenixGo 是腾讯微信翻译团队开发的人工智能围棋程序,旨在学 ...
- 用Java计算圆周率的十亿位_新世界纪录:谷歌将圆周率计算到 31 万亿位
为了挑战更精确的圆周率,谷歌工程师 Emma Iwao 在25台谷歌云的虚拟机上,执行专为圆周率设计的算法,计算出31万亿数字的圆周率. 3.1415926,相信不少人都背诵过这串数字,并将它代入算式 ...
- 重磅!腾讯正式开源 Spring Cloud Tencent,功能真心强大!
你好,我是 Guide.在 手写一个简化版的 Spring Cloud!这篇文章中,我推荐了 Spring Cloud Tencent 这个项目,这篇文章就简单带着大家来看看腾讯开源的这款一站式微服务 ...
最新文章
- 北大博士网恋被骗7400RMB,聊天记录惨遭曝光!
- ef AddDays报错
- mysql-初识MySQL
- 诗与远方:无题(九十)
- 解决SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问...
- 用nltk模仿莎士比亚写十四行诗
- python找到最大最小值、最大最小值的位置、删除最大值最小值
- 软件概要设计文档编写
- PropertyUtils的使用
- pgAdmin连接postgresql
- repaire mysql_sql错误:……is marked as crashed and should be repaire
- 服务器系统事件id1001,win10系统玩游戏出现蓝屏事件ID1001的解决方法
- iphone java模拟器_【Mac + Appium + Java1.8学习(三)】之IOS自动化环境安装配置以及简单测试用例编写(模拟器、真机)...
- oracle rac 部署方案,RAC基础设施部署方案
- Pytorch——momentum动量
- android 专业密码键盘,Android仿支付宝、京东的密码键盘和输入框
- Unity插件精选:炫酷粒子特效(V客学院知识分享)
- STM32--Code、RO-data、RW-data和ZI-data
- TestNG入门教程-6-enabled和priority属性
- matlab地球月球卫星关系,Matlab 卫星绕地球旋转演示动画