我打算做的是使用现有数据开发报告平台。我有一个现有的RDBMS,它有大量的记录。所以我正在使用。 (Hadoop 2.7, Spark, Hive, JasperReports, Scoop - Architecuture)
鉴于我已阅读以下内容
我应该使用哪种模式?为什么?决定是基于什么?
答案 0 :(得分:1)
决定是否要让您的应用程序作为YARN应用程序运行。
非YARN应用程序(您在yarn-client
模式下获得)更简单。它是一个经典的Linux应用程序,您可以像任何应用程序一样启动它,它可以像任何应用程序一样在该机器上运行。
YARN应用程序(您在yarn-cluster
模式下获得)由YARN管理。它可以在YARN决定使用的任何机器上运行。如果它死了,YARN会重新启动它,也许是在另一台机器上。它更健壮(例如,如果机器死机它将重新启动),但代价是复杂性(例如,您没有固定的应用程序IP地址)。
我最初会选择yarn-client
。如果您发现需要它提供的功能,可以稍后切换到yarn-cluster
。
答案 1 :(得分:1)
向Danier Darabos添加更多信息回答: 除了托管应用程序/故障转移和驱动程序运行的地方(纱线群集模式下的Application Master或纱线客户端模式下的客户端 ,其他功能保持不变。但纱线客户端模式支持spark-shell,与纱线群集模式不同。
看看这个article,了解在各种模式下运行Spark应用程序之间的区别 - YARN Cluster,YARN Client& Spark Stand alone模式
在考虑所有选项中的标准后,做出计算出的决定。