yarn aux shuffle

2024-03-11  本文已影响0人  后知不觉1

aux shuffle

aux shuffle简称ess,作用是将map 的task任务执行的逻辑交给 由yarn nodemanger单独启动的服务进行shuffle,这样能提高工作效率。因为map在发送数据后就不再占用yarn 的资源,reduce等待es sshuffle结束执行,提高任务执行效率;

yanr aux shuffle的作用是在启动nodemanager 进程时,将配置的额外服务启动。该服务需要重写yarn 的org.apache.hadoop.yarn.server.api.AuxiliaryService类,这个类提供自定义shuffle的能力。

优点:

spark-shuffle开启

1. 添加包

将spark-network-shuffle_2.11-2.2.0.jar批量添加到nodemanager节点上/opt/hadoop/share/hadoop/yarn/lib

2.修改配置
yarn.nodemanager.aux-services=spark_shuffle,mapreduce_shuffle
yarn.nodemanager.aux-services.spark_shuffle.class=org.apache.spark.network.yarn.YarnShuffleService
spark.shuffle.service.port=7337
mapreduce.shuffle.port=xxxx;
yarn.nodemanager.aux-services.mapreduce_shuffle.class=xxxxx;

备注说明: shuffle定义的名字无关紧要,主要是端口,框架在执行shuffle时如果开启了ess 则会直接链接rpc端口拿取对应数据执行后续过程

3. 滚动重启nodemanager
4. 修改spark client 配置
spark.shuffle.service.enabled   true
spark.shuffle.service.port      7337
上一篇下一篇

猜你喜欢

热点阅读