阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

98.8 秒夺冠,解析腾讯云数智背后的架构与算法优化

  • 2016-11-15
  • 本文字数:3261 字

    阅读完需:约 11 分钟

背景

11 月 10 日,具有计算奥运会之称的 Sort Benchmark 全球排序竞赛公布了 2016 年最终成绩,腾讯云大数据联合团队用时不到 99 秒(98.8 秒)就完成 100TB 的数据排序,打破了阿里云去年创造的 329 秒的记录。在更早前,百度创造的纪录是 716 秒,Hadoop 的记录是 4222 秒。

在这次竞赛中,腾讯云数智分布式计算平台,夺得 Sort Benchmark 大赛 GraySort 和 MinuteSort 的冠军,这也体现了腾讯云数智分布式计算平台在数据处理上的优越性能。在竞赛结果公布之后,InfoQ 也对腾讯云大数据联合团队进行了采访,从技术层面报道腾讯云数智分布式计算平台的实现原理,以及竞赛结果所带来的长远意义。

关于腾讯云大数据联合团队

此次参赛的腾讯云大数据联合团队是由腾讯云存储产品中心、腾讯数据平台部组成,这个团队在大数据技术和应用管理上有丰富的实践经验,尤其是腾讯数据平台部一直在管理的腾讯大数据集群,是世界上最大的大数据集群之一。多年的技术积累,再加上团队不断的苦练内功,都为整个团队在全球计算奥运会上取得瞩目成绩打下了坚实的基础。

解析腾讯云数智分布式系统软件架构

对于腾讯云分布式系统软件架构,可以从海量数据分布式存储、计算任务切片调度、节点通信协调同步、数据计算监控容灾等,以及硬件架构能力,包括服务器硬件选配、网络架构调优、IDC 规划建设等角度来进行剖析。

在硬件和网络方面,分布式系统采取了 IBM 的 Power 和迈络思的 100Gb 网络技术,机器配置选型如下:

网络架构采用了三层架构:

腾讯云大数据服务的实时计算平台能提供单集群上千台规模实时流式计算,在数据存储方面,支持多重数据备份,万亿数据的存储能力。在任务调度方面,支持百万级任务的毫秒级调用。而且支持故障节点自动发现、自动剔除、业务自动迁移、关键节点主从热备,以及故障秒级切换。

本次竞赛中的排序分为 Partition、Shuffle 和 Sort 三个阶段:

  • Partition 阶段,从本地磁盘中读入分片的输入数据,然后对输入数据进行 Range Partition 操作,将数据进行无重叠区间的分片,Range Partition 结束后,输出按照 Range 大小排序的 Range File。
  • Shuffle 阶段,将按照 Range 大小排序的 Range File 文件发送给对应的 Sort 程序。
  • Sort 阶段,Sort 任务等待所需的数据都到齐了,就启动基于基数排序的排序操作,将排序结果写入磁盘。

Partition 和 Sort 阶段是并行执行的,待 Sort 完成后,输出多个排序文件,由于 Shuffle 的时候已经按照 Range 大小进行了排序,最终输出的排序文件在全局是有序的。

软件算法优化

参加这次比赛,腾讯云在软件方面也做了不少优化,重点如下:

1、更高效的调度系统。此次比赛,腾讯云参加了 GraySort 和 MinuteSort 二个大项的比赛,GraySort 比拼的是完成 100TB 的数据排序的耗时,主要评测的是系统对大规模数据的处理能力,MinuteSort 比拼的是 1 分钟内的排序数量,主要评测的是系统的效率。

为了在 1 分钟内完成尽可能多的数据排序,系统任务调度的开销不容忽视,调度效率显得尤为关键,在系统上消耗的时间越少,越利于比赛成绩的提高。得益于平台强大的调度能力,团队在 1 分钟内完成了 55.3TB 数据的排序,是之前最好纪录的 5 倍。腾讯云的调度系统曾做了大量的优化,在腾讯的内部系统上,每天调度达 2 亿次,在海量系统上得到了验证。

2、内存存储的最大化利用。在排序过程中的中间数据,尽量存储在内存中,当内存中数据达到一定阈值,快要占满整个内存空间的时候,才会启动向磁盘中写入数据,最大化利用内存存储。而腾讯云的系统具备调度感知的能力,当系统内存充足的时候,会让该环节的计算任务完全在内存中完成计算,无需落地到磁盘,极大的提升了系统的处理能力。

值得一提的是,腾讯云数智提供的强大数据分析与挖掘探索能力,多维分析引擎可在数秒内完成在亿万级数据、万级维度量级下的分析作业。除了数据分析引擎,数智还囊括了机器学习引擎,内置的算法库均经过腾讯海量数据的训练实操,支持图计算、高性能并行计算、深度学习等。

3、并行操作和 IO 优化。在 Partition 阶段和 Sort 阶段,我们都采取了多任务的并行操作。在这里我们会根据机器和网络的性能来调整机器上的并发数,来提高整个系统的运行效率。为了提升网络的传输效率,优化了整个网络传输系统。在网络的传输中,过小的分片数据会带来额外的控制信息的传输,造成网络带宽实际上并不能完全跑满。对此我们采用大数据块的传输,在发送端对小的数据片进行合并,在接收端,对收到的数据包进行聚合后再传递给上层协议栈,来提高整个系统的数据传送能力,从而榨干这些机器间的网络带宽,通过优化,集群的整体吞吐可以得到极大的提升。

如何应对非结构化数据?

本次竞赛是对数据进行排序,那么在未来,图像、音频等非结构化数据将激增,腾讯云如何更快、更准来进行数据清洗,以应对未来的趋势和挑战?

实际上,目前许多企业都面临着收集到的图像与音频无法高效智能处理的问题。为此,腾讯云的解决方案就是对外开放一系列 AI 产品,如万象优图、人脸识别、语音识别、智能客服等服务。优图系列产品能够快速完成对图片的鉴黄、内容识别、人脸检测;智能语音识别服务可高效地满足语音识别、语音合成、声纹识别等语音处理需求;微金小云客服通过大数据与深度学习训练,可让企业拥有自己专属的 AI 客服。优图的人脸识别准确率已高于人工的识别,微众银行已经将该技术运用到开户流程中,在保证安全性的前提下,极大的提升了开户效率并显著降低成本。企业和开发者可以有效的借助腾讯云开放的腾讯大数据和 AI 能力,来快速分析其存储的非结构化数据,提升企业的核心竞争力。

数智在微信中的应用

微信的数据量之大,众所周知,那么腾讯云具体是如何实现微信每天 160 亿级别的多维分析场景中做到 6 秒返回结果的?

腾讯每天都面临着海量的多维分析计算需求,采用传统的社区组件已经无法保证分析结果的时效性,为此腾讯云大数据团队针对交互式海量数据分析需求而自主研发了秒级分析平台。

腾讯云数智实时检索分析,基于搜索引擎技术,将检索与数据分析有机结合,摒弃传统数据分析系统数据预加工的模式,根据用户输入的个性化数据分析需求实时计算,让系统更加灵活,实现在亿万级数据、万级维度的量级下,用户可以在该平台上进行任意维度组合、任意层级下钻等分析作业,但结果响应只需在数秒以内。

上面所提到的腾讯云数智中的多维分析引擎,采用倒排索引技术结合嵌套列存储技术,解决海量数据秒级分析问题,为大数据分析业务提供一套实时的、多维的、交互式的查询、统计、分析系统。在大数据的统计分析方面提供完整的解决方案,让万级维度、千亿级数据下的秒级统计分析变为现实,为用户提供在短时间内具备秒级响应的实时多维数据分析能力。

夺冠的意义和价值

或许很多读者会问,腾讯云打破 2016 Sort Benchmark 4 项纪录的意义是什么?对业界企业、开发者有什么价值?

对此,腾讯云副总裁、腾讯数据平台部总经理蒋杰作出了解答。他说,此次比赛的结果,是腾讯在多年的海量数据服务经验中,对调度系统不断的进行大量优化的最好验证。腾讯云数智将腾讯多年的大数据处理经验首度开放,能够让社会各界享有与腾讯同级的大数据处理能力。对于企业而言,可以在大幅降低人力成本、快速将大数据平台落地的同时,享有高稳定、高性能、高安全的大数据平台。对于开发者而言,无需将时间精力投入到集群的搭建、改进社区版本稳定性等问题上,从而全力投入进业务层与代码层中。

此次的参赛结果是对腾讯多年海量大数据处理能力的认可,也见证了腾讯云在大数据领域的技术积累。那么此次竞赛结果会对接下来腾讯云的应用和服务产生怎样的影响和推动?

蒋杰说,目前,数智大数据处理套件 TBDS3.0 正式版已经对外发布,数智大数据工坊也在邀测中,可见数智的产品矩阵与能力已经十分完善。同时,腾讯云大数据中的方略产品线,也已经上线了多款产品,包括用户洞察分析、热力图、位置大数据解决方案、舆情监控等等,方略将腾讯数据资产进行有效的整合与安全的利用,让用户使用腾讯云方略即可直接享受大数据资产产生的价值,让企业在信息迸发的时代抢占先机,一同纵横数智、助画方略。

公众号推荐:

2024 年 1 月,InfoQ 研究中心重磅发布《大语言模型综合能力测评报告 2024》,揭示了 10 个大模型在语义理解、文学创作、知识问答等领域的卓越表现。ChatGPT-4、文心一言等领先模型在编程、逻辑推理等方面展现出惊人的进步,预示着大模型将在 2024 年迎来更广泛的应用和创新。关注公众号「AI 前线」,回复「大模型报告」免费获取电子版研究报告。

AI 前线公众号
2016-11-15 02:513437
用户头像

发布了 160 篇内容, 共 70.6 次阅读, 收获喜欢 194 次。

关注

评论

发布
暂无评论
发现更多内容

对话ACE第三期:数据库技术生态应如何构建

OceanBase 数据库

oceanbase

leetcode 547. Number of Provinces 省份数量(中等)

okokabcd

LeetCode 搜索

水果FL Studio最新20.9中文破解版下载

茶色酒

水果FL Studio

从冬奥跳台飞跃向千家万户:联通“臻宽带”的起跳瞬间

脑极体

深入剖析 | HeartBeat方案的标准设计

九叔(高翔龙)

架构 dubbo 源码解析 HeartBeat 心跳设计

2022 核心服务动手训练营

亚马逊云科技 (Amazon Web Services)

Amazon 亚马逊云

云图说丨应用宕机怎么办?MAS帮您实现业务无缝切换

华为云开发者联盟

云计算 MAS 宕机 多云高可用服务

ConcurrentLinkedQueue

急需上岸的小谢

6月月更

MSVC编译动态库

Loken

音视频 5月月更

换个角度带你学C语言的基本数据类型

华为云开发者联盟

开发 C语言 数据类型位数

那些年,我们在Apache SeaTunnel 2.1.0部署中踩过的坑【含源码分析】

Apache SeaTunnel

Apache 大数据 开源 workflow Seatunnel

特别的儿童节,OceanBase 送上一份特别的惊喜

OceanBase 数据库

oceanbase

应用实践|Lifewit 数据平台基于Apache Doris的建设实践

SelectDB

数据库 数据仓库 apache doris SelectDB

Agora Web UIKit:快速构建视频通话或直播

devpoint

React 直播技术 视频通话

将虚幻引擎5与Perforce Helix Core集成使用吧!

龙智—DevSecOps解决方案

perforce 虚幻引擎5 Helix Core

字节跳动数据库的过去、现状与未来

火山引擎开发者社区

数据库 微服务 分布式数据库

科技成就伟大游戏 | 2022 亚马逊云科技游戏开发者大会

亚马逊云科技 (Amazon Web Services)

开发者 亚马逊云

DataPipeline:让数据生产力的历史进程,再前进一步

DataPipeline数见科技

DataOps 数据管理

儿童节,和 AI 一起通关 “超级马里奥兄弟”

华为云开发者联盟

磁盘I/O性能测试工具

穿过生命散发芬芳

6月月更 磁盘测试工具

ObserverPattern-观察者模式

梁歪歪 ♚

设计模式

InfoQ 极客传媒 15 周年庆征文|深入理解 ELK 中 Logstash 的底层原理 + 填坑指南

悟空聊架构

运维 Logstash ELK 6月月更 InfoQ极客传媒15周年庆

对不起,我错了,这代码不好写

捉虫大师

Java Go sentinel 6月月更

TemplateMethodPattern-模板方法模式

梁歪歪 ♚

设计模式

常遇到读多写少,教你用ReadWriteLock实现一个通用的缓存中心

华为云开发者联盟

缓存 高并发 开发 ReadWriteLock

StrategyPattern-策略模式

梁歪歪 ♚

设计模式

安势信息加入Linux基金会OpenChain项目,助力软件供应链安全

安势信息

Linux 开源 DevSecOps SCA 开源软件

八大误区,逐个击破:担忧安全防护与合规性?这可能是您对云最大的误解

龙智—DevSecOps解决方案

Atlassian atlassian云版 Atlassian白皮书

使用Sonar来优化您的基础架构代码

龙智—DevSecOps解决方案

漏洞 SonarQube

字节跳动一站式数据治理解决方案及平台架构

字节跳动数据平台

数据治理 元数据

MixNet解析以及pytorch源码

AI浩

人工智能 6月月更

98.8秒夺冠,解析腾讯云数智背后的架构与算法优化_大数据_Lucien_InfoQ精选文章