我在Spark上开发了一个Scala程序,它连接MySQL数据库以提取大约250K记录的数据并对其进行处理。当我从IDE本身(IntelliJ)执行应用程序时,完成作业大约需要1分钟,就好像我从终端通过Spark-Sumit提交需要4分钟。
Scala代码
val sparkSession = SparkSession.builder().
appName("credithistory").
master("local[*]")
.getOrCreate()
从终端
spark-submit --master local[*] .....
我应该做出任何改变,还是正常行为?由于local[*]
我在代码中也有它,我也是从终端提供的。
答案 0 :(得分:0)
本地[K]使用K个工作线程在本地运行Spark(理想情况下,将其设置为计算机上的核心数)。
它来自spark网页的参考。 link
你可以调整'K'的数量, 例如,“本地[4]或本地[8]”跟随CPU性能。