--conf: Arbitrary Spark configuration property in key=value format. For values that contain spaces wrap “key=value” in quotes (as shown).
事实上,当我使用该参数时,在我的Spark程序中,我可以使用以下命令检索密钥的值:
System.getProperty("key");
当我在本地测试我的程序时,以及在纱线客户端模式下,这是有效的。我可以记录键的值,看它是否与我在命令行中写的匹配,但是当我提交时,它会返回 null yarn-cluster 模式中的相同程序。
为什么我在 yarn-cluster 模式下提交Spark应用程序时,无法检索以--conf "key=value"
给出的密钥值?
任何想法和/或解决方法?
答案 0 :(得分:0)
显然,通过--conf
,您应该只传递特定于Spark的属性。如果你想传递任意键,值对,那么你应该传递它们:
--driver-java-options "-Dkey=someValue"
然后您可以通过以下方式检索密钥的值:
System.getProperty("key");