1.打包
在idea右侧,打开maven面板。
打包后,生成两个文件,一个是只包含代码的,一个是包含所有jar包 的。
2.提交
2.1.提交scala文件
# (不确定)
spark-submit --executor-memory 5g --driver-memory 3g --master spark://node11:7077 < als.scala
2.2.提交py文件
spark-submit --driver-memory 20g MovieLensALS.py
2.3.提交jar
spark-submit \
--class com.als.ReadFile \
--master local[*] \
--driver-memory 50G \
original-ds-scala-pro-1.0-SNAPSHOT.jar \
/data/ml/data/
2.4.添加额外jar包1
原来的maven依赖坐标是这样的
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>2.9.0</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>com.redislabs</groupId>
<artifactId>spark-redis</artifactId>
<version>2.3.1-M1</version>
</dependency>
在spark-submit的–packages后面这么写:
--packages redis.clients:jedis:2.9.0,com.redislabs:spark-redis:2.3.1-M1
完整参数(单台服务器运行)
spark-submit \
--class com.xin.ReadFile \
--master local[*] \
--conf spark.network.timeout=10000000 \
--conf spark.driver.maxResultSize=30g \
--packages redis.clients:jedis:2.9.0,com.redislabs:spark-redis:2.3.1-M1 \
--driver-memory 50G \
original-ds-scala-pro-1.0-SNAPSHOT.jar \
/data/ml/data/20181026-28/222/20181107/recomm/
2.5.添加额外jar包2
--jars ***.jar,***.jar(你的jar包,用逗号分隔)