在我的应用程序中,我需要连接到数据库,因此我需要在提交应用程序时传递IP地址和数据库名称。
我按如下方式提交申请:
./spark-submit --class class name --master spark://localhost:7077 \
--deploy-mode client /home/hadoop/myjar.jar
答案 0 :(得分:11)
如果您选中the official documentation,则会看到spark-submit
具有以下语法:
./bin/spark-submit \
--class <main-class>
--master <master-url> \
--deploy-mode <deploy-mode> \
--conf <key>=<value> \
... # other options
<application-jar> \
[application-arguments]
您可以使用application-arguments
和conf
将所需配置分别传递给main方法和SparkConf
。
答案 1 :(得分:2)
正如zero323所述,您可以使用the link
中的 spark-submit 命令 ./bin/spark-submit \
--class <main-class>
--master <master-url> \
--deploy-mode <deploy-mode> \
--conf <key>=<value> \
... # other options
<application-jar> \
[application-arguments]
这里, conf 用于传递应用程序运行所需的Spark相关配置,就像任何特定属性(执行程序内存)一样,或者如果要覆盖设置的默认属性的火花default.conf 强>
就您的用例而言,您希望将IP传递给应用程序以连接到数据库,然后您可以使用在JAR之后传递的 [application-arguments] 。
将主要设置为:
def main(args: Array[String])
然后你可以接受任何作为.jar行后给出的参数。