使用本机库的 spark EMR 作业中的 UnsatisfiedLinkError
UnsatisfiedLinkError in spark EMR job with native library
我正在尝试 运行 使用本机共享库 (.so) 的 spark 作业。我正在使用 --jars 将我的 .so 复制到所有执行程序(并且文件似乎在那里,沿着 spark .jar 应用程序),但不知何故我无法设置环境查找和使用 .so。尝试了 --conf spark.executor.extraLibraryPath 和 -Djava.library.path,但不确定要使用什么路径。
有没有简单的方法让它工作? (使用 AWS EMR 4.5.0,spark 1.6.x)
我的火花提交:
spark-submit \
--deploy-mode cluster \
--driver-java-options \
--jars s3://at/emr-test/asb_UT/libSplineFitWrapperJava.so \
--class com.SplineFittingDummy \
s3://at/emr-test/asb_UT/asb-0.0.1-SNAPSHOT-jar-with-dependencies.jar \
s3://at/emr-test/asb_UT/testPoints01.xml \
s3://at/emr-test/asb_UT/output
问题出在方法上。构建也是如此。在尝试了不同的设置和可用设置(solaris 和 sfw、debian 和 g++ 4.6,...)失败后,我尝试在 EMR 上编译 .so,现在一切正常。
如果 Amazon 可以提供一些 docker 图片和他们的设置会很有帮助,这样我们就可以编译而无需实际将所有源代码复制到 EMR..
我正在尝试 运行 使用本机共享库 (.so) 的 spark 作业。我正在使用 --jars 将我的 .so 复制到所有执行程序(并且文件似乎在那里,沿着 spark .jar 应用程序),但不知何故我无法设置环境查找和使用 .so。尝试了 --conf spark.executor.extraLibraryPath 和 -Djava.library.path,但不确定要使用什么路径。 有没有简单的方法让它工作? (使用 AWS EMR 4.5.0,spark 1.6.x)
我的火花提交:
spark-submit \
--deploy-mode cluster \
--driver-java-options \
--jars s3://at/emr-test/asb_UT/libSplineFitWrapperJava.so \
--class com.SplineFittingDummy \
s3://at/emr-test/asb_UT/asb-0.0.1-SNAPSHOT-jar-with-dependencies.jar \
s3://at/emr-test/asb_UT/testPoints01.xml \
s3://at/emr-test/asb_UT/output
问题出在方法上。构建也是如此。在尝试了不同的设置和可用设置(solaris 和 sfw、debian 和 g++ 4.6,...)失败后,我尝试在 EMR 上编译 .so,现在一切正常。 如果 Amazon 可以提供一些 docker 图片和他们的设置会很有帮助,这样我们就可以编译而无需实际将所有源代码复制到 EMR..