apache-spark - 将多个系统属性传递给 spark-submit
问题描述
我正在尝试在 Windows 中使用 spark-submit 运行 Spark 作业。我正在从命令提示符执行以下 spark-submit 命令。
spark-submit --driver-class-path %FILE_NAME%\config --files %FILE_NAME%\config\app.conf,%FILE_NAME%\config\log4j.properties --conf "spark.driver.extraJavaOptions=-Dcassandra.用户名=cassandra -Dcassandra.password=cassandra@123" --class com.sapient.main.MainApp %FILE_NAME%\lib\test.jar
在这里,我尝试使用spark.driver.extraJavaOptions
一个 iscassandra.username
和另一个 is传递两个系统属性,cassandra.password
但是在执行命令时,出现以下错误
The input line is too long.
但是,如果我只将一个系统属性传递给和不传递如下extraJavaOptions
双引号,那么一切正常。""
--conf spark.driver.extraJavaOptions=-Dcassandra.username=cassandra
但我需要传递 2 个系统属性。我该如何解决这个问题?也让我知道是否有另一种方法可以将系统属性传递给 spark 可以避免这个问题。
注意:它在linux环境下运行。
解决方案
您可以使用 conf 文件并将其传递给 spark-submit
或者
像下面一样通过它
--conf spark.driver.extraJavaOptions=-Dcassandra.username=cassandra\
--conf spark.rpc.message.maxSize=1024\
--conf spark.network,timeout=1000\
推荐阅读
- list - 在颤动中将多个项目添加到列表中
- laravel - 为什么 Laravel Livewire 中的 flash 消息只显示一次?
- python - 如何在网页上分别打印 IPv4 和 IPv6
- flutter - 如何在flutter中使用插件usb_serial?
- reactjs - 如何将名称属性添加到输入?
- c++ - C++指针变量和动态分配的基本概念以及间接运算符的必要性
- jquery - 使用 laravel8 一次将数据存储到两个表中
- python - 为什么 Markercluster 搜索栏会出错
- python - 从包含标题和值的数据框列中提取标题
- linux - leave-ret 和系统调用退出有什么区别?