欢迎访问广东华体汇叉车设备有限公司官网!

广东华体汇叉车设备有限公司

广东华体汇叉车设备有限公司

—— 持续领航 品牌经营 ——

全国服务热线

061-571427526
13845602650
搜索关键词:  产品样品  搬运坦克车

降本增效利器!趣头条Spark RSS最佳实践

来源:华体汇app下载   发布时间:2021-06-07 01:23nbsp;  点击量:

本文摘要:导读:阿里云 EMR 团队和趣头条的大数据团队配合研发了 RSS,解决 Spark on Yarn 层面提到的所有问题,并为 Spark 跑在 Kubernetes 上提供 Shuffle 基础组件。作者 | 王振华、曹佳清、范振业务场景与现状趣头条是一家依赖大数据的科技公司,在 2018~2019 年履历了业务的高速生长,主 App 和其他创新 App 的日活增加了 10 倍以上,相应的大数据系统也从最初的 100 台机械增加到了 1000 台以上规模。

华体汇官网

导读:阿里云 EMR 团队和趣头条的大数据团队配合研发了 RSS,解决 Spark on Yarn 层面提到的所有问题,并为 Spark 跑在 Kubernetes 上提供 Shuffle 基础组件。作者 | 王振华、曹佳清、范振业务场景与现状趣头条是一家依赖大数据的科技公司,在 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 的稳定性越来越成为集群的桎梏,亟需解决。当前大数据平台的挑战与思考近半年大数据平台主要的业务指标是降本增效,一方面业务方希望离线平台天天能够承载更多的作业,另一方面我们自身有降本的需求,如何在降本的前提下支撑更多地业务量对于每个技术人都是很是大地挑战。

熟悉 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 基础组件。Remote Shuffle Service 设计与实现Remote Shuffle Service 的配景早在 2019 年头我们就关注到了社区已经有相应的讨论,如 SPARK-25299。

该 Issue 主要希望解决的问题是在云原生情况下,Spark 需要将 Shuffle 数据写出到远程的服务中。可是我们经由调研后发现 Spark 3.0(之前的 master 分支)只支持了部门的接口,而没有对应的实现。该接口主要希望在现有的 Shuffle 代码框架下,将数据写到远程服务中。

如果基于这种方式实现,好比直接将。


本文关键词:降本,增效,华体汇官网,利器,趣,头条,Spark,RSS,最佳,实践

本文来源:华体汇-www.educationkyl.com

微信二维码 微信二维码
联系我们

电话:061-571427526
手机:13845602650
Q Q:484707751
邮箱:admin@educationkyl.com
联系地址:河北省张家口市灵石县远平大楼738号

Copyright © 2000-2021 www.educationkyl.com. 华体汇科技 版权所有

备案号:ICP备11841138号-2