Todos los productos
Search
Centro de documentos

DataWorks:Crear un nodo de EMR Spark Streaming

Última actualización: Sep 04, 2026

Los nodos de EMR Spark Streaming ofrecen procesamiento de alto rendimiento y tolerante a fallos para flujos de datos en tiempo real, lo que facilita la recuperación rápida ante errores en dichos flujos. Puede crear un nodo de EMR Spark Streaming y desarrollar una tarea de streaming en DataWorks.

Requisitos previos

  • Se creó un clúster de Alibaba Cloud EMR y se registró en DataWorks. Para obtener más información, consulte Data Studio (legacy): Register an EMR cluster.

  • (Obligatorio si utiliza un usuario de RAM para desarrollar tareas) El usuario de RAM se agregó al espacio de trabajo de DataWorks como miembro y se le asignó el rol Develop o Workspace Administrator. El rol Workspace Administrator otorga más permisos de los necesarios, por lo que debe tener precaución al asignarlo. Para obtener más información sobre cómo agregar un miembro, consulte Add members to a workspace.

  • Se adquirió y configuró un resource group serverless. La configuración incluye la asociación con un espacio de trabajo y la configuración de red. Para obtener más información, consulte Create and use a serverless resource group.

  • Se creó un flujo de trabajo en DataStudio.

    Las operaciones de desarrollo en los distintos tipos de motores de cómputo se realizan mediante flujos de trabajo en DataStudio. Por lo tanto, antes de crear un nodo, debe crear un flujo de trabajo. Para obtener más información, consulte Create a workflow.

Límites

  • Este tipo de tarea solo puede ejecutarse en un serverless resource group (recomendado) o en un resource group exclusivo para programación.

  • No es posible utilizar nodos de EMR Spark Streaming para desarrollar tareas en clústeres de Spark que se ejecutan en EMR on ACK.

Paso 1: Crear un nodo de EMR Spark Streaming

  1. Inicie sesión en la consola de DataWorks. En la región objetivo, haga clic en Data Development and O&M > Data Development en el panel de navegación izquierdo. Seleccione un espacio de trabajo en la lista desplegable y haga clic en Go to Data Development.

  2. Cree un nodo de EMR Spark Streaming.

    1. En el panel Business Flow, haga clic con el botón derecho en el flujo de trabajo objetivo y seleccione Create Node > EMR > EMR Spark Streaming.

      Nota

      Como alternativa, puede pasar el cursor sobre el icono Create y seleccionar Create Node > EMR > EMR Spark Streaming.

    2. En el cuadro de diálogo Create Node, introduzca un Name y seleccione la Engine Instance, el Node Type y la Path. Haga clic en Confirm para abrir la pestaña del editor correspondiente al nodo.

      Nota

      Los nombres de los nodos pueden contener letras mayúsculas, letras minúsculas, caracteres chinos, dígitos, guiones bajos (_) y puntos (.).

Paso 2: Desarrollar la tarea de EMR Spark Streaming

Haga doble clic en el nodo que creó para abrir su pestaña de edición.

Crear y hacer referencia a un recurso JAR de EMR

Si utiliza un clúster DataLake, siga estos pasos para hacer referencia a un recurso JAR de EMR.

Nota

Si su nodo de EMR Spark Streaming depende de un recurso demasiado grande para cargarse desde la página de DataWorks, debe almacenar el recurso en HDFS y hacer referencia a él en su código. Ejemplo:

spark-submit --master yarn
--deploy-mode cluster
--name SparkPi
--driver-memory 4G
--driver-cores 1
--num-executors 5
--executor-memory 4G
--executor-cores 1
--class org.apache.spark.examples.JavaSparkPi
hdfs:///tmp/jars/spark-examples_2.11-2.4.8.jar 100
  1. Cree un recurso JAR de EMR. Para obtener más información, consulte Create and use EMR resources. La primera vez que realice esta operación, debe hacer clic en Authorize.

  2. Haga referencia al recurso JAR de EMR.

    1. Abra el nodo EMR Spark Streaming que creó.

    2. En el árbol de navegación, expanda EMR > Resources, busque el recurso al que desea hacer referencia, haga clic con el botón derecho sobre él y seleccione Insert Resource Path.

    3. Aparecerá una declaración de referencia similar a ##@resource_reference{""} en el editor. Reemplace los valores del marcador de posición en el siguiente ejemplo con su información real.

      ##@resource_reference{"examples-1.2.0-shaded.jar"}
      --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>

Desarrollar el código de la tarea

En el editor del nodo de EMR Spark Streaming, introduzca el código del job que desea ejecutar. Ejemplo:

spark-submit --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>
Nota
  • En este ejemplo, el recurso cargado en DataWorks es examples-1.2.0-shaded.jar.

  • Reemplace access-key-id y access-key-secret con el AccessKey ID y el AccessKey secret de su cuenta de Alibaba Cloud. Para obtenerlos, inicie sesión en la consola de DataWorks, pase el cursor sobre su foto de perfil en la esquina superior derecha y vaya a la página de gestión de AccessKey.

  • El editor de código de los nodos de EMR Spark Streaming no admite comentarios.

  • Si su espacio de trabajo está vinculado a varios recursos de cómputo de EMR, seleccione el adecuado para su tarea.

(Opcional) Configurar parámetros avanzados

Puede configurar propiedades específicas en la pestaña Advanced Settings del nodo. Para obtener más información sobre las propiedades disponibles, consulte Configuración de Spark. La siguiente tabla describe los parámetros avanzados.

Datalake: EMR on ECS

Parámetro

Descripción

queue

La cola de YARN para el job. El valor predeterminado es default. Para obtener más información sobre YARN en EMR, consulte Basic queue configurations.

priority

La prioridad del job. El valor predeterminado es 1.

Otros

Puede agregar parámetros personalizados de SparkConf en la configuración avanzada. DataWorks añade automáticamente estos parámetros al comando al enviarlo. Ejemplo: "spark.driver.memory" : "2g".

Nota

Para habilitar el control de permisos de Ranger, agregue la configuración spark.hadoop.fs.oss.authorization.method=ranger cuando set global Spark parameters.

Para obtener más información sobre las configuraciones de parámetros, consulte Set global Spark parameters.

Ejecutar la tarea

  1. En la barra de herramientas, haga clic en el icono 高级运行. En el cuadro de diálogo Parameter, seleccione el resource group de programación que creó y haga clic en Running.

    Nota
    • Para acceder a recursos de cómputo en una red pública o VPC, debe utilizar un resource group de programación que haya pasado una prueba de conectividad con el recurso de cómputo. Para obtener más información, consulte Network connectivity solutions.

    • Si necesita cambiar el resource group para ejecuciones posteriores, haga clic en el icono Run with Parameters 高级运行 y seleccione el resource group que desea utilizar.

  2. Haga clic en el icono 保存 para guardar el código.

  3. (Opcional) Realice pruebas de humo.

    Para realizar pruebas de humo en el entorno de desarrollo, ejecute la prueba antes o después de confirmar el nodo. Para obtener más información, consulte Perform smoke testing.

Paso 3: Configurar propiedades de programación

Si desea que el sistema ejecute periódicamente una tarea en el nodo, puede hacer clic en Properties en el panel de navegación derecho de la pestaña de configuración del nodo para establecer las propiedades de programación de la tarea según sus requisitos empresariales. Para obtener más información, consulte Overview.

Nota

Debe configurar los parámetros Rerun y Parent Nodes en la pestaña Properties antes de confirmar la tarea.

Paso 4: Desplegar la tarea

Una vez configurada una tarea en un nodo, debe confirmarla y desplegarla. Después de confirmar y desplegar la tarea, el sistema la ejecuta de forma regular según las configuraciones de programación.

  1. Haga clic en el icono 保存 en la barra de herramientas superior para guardar la tarea.

  2. Haga clic en el icono 提交 en la barra de herramientas superior para confirmar la tarea.

    En el cuadro de diálogo Submit, configure el parámetro Change description. Luego, determine si desea revisar el código de la tarea después de confirmarla, según sus requisitos empresariales.

    Nota
    • Debe configurar los parámetros Rerun y Parent Nodes en la pestaña Properties antes de confirmar la tarea.

    • Puede utilizar la función de revisión de código para garantizar la calidad del código de las tareas y evitar errores de ejecución causados por código no válido. Si habilita esta función, el código de la tarea confirmado solo podrá desplegarse después de aprobar la revisión. Para obtener más información, consulte Code review.

Si utiliza un espacio de trabajo en modo estándar, debe desplegar la tarea en el entorno de producción después de confirmarla. Para desplegar una tarea en un nodo, haga clic en Deploy en la esquina superior derecha de la pestaña de configuración del nodo. Para obtener más información, consulte Deploy a node.

Más operaciones

Después de confirmar y desplegar la tarea, esta se ejecuta periódicamente según las configuraciones de programación. Puede hacer clic en Operation Center en la esquina superior derecha de la pestaña de configuración del nodo correspondiente para ir a Operation Center y consultar el estado de programación de la tarea. Para obtener más información, consulte Manage scheduled tasks.