报告平台应该选择 yarn-cluster 还是 yarn-client?
What to choose yarn-cluster or yarn-client for a reporting platform?
我打算做的是使用现有数据开发一个报告平台。我有一个包含大量记录的现有 RDBMS。所以我在用。 ()
- Scoop - 将数据从 RDBMS 提取到 Hadoop
- Hadoop - 存储平台
- Hive - 数据仓库
- Spark - 因为 Hive 更像是批处理 Hive 上的 Spark 会加快速度
- JasperReports - 生成报告。
鉴于我已经阅读了以下内容
- What is yarn-client mode in Spark?
- Difference between yarn-client mode and yarn-cluster mode
我应该使用哪种模式?为什么?决策依据是什么?
决定是关于您是否希望您的应用程序 运行 作为 YARN 应用程序。
非 YARN 应用程序(您在 yarn-client
模式下获得)更简单。这是一个经典的 Linux 应用程序,您可以像启动任何应用程序一样启动它,并且它 运行 像任何应用程序一样在该计算机上启动。
YARN 应用程序(您在 yarn-cluster
模式下获得)由 YARN 管理。它 运行 在 YARN 决定安装它的任何机器上。如果它死了,YARN 会重启它,也许是在另一台机器上。它更健壮(例如,如果机器死机,它将重新启动)但以复杂性为代价(例如,您没有用于应用程序的固定 IP 地址)。
我一开始会选择 yarn-client
。如果您发现需要它提供的功能,可以稍后切换到 yarn-cluster
。
向 Danier Darabos 的回答添加更多信息:除了托管 application/faillover 和驱动程序运行的位置(纱线集群模式下的应用程序主机或纱线客户端中的客户端mode,其他特性保持不变。但是yarn-client模式支持spark-shell,不像yarn-cluster模式。
看看这个 article 了解 运行 Spark 应用程序在各种模式下的区别 - YARN Cluster,YARN Client 和 Spark Stand alone模式
在考虑所有选项中的标准后做出慎重的决定。
我打算做的是使用现有数据开发一个报告平台。我有一个包含大量记录的现有 RDBMS。所以我在用。 (
- Scoop - 将数据从 RDBMS 提取到 Hadoop
- Hadoop - 存储平台
- Hive - 数据仓库
- Spark - 因为 Hive 更像是批处理 Hive 上的 Spark 会加快速度
- JasperReports - 生成报告。
鉴于我已经阅读了以下内容
- What is yarn-client mode in Spark?
- Difference between yarn-client mode and yarn-cluster mode
我应该使用哪种模式?为什么?决策依据是什么?
决定是关于您是否希望您的应用程序 运行 作为 YARN 应用程序。
非 YARN 应用程序(您在 yarn-client
模式下获得)更简单。这是一个经典的 Linux 应用程序,您可以像启动任何应用程序一样启动它,并且它 运行 像任何应用程序一样在该计算机上启动。
YARN 应用程序(您在 yarn-cluster
模式下获得)由 YARN 管理。它 运行 在 YARN 决定安装它的任何机器上。如果它死了,YARN 会重启它,也许是在另一台机器上。它更健壮(例如,如果机器死机,它将重新启动)但以复杂性为代价(例如,您没有用于应用程序的固定 IP 地址)。
我一开始会选择 yarn-client
。如果您发现需要它提供的功能,可以稍后切换到 yarn-cluster
。
向 Danier Darabos 的回答添加更多信息:除了托管 application/faillover 和驱动程序运行的位置(纱线集群模式下的应用程序主机或纱线客户端中的客户端mode,其他特性保持不变。但是yarn-client模式支持spark-shell,不像yarn-cluster模式。
看看这个 article 了解 运行 Spark 应用程序在各种模式下的区别 - YARN Cluster,YARN Client 和 Spark Stand alone模式
在考虑所有选项中的标准后做出慎重的决定。