Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache spark 气流和Spark/Hadoop-独特的群集或一个用于气流,另一个用于Spark/Hadoop_Apache Spark_Hadoop_Airflow - Fatal编程技术网

Apache spark 气流和Spark/Hadoop-独特的群集或一个用于气流,另一个用于Spark/Hadoop

Apache spark 气流和Spark/Hadoop-独特的群集或一个用于气流,另一个用于Spark/Hadoop,apache-spark,hadoop,airflow,Apache Spark,Hadoop,Airflow,我正试图找出使用气流和Spark/Hadoop的最佳方式。 我已经有了一个Spark/Hadoop集群,我正在考虑为Airflow创建另一个集群,将作业远程提交到Spark/Hadoop集群 有什么建议吗?从另一个集群远程部署spark似乎有点复杂,这将创建一些文件配置重复。我相信,您只需要配置一个warn site.xml文件,spark submit--master Warn--deploy mode client就可以工作了。(您可以尝试群集部署模式,但我认为由气流管理驱动程序不是一个坏主

我正试图找出使用气流和Spark/Hadoop的最佳方式。 我已经有了一个Spark/Hadoop集群,我正在考虑为Airflow创建另一个集群,将作业远程提交到Spark/Hadoop集群


有什么建议吗?从另一个集群远程部署spark似乎有点复杂,这将创建一些文件配置重复。

我相信,您只需要配置一个
warn site.xml
文件,spark submit--master Warn--deploy mode client就可以工作了。(您可以尝试群集部署模式,但我认为由气流管理驱动程序不是一个坏主意)

在Thread中部署应用程序主机后,Spark将在Hadoop集群的本地运行


如果确实需要,您可以添加一个
hdfs site.xml
hive site.xml
以从Airflow提交(如果可能的话),但是至少应该从容器类路径中提取hdfs-site.xml文件(并非所有节点管理器都可以安装hive客户端)

我更喜欢使用SSHOperator提交Spark作业,并运行
Spark submit
命令,这样可以将您从复制/粘贴
warn site.xml
中解救出来。另外,如果我执行的唯一任务是运行Spark作业,我不会为Airflow创建集群,使用
LocalExecutor
的单个VM应该可以。

通过
Airflow
远程执行
Spark submit

  • (有关提示,请参阅)

请注意,这些都不是即插即用的,您必须编写自己的操作程序才能完成任务。

您可以远程执行此操作,但只需配置对hive metastore、hadoop群集和资源管理器的访问权限。还请记住,spark对本地性非常敏感。因此,如果您的spark客户端是气流及其不同网络的所在地。那么你的工作可能会慢一些。我曾经遇到过这样的问题,因此我在hadoop集群所在的同一个网络中有气流。对,HDFS更喜欢本地读取,配置Spark与任何其他hadoop+Hive clientOk没有什么不同,感谢您分享您的经验。我只是在寻找让这些框架像夫妻一样协同工作的最佳方法。我将把它们放在两个不同的集群中。如果您使用的是Ambari,您可以在Airflow workers上安装Spark和Hive客户端。并保持配置同步,以了解更多详细信息