智能计算天穹uper如何利用机器学习实现计算引擎自适应腾讯云开发者社区

在大数据生态里,不同计算引擎适合不同的计算场景,Spark适合批计算,Presto适合adhoc计算,Hermes适合日志检索/人物画像,Starrocks适合数据湖分析。根据SQL特点自动适配最佳的计算引擎,透明化引擎的差异,可以降低用户学习使用成本,提升易用性,同时可以提升SQL计算的性能。

智能计算引擎选择是SuperSQL的核心特性之一,目前已经覆盖天穹的所有SQL,达到千万级别。通过SuperSQL的AI决策中心,我们基于RBO + CBO + HBO组合的引擎选择算法,自动为用户SQL挑选合适的计算引擎。比如通过分析处理历史用户SQL流水,以通用、抽象化的HBO策略,增强补充已有的具体化RBO/CBO策略,将符合条件的离线计算升级到执行速度更快的MPP引擎(如Presto)。计算引擎架构升级带来了计算效率的大幅提升和资源消耗的降低,极大改善用户体验。在HBO上线后,智能引擎选择平均提升了7-13倍的大数据SQL的执行效率。

同时HBO的算法也有一定的判断失误率,失败的SQL导致计算/存储资源浪费。我们用规避率代表成功利用HBO实现计算提效的比例。经过迭代优化,目前HBO的MPP引擎failover规避率已经从最开始的30%提升到70%。

规避率越高,意味着计算提效的准确率越高

HBO的资源节省

但在研究过程中,我们发现RBO + CBO + HBO组合的方式仍存在几个主要问题:

1. 基于专家经验的限制:无论是RBO、CBO,还是HBO,本质上都是专家经验的总结。每一条规则都人为地总结、验证、设置,整个过程比较复杂,且缺少方法论的指导,受到主观因素的影响较大。同时因为是人工编写规则,很难覆盖全部的使用场景。比如对于HBO,在平台SQL执行历史数据中,通过SQL签名检索其历史执行成功或失败的记录决定当前任务是否使用Presto。而对于之前并未执行过的SQL查询语句,不能进行任务执行成功或者失败的判断,因为其依赖于过去相同SQL语句的执行历史信息,因此会导致HBO存在规则盲区的情况。

2. 引擎失败的资源浪费:当现网SQL提交到SuperSQL,SuperSQL根据规则判断SQL是否优先使用Presto进行计算,如果Presto失败后,SuperSQL会自动failover其它计算引擎执行(如Spark或Hive MR),确保SQL能够拿到正确的结果。但Presto计算失败已经浪费了有限的Presto计算资源,部分大SQL甚至可能造成Presto集群的临时过载或故障,当前现网日均的Presto SQL failover数约为近万条+。

基于机器学习的引擎选择方案

针对上面提到的问题,通过机器学习来实现计算引擎的自适应选择是一个非常自然的选择。首先,机器学习能够从样本数据自动学习不同规则,只要样本数据比较完备,学习出来的规则能够覆盖各种不同的使用场景,避免基于人为规则的盲区。其次,我们可以通过调整机器学习算法的目标来达到不同的目的,比如,为了减少MPP引擎failover带来的资源浪费的问题,我们在训练模型时可以适当增加失败的样本的权重。最后,机器学习模型的训练、部署、服务整个pipeline已经很成熟,可以快速地验证、灰度、上线。

在这个过程中,SuperSQL团队与平台大脑拉通合作,选择以大数据计算提效作为切入点,确定解决思路和方案,通过AI决策中心与平台大脑通信,实现算法指导和调优。天穹平台大脑致力于探索并落地前沿人工智能技术,用于大数据系统的自感知、自决策、自优化过程,在自动黑盒优化、基于机器学习的智能决策方面目前已经取得了一定成果,目前已经在公司多个业务规模落地自动化spark参数调优等服务。

SQL提交到SuperSQL,经过SQL解析优化后,进入引擎选择的逻辑。目前的框架采用先通过RBO + CBO + HBO组合来做初步的引擎选择,然后再经过机器学习算法的选择。采用这种方式的原因是希望可以从基于专家经验的方案平稳过渡到基于算法模型的方案,最小化机器学习算法不断迭代优化成熟过程中对现网业务的影响。当模型比较成熟时,引擎的选择会全部由算法来决定,人为的规则则逐渐下线。

算法研发迭代由平台大脑-AI增强决策服务提供,算法模型生产部署在太极,SuperSQL通过调用算法预测服务,把SQL文本传给服务,获取算法预测的结果,根据结果将SQL分发到具体的引擎上进行计算。SQL failover处理、结果处理等逻辑保持不变。

引擎选择算法

本节介绍如何训练引擎选择具体算法,分为特征提取,特性选择,模型训练,以及模型预测,其对应算法流程示例图如下,研发基于天穹平台大脑提供的观测平面、特征市场和算法实验室。

对于SQL语句,使用自然语言处理中的n-gram TF-IDF方法,将SQL文本转化为数值特征,供机器学习模型训练。具体做法为,将SQL语句按字符(或单词,字符效果更好)进行分割,相邻的1-5个字符构成一个元组,选取训练数据中出现频率最高的50万个元组,计算全部训练数据中对应元组的词频-逆文档词频(TF-IDF)值,从而将每个SQL语句转化为50万维的特征向量。

由于特征维度大(50万),训练数据多(100万),模型训练慢,因此需要对特征进行降维。使用基于模型的降维方法,先利用逻辑回归(LR)模型在数据上执行训练,之后逻辑回归模型会根据模型系数对特征给出重要性分析,选择最重要的3千维特征,供后续模型执行训练。

从Presto引擎收集到的执行流水数据具有明显的标签不均衡特征,例如在6月的执行历史中,其中有500万条成功执行的SQL,然而执行失败的SQL数量是20万。这里的处理方案为将所有集群的执行失败的SQL语句都加入训练集,提升失败样本数量、补全不同的失败数据模式,在缓解这种非常不均衡问题的同时提升训练数据的质量。

使用梯度提升树算法XGBoost拟合训练样本,样本特征为如上所述的3千维特征,样本标签为SQL语句在Presto引擎上是否执行失败。由于样本类别分布非常不均衡(失衡)以及XGBoost有许多敏感的算法超参数,因此在模型训练的时候需要调节模型的类别权重参数以及算法超参数,从而达到最优的建模效果,其中调优工具OpenBox被用于超参数自动调优。

对于待判断的SQL语句,首先利用特征提取器从文本中提取50万维特征,然后利用特征选择器将特征降维为1万维,最后使用XGBoost模型预测SQL语句Presto是否会执行失败。如果预测执行失败,则使用Spark引擎执行。

引擎选择效果

下图为模型在训练数据、验证数据、测试数据上的效果。pos weight代表给予不同类别的权重,这里数值越大表示越注重SQL失败的类别。这里重点关注成功在Presto执行的SQL是否能预测正确(绿线),在Presto执行失败的SQL是否可以规避(红线)。在pos_weight为2.0-2.5时,降低选择Presto失败的概率为65%左右(红线),而代价有5%左右的SQL未能通过Presto执行。从实验数据上,当pos_weight为2.0-2.5时,我们避免65%左右的SQL failover,减少failover造成的资源浪费。

2、线上效果

规避率=(HBO+ML规避SQL数) / (规避数 + Failover数)

基于AI的引擎选择算法已上线内网,从上线后的数据观察,公共集群的Presto failover规避率从之前的70%左右上升至90%左右,presto failover的数目直接减少了50%,说明算法很好地补充了HBO规则的盲区,进一步降低了failover带来的资源浪费。

失败SQL规避数

资源节省

在HBO的资源节省基础上,机器学习模型带来了约50%的提升,日均节约CPU core约300核,减少不必要的数据输入量约1PB/天。

总结

SuperSQL升级已有的引擎自适应算法到基于n-gram TF-IDF + XGBoost组合的机器学习算法。通过SQL特征化 + 基于机器学习的在线推理,对SQL结果与执行引擎之间的关系并进行建模,智能地为业务SQL选择最佳的计算引擎。并且实现避免人为规则的缺陷,补充HBO算法在新输入SQL上的处理盲点,实现精准的引擎自适应选择。未来SuperSQL仍然会在引擎选择上持续探索:

1、不断迭代优化模型算法(从机器学习/深度学习),逐步将人为规则下线,实现机器学习算法完全替代专家经验,并达到自动更新学习模型;

2、针对腾讯大数据多种计算模式的现状,构建通用的分布式融合计算框架,实现不同引擎基于同一套可扩展的分布式框架。在框架上层实现不同的计算模式,比如流、批、图计算、机器学习。同时把调度问题、容灾问题、资源管理等问题下沉到分布式服务层;

3、持续丰富优化计算引擎的种类,包括不限于Hermes、Starrocks等。

THE END
0.Infra从“支撑”向“引擎”跨越腾讯云AI智能体模型启动提速17倍,大规模服务扩容时间从10分钟缩短至34秒;多模态推理加速4倍,自研推理引擎覆盖生文、生图、生视频等模型;通过内存优化与通讯协议升级等创新,显著降低计算开销,推动推理集群的性能发挥到极致。 智能体要从“实验室”走向“生产级”,工程问题和安全问题将成为核心痛点。全新发布Agent infra解决方案Agent jvzquC41pg}t0|npc0ipo7hp1u~04977/2?.3A4fgvgjn6nphs~gkz:;2;6867xjvor
1.AI新引擎Q: 量子计算与传统计算有何本质区别? A: 量子计算与传统计算的本质区别在于它们的计算单元和计算方式。传统计算机使用二进制的位(bits),每个位要么是0要么是1。而量子计算机使用量子比特,它们可以同时处于0和1的叠加态,这种特性使得量子计算机在处理复杂问题时具有巨大优势。具体来说,一个N位的量子比特可以同时表示jvzquC41yy}/lrz{cpmpppxjg0ipo8f1h|iu:pfcc5
2.人工智能融入“云”端IT人工智能是火箭 云计算是引擎 业内,大家将人工智能、大数据以及云计算称为“铁三角”关系。吴维刚表示,“人工智能与云计算,两者不是同一事物,但是相互发展。云计算提供移动计算模式和计算资源,人工智能的发展正需要这种计算资源。” 假如将人工智能看作是一台火箭,那么大数据是燃料,云计算是引擎。据了解,经历了多年的jvzq<84kv0vfqyqg0eun0ls1p3532:=125871l622;33;A=9;5?/j}rn
3.数字孪生系统的一般架构数字孪生引擎一方面是实现物理系统和虚拟系统实时连接同步的驱动引擎,另一方面是数字孪生系统智能算法和智能计算引擎核心,为用户提供高级智能化服务。在数字孪生引擎的支持下,数字孪生系统才真正形成,实现虚实交互驱动以及提供各类数字孪生智能化服务,所以数字孪生引擎即是数字孪生系统的“心脏和大脑”。 jvzquC41yy}/eunk0eun0ls1njxi1q~zz1814<591v814<5925e4;><5;24ivvq
4.杨成虎:存储&计算是过去,记忆&推理才是未来在数据管理层 ArcNeural,是数据智能体。打破传统数据库计算加存储的本质,引入记忆加逻辑体系。其中,记忆部分为多模态智能引擎,支持图模型和向量引擎,分别负责显式和隐式关系管理。逻辑部分则利用图算法或 LLM 资源来进行逻辑推理。 在ArcNeural 架构下,天然的具备了三大优势:jvzquC41jwh/djfk0ci/ew4xkg}05;726
5.“智算聚芯力津彩新未来”天津市人工智能计算中心200P上线仪式暨华为公司安信军团COO曹泽军先生在致辞中表示,天津作为第一批国家新一代人工智能创新发展试验区,在天津市、河北区领导的大力支持下建成了天津市人工智能计算中心,一期算力供不应求实现上线即满载。“算力新高度、产业新引擎、科研新范式、人才新土壤”,已经成为天津市人工智能计算中心助力天津经济高质量发展的四个“新”榜jvzquC41yy}/vlz0gf{/ew4kphu039:6156:;7mvo
6.支撑智能经济体系的主体博弈均衡计算引擎和大型宏观经济政策模型国家自然科学基金委员会管理科学部发布2023年度国家自然科学基金委员会管理科学部专项项目指南—基于通用大模型的工商管理前沿科学问题研究、中国经济发展规律的基础理论与实证、基于数据与行为的金融系统建模分析、2023年度国家自然科学基金指南引导类原创探索计划项目—“支撑智能经济体系的主体博弈均衡计算引擎和大型宏观经济政jvzquC41yy}/p€z0gf{/ew4kphu03;5915967<3jvo
7.图计算引擎图数据库星环科技为您提供图计算引擎 图数据库相关内容,帮助您快速了解图计算引擎 图数据库。如果想了解更多图计算引擎 图数据库资讯,请访问星环科技官网(www.transwarp.cn)查看更多丰富图计算引擎 图数据库内容。jvzquC41yy}/v{fpuygsr7hp1mkzyxwf/fkucrq177>6/;>
8.腾讯智慧交通升级AI+双轮驱动架构加速产业智能化转型时空计算引擎在交通领域应用 今年,腾讯深度参与深圳市宝安区智慧交通提升工程,构建宝安智慧交通数字孪生底座,支撑智慧公交线网系统建设,提升公共交通服务能力,为公众带来更便捷的出行体验。日本工程院院士、东京大学特任教授胡昂谈到,从交通流模拟到智能导航,从交通管理到城市规划,数字孪生技术使我们能够更深入地理解交通系统jvzq<84f0{uvvq3ep1~x5?5142842B4v42842B5:a3:89?66;0nuo
9.数字地球生态讲堂第22期|《星图地球智脑引擎GEOVISEarthBrainGEOVIS Earth Brain 星图地球智脑引擎是基于自主遥感智能大模型,深度融合地球大数据、分析解译算法与超级计算机构建的可计算数字地球核心引擎,通过密集型“智能计算”为用户提供地球数据智能处理、地球信息智能感知、地球场景智能重建能力,并向互联网用户开放各类计算能力接口,便以快速构建云上应用,为地球科学研究、遥感行业应jvzquC41v071lzpc0eun0ls1rkj`4B9;42;887xjvor
10.阿里云基于空间数据引擎及多源数据计算融合,构建数据底座 空间数据引擎为空间治理提供空间数据多源存储与高效计算能力,多源数据计算融合引擎实现以空间单元为核心的数据计算融合,是空间治理工作的核心能力 基于智能计算引擎,实现算法、场景的高效开发 集成空间计算、智能模型及流程搭建、计算调度等一体化便捷开发框架,智能化开发赋能jvzq<84fcvgqcjx0cnozww3eqo5jpmzuvt0pjywtcr.tnxqwtif
11.2024中关村论坛年会十大重大科技成果重磅发布清华大学戴琼海团队突破传统芯片架构中的物理瓶颈,研制出国际首个全模拟光电智能计算芯片。该芯片具有高速度、低功耗的特点,在智能视觉目标识别任务方面的算力是目前高性能商用芯片的3000余倍,能效提升400万倍,该成果开创了全新计算技术时代,有望成为人工智能发展的有力引擎。 jvzquC41pg}t0lsuvqil0lto1pkxu5gymz332;926/;34<<330nuo
12.高性能计算解决方案解决方案产品与解决方案超聚变FusionOne HPC解决方案,为客户提供一体化高性能计算平台,通过软硬件的深度融合和自研OneMind智慧引擎,为客户提供运行高效、安全可靠、运维简单和绿色节能的智慧HPC解决方案,满足教育科研、制造仿真等行业高性能计算业务场景。jvzquC41yy}/zozukqt/exr1ep5qtxiwev5irl2uqn{ukxs
13.计算机行业算力租赁:大模型发展的关键引擎AI算力需求空间测算训计算机行业算力租赁:大模型发展的关键引擎 AI算力需求空间测算 训练规模突破临界值,大模型“智慧涌现” 大模型训练规模与参数量、数据量及训练轮数等紧密相关。当模型规模突破阙值,即出现“智慧涌现”。 迈入AI智能时代,计算芯片依赖已从CPU转向GPU AI时代离不开机器学习,而神经网络训练及推理需要进行大量的矩阵运算和jvzquC41zwkrk~3eqo526?98;;83;879:88:5B5
14.超万卡GPU集群关键技术深度分析2024计算引擎卸载加速 1/0 设备的数据路径与控制路径,面向节点提供标准化的virtio-net(Virtual1/0 Network)、virtio-blk(Virtiual 1/0 block)后端接口,屏蔽厂商专用驱动。 存储引擎在 DPU 上实现存储后端接口,可基于传统 TCP/IP 网络协议栈或RDMA(Remote Direct Memory Access)网络功能连接块存储集群、对象存储集群、jvzquC41yy}/5?5fqe4dp8ftvkimg88288>55h6345>:6<580jznn
15.浙江大学计算机系统结构实验室蚂蚁智能引擎技术事业部-共享智能 高级技术专家 在研项目 Projects 面向预训练语言模型下游迁移任务 预训练语言模型(Pretrained Language Models,PLMs)已经成为了自然语言处理(NLP)的主流方法。通过在大 基于TPM的安全可信技术研究 随着云计算、大数据、物联网的发展,越来越多的信息系统部署到云上,尤其是关系国jvzq<84cte4{l~3gfw4dp8;473?0nrxv0jzn
16.基于GitOps和CI/CD开发低成本可观测AI智能体实践开发者社区智能计算引擎:兼顾深度分析与极致实时 有了强大的存储系统,下一步是构建灵活高效的计算引擎。我们面临两类典型需求:涉及海量数据、复杂计算,要求结果绝对精确的深度分析型任务,以及如 Dashboard 展示,强调低延迟、高响应速度的实时交互型任务。为此,我们在计算层做了多项关键升级: jvzquC41fg|fnxugt0gmk‚zp0eun1jwvkerf1:;:7;7: