降本增效利器!趣头条Spark 最佳实践:ayx爱游戏app体育官方下载
发布日期:2022-12-31 00:23
简介: 趣头条是一家依赖大数据的科技公司,在2018-2019年履历了业务的高速生长,主App和其他创新App的日活增加了10倍以上,相应的大数据系统也从最初的100台机械增加到了千台规模。面临业务和数据的日益增长,如何优化大数据平台,真正实现降本增效,技术人也面临着很是大的挑战,近半年趣头条和阿里云一起互助,通过Spark Remote Shuffle Service取得了较大的希望,在这里大家可以越发详细地相识这套方案。王振华,趣头条大数据总监,趣头条大数据卖力人曹佳清,趣头条大数据离线团队高级研发工程师,曾就职于饿了么大数据INF团队卖力存储层和盘算层组件研发,现在卖力趣头条大数据盘算层组件Spark的建设范振,混名辰繁,阿里云盘算平台EMR高级技术专家,现在主要关注开源大数据技术以及云原生技术。1. 业务场景与现状趣头条是一家依赖大数据的科技公司,在2018-2019年履历了业务的高速生长,主App和其他创新App的日活增加了10倍以上,相应的大数据系统也从最初的100台机械增加到了1000台以上规模。
多个业务线依赖于大数据平台展开业务,大数据系统的高效和稳定成了公司业务生长的基石,在大数据的架构上我们使用了业界成熟的方案,存储构建在HDFS上、盘算资源调理依赖Yarn、表元数据使用Hive治理、用Spark举行盘算,详细如图1所示:图1 趣头条离线大数据平台架构图其中Yarn集群使用了单一大集群的方案,HDFS使用了联邦的方案,同时基于成本因素,HDFS和Yarn服务在ECS上举行了DataNode和NodeManager的混部。在趣头条天天有6W+的Spark任务跑在Yarn集群上,天天新增的Spark任务稳定在100左右,公司的迅速生长要求需求快速实现,积累了许多治理欠债,种种问题体现出来集群稳定性需要提升,其中Shuffle的稳定性越来越成为集群的桎梏,亟需解决。2. 当前大数据平台的挑战与思考近半年大数据平台主要的业务指标是降本增效,一方面业务方希望离线平台天天能够承载更多的作业,另一方面我们自身有降本的需求,如何在降本的前提下支撑更多地业务量对于每个技术人都是很是大地挑战。
熟悉Spark的同学应该很是清楚,在大规模集群场景下,Spark Shuffle在实现上有比力大的缺陷,体现在以下的几个方面:Spark Shuffle Fetch历程存在大量的网络小包,现有的External Shuffle Service设计并没有很是细致的处置惩罚这些RPC请求,大规模场景下会有许多connection reset发生,导致FetchFailed,从而导致stage重算。Spark Shuffle Fetch历程存在大量的随机读,大规模高负载集群条件下,磁盘IO负载高、CPU满载时常发生,极容易发生FetchFailed,从而导致stage重算。重算历程会放大集群的忙碌水平,抢占机械资源,导致恶性循环严重,SLA完不成,需要运维人员手动将作业跑在空闲的Label集群。
盘算和Shuffle历程架构不能拆开,不能把Shuffle限定在指定的集群内,不能使用部门SSD机械。M*N次的shuffle历程:对于10K mapper,5K reducer级此外作业,基本跑不完。
NodeManager和Spark Shuffle Service是同一历程,Shuffle历程太重,经常导致NodeManager重启,从而影响Yarn调理稳定性。以上的这些问题对于Spark研发同学是很是痛苦的,很多多少作业天天运行时长方差会很是大,而且总有一些无法完成的作业,要么业务举行拆分,要么跑到独占的Yarn集群中。
除了现有面临的挑战之外,我们也在努力构建下一代基础架构设施,随着云原生Kubernetes观点越来越火,Spark社区也提供了Spark on Kubernetes版本,相比力于Yarn来说,Kubernetes能够更好的使用云原生的弹性,提供越发富厚的运维、部署、隔离等特性。可是Spark on Kubernetes现在还存在许多问题没有解决,包罗容器内的Shuffle方式、动态资源调理、调理性能有限等等。
我们针对Kubernetes在趣头条的落地,主要有以下几个方面的需求:实时集群、OLAP集群和Spark集群之前都是相互独立的,怎样能够将这些资源形成统一大数据资源池。通过Kubernetes的天生隔离特性,更好的实现离线业务与实时业务混部,到达降本增效目的。
公司的在线业务都运行在Kubernetes集群中,如何使用在线业务和大数据业务的差别特点举行错峰调理,告竣ECS的总资源量最少。希望能够基于Kubernetes来包容在线服务、大数据、AI等基础架构,做到运维体系统一化。因为趣头条的大数据业务现在全都部署在阿里云上,阿里云EMR团队和趣头条的大数据团队举行了深入技术共创,配合研发了Remote Shuffle Service(以下简称RSS),旨在解决Spark on Yarn层面提到的所有问题,并为Spark跑在Kubernetes上提供Shuffle基础组件。
3. Remote Shuffle Service设计与实现3.1 Remote Shuffle Service的配景早在2019年头我们就关注到了社区已经有相应的讨论,如SPARK-25299。该Issue主要希望解决的问题是在云原生情况下,Spark需要将Shuffle数据写出到远。
本文关键词:ayx爱游戏体育网页登录入口,降本,增效,利器,趣,头条,Spark,最佳,实践,ayx,爱
本文来源:ayx爱游戏app体育官方下载-www.hf-hanjie.com
Copyright © 2009-2022 www.hf-hanjie.com. ayx爱游戏app体育官方下载科技 版权所有 网站备案号:ICP备81039570号-9