Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Centro de ayuda/ MapReduce Service/ Preguntas frecuentes/ Desarrollo del trabajo/ ¿Cuáles son las diferencias entre el modo de client y el modo de cluster de los trabajos de Spark?
Actualización más reciente 2023-11-20 GMT+08:00

¿Cuáles son las diferencias entre el modo de client y el modo de cluster de los trabajos de Spark?

Es necesario entender el concepto ApplicationMaster antes de entender las diferencias esenciales entre Yarn-client e Yarn-cluster.

En Yarn, cada instancia de aplicación tiene un proceso ApplicationMaster, que es el primer contenedor iniciado por la aplicación. Interactúa con ResourceManager y solicita recursos. Después de obtener recursos, indica a NodeManager que inicie Container. La diferencia esencial entre los modos Yarn-cluster e Yarn-client radica en el proceso ApplicationMaster.

En el modo Yarn-cluster, Driver se ejecuta en el ApplicationMaster que solicita recursos a Yarn y supervisa el estado de ejecución de un trabajo. Después de que un usuario envíe un trabajo, el cliente se puede detener y el trabajo continúa ejecutándose en Yarn. Por lo tanto, el modo Yarn-cluster no es adecuado para ejecutar trabajos interactivos.

En el modo Yarn-cliente, ApplicationMaster solo solicita al Executor de Yarn. El cliente se comunica con Constainer solicitado para programar tareas. Por lo tanto, el client no puede ser detenido.