我在spark笔记本中完成了一些代码,我尝试将其移动到一个真实的项目中,并使用sbt
生成 jar ,然后使用spark-submit
来执行它。
问题:只需 10分钟即可获得火花笔记本中的结果,但需要几乎 3小时才能获得结果我使用命令spark-submit。
信息:我配置了spark,scala版本,以及参数(主网址,执行核心/内存等)在笔记本和spark-submit之间都是一样的。
怀疑1:可能是因为日志(LogFactory.getLog()。info(“xxxx”))?哪个程序花了太多时间打印或保存它们?
怀疑2:也许是因为代码?我没有对笔记本的代码做任何大的改动,只需创建一个函数,将代码放入其中并运行它。我应该做一些分区吗?