奇怪的问题
前提:迭代100000的时候 步长100
问题描述
- 单机单线程运行,约13.5s
- 使用local[2],local[3],local[4],local[5]模式运行,约5.9s运行完程序,但是会提示如下WARN
- local[6]及以后模式下不会出现如上WARN,但是运行速度降低,大概要10s运行完程序,线程数越大好像越慢一些
- 3个worker(包括一台机器既作为master又作为worker),运行更慢,大概要24s
- 2个worker,大概要20s
- 1个worker大概要17s
- 本机既作为worker又作为master,大概19s
原因分析
- spark从本地读数据和从hdfs读数据速度比较
- spark从hdfs读数据要比从本地读数据快
- 猜测是本地读数据很慢,要把数据传到hdfs上
- 但是并没有变快
解决
就是系统没有配置好,重新装了一个spark3.0.2,通信问题解决了,这个问题也不出现了。
总之,遇到实在解决不了的问题,换个版本重装试试