spark-本地化级别

2018/04/07
使用xxx.cache命令去将某些数据缓存在内存中,本来期望能够快很多,但是最后发现,还是有40个any(本地化优先级)分配到node1和2。
而且也看到了有一定数量的东西已经缓存在这个内存中。
但是就是为什么又启动了那么多的东西。
最慢的永远都是那些个从hdfs里面直接取文件的那些个。


2018/04/07
我也调了几次这个相应的这个本地化的参数。
但是注意到一点,按照任务排序,最开始的时候,一定是按照这个执行器来分配的。
就是说,这个时候,还是按照计算资源优先的策略。最开始的时候,我先找到能执行这个任务的东西。
每次都是这样。先把计算资源沾满。
而且,即使我改变了这个调度模式,也是这样的结果。(原来是FIFO,改成了FAIR,没有什么效果)

这四十个任务是我怎么调都调不对的四十个节点。(而且,最慢的就是这四十个。)


而且还有一点一定要注意到,即使我设置了缓存,他还是有那40个东西在执行。
也就是说,不管怎么地,我都会有这个四十个在浪费时间。
(这四十个的设置原因是,我把node1和node2都配置为了worker,并且都是用了20个核)
修改了把node1去掉,node2也是每次都启动20个任务,然后去执行。
(我感觉这里的这个网络消耗真的太大了,)


2018/04/08
认识到原来的一个保存文件的错误之后,尝试吧所有的文件都部署到spark中处理。
这次的确这个大部分文件都得到了node_local的级别。
但是有一点,还是有点不好,就是最后的时候还是有20个任务成了any。(某一个worker上的所有核)
这也是最后拖后腿的东西了。


2018/04/08
重新生成了一下这个output文件夹的内容。当时这部分内容不知道是怎么生成的,反正就是文件很不均衡。
(也不能说不均衡,就是有一个文件本身就很大,很不方便。)
现在好使了。基本所有的任务都是node_local。执行下来的时间只需要35S。快的一批。很舒服。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值