我即将尝试使用EMR,因此现在正在查阅文档。提交过程让我有些困惑。
1)Spark库在哪里?
从Spark文档中我们可以找到:
- spark.yarn.jars: 包含要分发到YARN容器的Spark代码库列表。默认情况下,YARN上的Spark将使用本地安装的Spark jars,但Spark jars也可以位于HDFS上的一个全局可读位置。这样,YARN就可以将其缓存在节点上,以便每次应用程序运行时都不需要进行分发。例如,要指向HDFS上的jar,请将此配置设置为hdfs:///some/path。允许使用通配符。
- (a) 我想知道使用EMR如何设置,即它是由EMR设置还是我必须自己设置?
2)--master参数如何工作?
从Spark文档中我们可以找到:
- --master:与其他由Spark支持的群集管理器不同,在YARN模式下,ResourceManager的地址是从Hadoop配置中获取的。因此,--master参数是yarn。
- (a) 这是由EMR直接设置的吗?
3)是否有一种方法可以通过终端提交应用程序,或者唯一的方法是实际在S3上部署jar?我可以登录到主服务器并从那里进行提交吗?所有必要的Env变量都准备好了(参见前面的问题)?最有效的提交方式是什么?