【发布时间】:2015-04-07 19:56:31
【问题描述】:
我在 YARN 上运行 Apache Spark (1.3.0)。 YARN_CONF_DIR 指向 YARN 配置。 core-site.xml 是从该目录加载的。它包括一个io.compression.codecs 的设置,这个列表包括com.hadoop.compression.lzo.LzoCodec,它不包含在预构建的Spark 中。
这会导致启动时出现ClassNotFoundException。作为一种解决方法,我们可以使用修改后的 core-site.xml 运行,或者我们可以将所需的 Jar 文件包含在 --jars 中。
这些变通方法都不是非常可靠。我不是 YARN 集群的管理员。集群管理员可以在我不知情的情况下更改core-site.xml。如果我使用修改后的副本,我会错过重要的更改。如果我使用--jars,我的 Spark 应用程序将在添加新编解码器时中断。
这些编解码器是否存储在标准位置?我怎么能把那个地方添加到我的类路径中?我希望我的应用程序能够在配置更改后继续存在,而无需我做任何事情。
【问题讨论】:
标签: hadoop apache-spark