货拉拉一站式云原生AI平台建设实践数据工程模型训练在线服务是机器学习技术实现的三驾马车,这个流程中处理的数据量大,计

从系统层面来看,大数据智能平台组在云原生资源管理平台上构建了Flinkonk8s的特征平台、notebookonK8S模型训练、数据查询及可视化平台、基于K8S的在线推理平台。自建云原生K8S系统还支撑着智能定价、ABTest等系统运行计算任务,利用云原生特性赋能业务系统同时充分利用了集群资源。Docker镜像解决了大数据AI组建对系统环境的依赖,K8S统一对底层资源管理,方便的构建多租户实例的Notebook、自动扩缩容能够为模型在推理提供自动化伸缩的能力,支持离线批任务、支持定时调度以及在线服务,多种多样的任务类型使用了K8SDeployment、Cronjob、job、DaemonSets任务类型。

上图是货拉拉云原生AI系统的整体框架,从数据接入、特征工程、数据分析、数据可视化、notebook在线开发、模型训练、以及模型在线部署,围绕着AI整条链路孵化了专注于于数据ETL处理的特征平台、支持多种计算引擎的notebook在线开发及训练平台、支持模型注册管理及发布于一体的模型在线推理平台,其中的特征平台底层的计算引擎是基于FlinkonK8S去跑特征任务,大数据存储计算都可以添加到镜像中可避免宿主机中安装大量依赖包。

特征平台主要是给数据科学家、数据工程师、机器学习工程师去使用,能够解决数据存储分散、特征重复、提取复杂、链路过长、使用困难等问题。主要功能是把数据从HBase、Hive、关系型数据库等各类大数据ODS(OperationalDatastore)层进行快速的数据ETL,将数据抽取到ES、Redis、HBase、Hive,元数据在特征平台进行管理,并统一了数据出口,用来做算法模型的数据测试、训练、推理及其它数据应用。

目前特征平台核心是采用Flink去实现数据的ETL,底层的是基于Kubernetes集群去调度FlinkETL作业。Flink任务逻辑主要借助pyflink去实现,Pyflink里面包含任务的计算逻辑,把任务从source经过数据处理sink到对应的存储,自定义实现了redisconnector、优化ElasticSearchconnector。依据K8S提供的Cronjob对象创建了定时特征任务,可以定时的去做周期性的FLink任务,上层开放API提供外部驱动的特征任务,集群部署EFK在平台层进行日志的查看。

Notebook是大数据智能平台组基于Apachezeppelin进行定制开发,为数据分析师、AI算法开发者量身打造的交互式开发工具,支持多种计算引擎如:Spark、Python、JDBC、Markdown、Shellterminal、Beeline、Hivesql、Tensorflow供用户选择,用户可以使用Notebook完成数据准备、数据预处理、数据分析可视化,算法调试与模型训练。社区的Zeppelin主要是单机多进程方式运行,K8S部署不完善,不满足可扩展性、隔离性。同时机器学习深度学习对底层环境的依赖,部署到Kubernetes上以镜像容器的方式启动,也就是水到渠成的事情,可以解决Zeppelin的扩展性、安全性、隔离性问题。部署到K8S需要解决如下问题:对接K8S管理Zeppelin服务的生命周期,包括Zeppelin服务的启动、Zeppelin停止、状态更新、资源回收。每个用户创建独立ZeppelinServer解决多租房问题,并暴露出统一的服务访问入口。解决了ZeppelinServer停止后,用户创建的Note数据能够持久化不随着服务的停止而删除。为了满足用户对周期性外部驱动分析训练的需求,需要设计一层计算驱动任务给notebook插上定时调度和外部驱动的翅膀。

如下所示,notebook实现的架构图

架构主要分为三部分:

Zeppelin支持许多大数据计算引擎,需要解决依赖包安装、环境变量配置、解释器配置等工作,作为notebook平台这些功能在ZeppelinServer启动后就可以直接使用,不需要用户在配置这类繁琐的工作,我们在设计开发的时候,打通底层spark访问存储HDFS、新建了HiveSQL解释器,镜像中内置大数据客户端、配置DNS域名解析、解决了权限认证、包依赖等问题,用户最终可以直接访问生产Hive、HDFS。

k8s集群CPU、GPU、内存是有限制的,纳管其它部门的机器资源想单独隔离使用,如果没有调度和隔离策略的话,当申请的资源过多,影响到其他任务的调度,同时也会跑到其它私有资源,更进一步的如果k8s分配出去的资源无法回收,总有一天会有资源用尽导致其他任务无法调度的情况。这里我们对每个namespace增加了ResourceQuota限制了每个用户最大的资源量,资源隔离统一对K8S集群的计算节点打上不同的标记,规定了一些节点是notebook公用的节点,一些节点是其它人独有的资源,上层在创建任务的时候可以指定资源组,默认创建的Zeppelinnotebook会调度到公用资源组节点上去,如果有些notebook比较重要就会指定到另外的资源组中,针对资源组增加了审批。

异构集群中如何对机器进行管理是一个比较复杂的问题,存在不同的云厂商以及自有机器混用的情况下,解决的方案就是分为不同的的集群,通过多集群进行管理,还有就是不同地点位置甚至网络环境混用,通过一层调度层进行管理,这里主要的架构如下:

K8S集群主要构建在华为云,在GPU场景下会单独抽离一层GPU调度层,不同地区或者不同规格的GPU划分到不同的资源组,数据库中对这些GPU机器进行类型区分。比如针对GPU按量付费场景,在启动GPU任务时候,会选择不同的资源组,从资源组中选定特定的GPU节点,会为GPU和notebook建立绑定关系,通过调用运维提供的GPU实例开机接口启动GPU节点,在任务空闲回收或者手动停止实例的时候调用运维停机接口,对GPU机器进行关机处理。

没有数据持久化,容器中用户创建zeppelinnotebook重启后notebook文件数据就会消失,不同计算任务运行在不同的的K8Spod之间如何共享文件?

AI整个流程中,模型在线推理是AI应用的最后一环,模型比较小的情况下可以直接嵌入到后端业务代码中,作为一个常见的接口对外提供服务,但是随着模型越来越大、模型更新越来越频繁,有必要对模型服务进行独立拆分,独立的对模型进行更新和发布,模型训练框架众多、模型格式多样以及在线服务对服务稳定性要求高、对服务延迟比较敏感,但总的来说大部分模型的模型管理、模型部署、服务的更新具有通用性,具体的不同在于可以借鉴底层镜像进行区别的处理。因此有一个通用的模型部署管理平台能够避免业务在应用模型推理时所带来的重复性建设,大大加快模型服务的落地。为公司AI应用能够大量落地,大数据智能平台组开发了统一的模型在线服务平台。一线互联网企业主要是基于云原生、服务网格去打造统一的模型在线推理平台,因此智能平台组也同样是基于云原生K8S去实现基础设施到服务监控告警链路的整个流程的建设。

模型管理主要是针对外部训练模型提供模型上传、模型注册、模型版本管理等对模型进行增删改的管理功能,针对线下大模型模型注册线下提供一个GO开发的二进制工具,让用户可以按照工具提示上传模型到工具中封装的OSS统一目录中,后续用户可以复制工具生成的模型路径注册模型到模型管理平台,平台对模型格式进行校验,避免无效的模型注册。

模型服务主要是把静态的模型部署成在线服务,用户在模型服务平台中可以选择模型仓库对应的模型版本、设定模型运行的实例个数,选择是否开启HPA自动扩缩容。模型部署具体实现诗通过构建K8Sdeployment对象模版,其中的Pod包含三个容器解耦了三块功能,这三个容器分别是初始化容器去实现oss模型文件挂载、接入服务用来埋点指标收集java网络代理、TfServing推理框架的封装,实现模型的拷贝、服务监控指标的收集、推理加载在线服务。通过平台部署的每个模型服务,在K8S中会创建一个类型为LB的Service,服务部署平台会获取LB的地址拼接成服务url暴露给服务使用方。对于部署的服务,通过个性化网络代理埋点服务状态、服务请求qps、服务耗时的指标信息,共同汇聚到公司统一的监控系统,监控系统可以通过服务ID等信息查询各个模型服务的运行状况。

以上简单的介绍了K8S在货拉拉大数据领域的应用与实践,对于一个AI平台来说云原生容器化应该是业界标配,尤其是在面对机器学习、深度学习、分布式训练、GPU算力管理调配这种复杂的场景。大数据智能平台项目组前期通过自建华为云环境K8S集群,到针对线上服务的阿里云场景,采用阿里云ACKK8S集群,双集群跨云使用。

云原生AI机器学习系统的设计到实现涉及大数据、云原生、AI三个交叉领域的知识和技能体系,构建一个一站式的完善的机器学习平台需要算法、工程、基础架构的合力,目前货拉拉大数据云原生机器学习平台只是覆盖AI的机器学习的链路,一些基础能力还不支持,比如说分布式机器学习、GPU分布式训练、GPU分布式推理,相比于投入资源构建系统,赋能业务才是最重要的,打造强大的系统,最终赋能业务可以说任重而道远。

笔者介绍:张浩|资深大数据工程师,曾任职腾讯TEG数据平台部,从事大数据AI平台开发,现就职于货拉拉智能平台组从事AI平台开发

THE END
1.33IQ在线思维训练平台33IQ在线思维训练平台,拥有海量中文智力题库,你可以在这里发布、回答、收藏各类有趣的智力题目,和其他小伙伴共同锻炼提高思维能力以及学习新的知识。 33IQ让你越玩越聪明!https://www.33iq.com/
2.深度学习平台DeepLearningCaffe深度学习平台 Deep Learning on QingCloud 基于强劲的 GPU 计算资源,搭载多个主流深度学习框架,可极速搭建深度学习开发环境,全面提速 AI 应用开发。https://www.qingcloud.com/products/deeplearning/
3.在线学习服务平台,学效在线让教育更简单学效在线专注为职教培训机构提供考研课程、央国企就业课程、公务员考试课程、事业编考试课程、专技人员继续教育课程、一级建造师二级建造师安全工程师课程、健康管理师、药师、建工八大员、特种工等高品质视频课程、配套习题和学习资料等,帮助合作伙伴引入新项目、开展在线http://www.xuexiao.com.cn/
4.大脑训练深受医生信赖每周训练计划 周一 周二 周三 周四 周五 周六 周日 CogniFit 建议您每周训练 3 次,每次 20 分钟 监控您的每一个改变 记录您的大脑发育过程,并识别认知功能潜在的问题 现在开始 结果报告 参见示例 查看全部 世界各地的媒体都在谈论我们的心理训练计划和评估。 https://www.cognifit.com/cn
5.算法在线训练平台训练算法华为云帮助中心为你分享云计算行业信息,包含产品介绍、用户指南、开发指南、最佳实践和常见问题等文档,方便快速查找定位问题与能力成长,并提供相关资料和解决方案。本页面关键词:算法在线训练平台。https://support.huaweicloud.com/topic/1082125-1-S
6.安全在线练习平台北京特种作业特种设备作业模拟考试安全在线练习平台拥有完整的特种作业模拟考试题库和特种设备人员作业模拟考试题库,提供在线报名和在线练习服务,通过强化训练和精准纠错,助您顺利通关。http://www.youxiangda.net/
7.离线强化学习在线强化学习分类离线训练平台对于学习无人驾驶的人来说,apollo是一个比较完整且系统的无人驾驶平台,比较适合入门。学习的第一步是安装并使用该平台,安装过程中网上有很多在线教程,都总结的比较好,但在线安装apollo的平台过程中,其镜像下载有十几个G,而且下载速度较慢,如果网络不稳定,很容易下载失败,导致安装过程可能要很就,为此查找多方资料,将https://blog.51cto.com/u_12195/10796191
8.在线听力训练平台ToneGym上线SoundGym推出了ToneGym,一款全新的在线听力训练平台,使用了深度游戏化的训练方法,使音乐家能够愉快地训练、学习和提高音乐技能。 SoundGym致力于帮助音乐家、制作人和音频工程师能够更好地学习、培训和追求卓越。通过精心设计的训练方法、个性化的培训、深度游戏化和社交互动,SoundGym创造了音乐家专用的生态系统。首个用于音https://m.midifan.com/news_body.php?id=37343
9.首页国内最活跃的CTF在线训练平台,网络安全爱好者首选。提供丰富的CTF、AWD、渗透加固题目,助力信息安全人才实战演练和技能提升。https://ctf.bugku.com/
10.TIONE训练平台使用平台内置镜像发布在线服务开发指引平台预置了适配主流深度学习和机器学习框架(TensorFlow、PyTorch、PySpark等)的推理镜像,用户可以直接使用平台预置推理镜像部署模型,节省在线服务部署的开发成本。 推理镜像列表 操作指引 1. 准备开发环境 a. anaconda 安装与 python 环境准备 因为TI 平台推理框架仅支持在Linux 内核系统,请用户在 Linux 内核系统下进行后续https://cloud.tencent.com/document/product/851/74140
11.免费开放!大连海事大学开发航海教育在线实操训练平台尹勇介绍说,实操训练课是为了增强学生的专业技能、提高动手能力而设置的实践技能操作课,在航海类学生教学中占有重要地位。为响应国家“停课不停教、停课不停学”的号召,2月10号复工后,实验室教师和海大智龙公司的开发人员迅速确定了航海教育在线实操训练平台的系统框架和开发方案。经协力攻关,用30天时间就快速整合了实https://www.eworldship.com/html/2020/ship_inside_and_outside_0421/158889.html
12.Onelap——为室内骑行训练或健身用户打造的多人即时在线虚拟骑行Onelap是一款以功率为基准的免费在线骑行训练平台,允许各品牌及ANT+以智能骑行台,功率计,速度计形式接入,游戏将功率数据根据场景中的坡度风阻等条件转换为游戏中的速度,为不同品牌设备提供了相对公平的骑行环境,内设绚丽的3D骑行场景和丰富的功率训练课程,可根据需要自建训练计划并进行数据分析,Onelap是您室内功率训练的https://www.douban.com/note/611062272/
13.本次申报通过学校"大学生创新训练平台"进行cashttp://my.nau.edu.cn/
14.FiF智慧教学平台聚合教育生态应用,打造智慧教学平台 讯飞AI课堂 围绕课前、课中、课后教学闭环,基于 动态数据分析,打造全新的智慧教学环境 FiF口语训练系统 语音技术,科学评测,即时反馈 训练题库,内容丰富,题型多样 > FiF在线课程 多个平台,个性课程;学习进度,一目了然 https://www.fifedu.com/
15.快打字快打字是国内专业的打字课程和打字练习平台,面向学生、白领以及计算机工作者,提供在线打字课程、在线打字练习和在线打字速度测试等服务。快打字的课程覆盖盲打指法、全拼和双拼的中文打字以及英文打字,适用于各年龄段学生和职场人士,帮助您提高打字速度,提升工作效率。https://www.kuaidazi.cn/
16.“网安伴在线实训平台”上线,颁发专业证书,以训促教的网络安全2022年7月18日,国内首款使用高仿真NFV攻防设备、数字建模等先进技术,支持全自动实验结果判定、超大规模模拟场景的在线网络安全实战训练系统——“网安伴在线实训平台”重磅上线并正式开始线上运营。该平台由丈八网安与国家网络空间安全人才培养基地运营方网安世纪联手打造。 https://www.nisp.org.cn/NewsDetail/3370454.html
17.北京市残疾人服务示范中心服务管理平台正式上线可在线预约康复训练央视网消息:日前,北京市残疾人服务示范中心服务管理平台正式上线,残疾人康复训练、就业实训等5大服务项目可在线上完成预约申请。 北京市符合条件的残疾人可通过北京市残联官方门户网站“汇爱服务”频道进入管理平台,或在“北京残联”小程序上点击“汇爱服务”板块查询和申请所需服务。 其中,“短期托养”将根据入住残疾https://news.cctv.com/2022/07/17/ARTIActVeN3WuAOmykCePc8c220717.shtml
18.在线网络专业·高效的互联网定制服务 可靠的技术平台支撑商业创新 客户化开发服务平台,助力客开伙伴承接生态项目 提供客户化开发业务及软件定制服务 免费评估开发需求 获取方案及报价 免费评估 轻松电话咨询,专业顾问随时在线:0536 - 3666 - 168 大型互联网门户项目 http://www.mylinqu.com/
19.学友在线学习平台—学习训练考试值得信赖[官网]学友在线网校提供金融、职业、建筑、财会等4大类30多种考试的在线培训、考试资讯、免费题库等考试服务,是拥有多年品牌的一站式学习网站。http://www.xueyouzaixian.com/
20.AppStore上的“编程猫在线编程猫APP提供图形化、Python等丰富的编程创作资源,展示精选作品,并推出一系列与编程相关的视频内容。 【零基础可学习】 独立自研图形化编程语言,趣味动画教学,让学编程像搭积木一样有趣简单。 【培养思维能力】 帮助训练逻辑思维、计算思维和创造性思维,拥抱创造力。 【辅导员贴心服务】 专业编程团队辅导,个性化全程https://apps.apple.com/cn/app/id1571864018
21.个人总结a17295793661. 编程面试题在线训练平台 lintcode. 2 还有面向开发者的云端开发平台 coding 3 还知道了博客园的存在和功能。 统计一下,在软件工程实践中,完成了多少行代码。 大约估计应该是2000左右。 学习和掌握的新方法。 知道了结对编程,可以在团队作业时运用结对编程节省时间,而且两个人交流不会让人觉得写代码时很枯燥、https://www.cnblogs.com/wangyue1/p/7055858.html
22.VegaAI创作平台Vega AI创作平台,ai在线训练,ai图生图,ai绘画,AI创作,AI绘画,画板工具 #Ai工具箱#Ai绘画生成#AI作画#ai绘画 访问Vega AI创作平台 抖音即梦AI作画神器 Vega AI创作平台简介 Vegaai是一款强大的在线创作工具,一款能够文字生成图片、根据图片+文字进行生成图片、条件生成图片 、根据多张图片训练出自己的风格,在风格https://www.yjpoo.com/site/813.html
23.学堂在线学堂在线是清华大学于2013年10月发起建立的慕课平台,是教育部在线教育研究中心的研究交流和成果应用平台,是国家2016年首批双创示范基地项目,是中国高等教育学会产教融合研究分会副秘书长单位,也是联合国教科文组织(UNESCO)国际工程教育中心(ICEE)的在线教育平台。目https://www.xuetangx.com/page/xly
24.maixhub在线训练平台做最懂边缘设备的模型在线训练、分享平台 TinyML 软硬一体完整生态,简单快速可靠赋能 AIOT 30000+社区成员 100+模型数量 10+支持硬件 在线训练 无需AI 基础和高算力训练设备,快速上手 采集数据 在线标注 云端训练 一键部署 模型库 直接下载部署使用,社区分享,持续丰富 https://maixhub.com/
25.BUUCTF在线评测BUUCTF 是一个 CTF 竞赛和训练平台,为各位 CTF 选手提供真实赛题在线复现等服务。https://buuoj.cn/