En esta página, se describe cómo cambiar la versión de la imagen de Managed Service para Apache Spark que usa tu instancia de Cloud Data Fusion. Puedes cambiar la imagen a nivel de la instancia, del espacio de nombres o de la canalización.
Antes de comenzar
Detén todas las canalizaciones en tiempo real y los trabajos de replicación en la instancia de Cloud Data Fusion. Si una canalización o replicación en tiempo real se está ejecutando cuando cambias la versión de la imagen de Managed Service para Apache Spark, los cambios no se aplicarán a la ejecución de la canalización.
En el caso de las canalizaciones en tiempo real, si el punto de control está habilitado, detener las canalizaciones no causa ninguna pérdida de datos. En el caso de los trabajos de replicación, siempre que los registros de la base de datos estén disponibles, detener y reiniciar el trabajo de replicación no causa pérdida de datos.
Console
Ve a la página Instancias de Cloud Data Fusion y abre la instancia en la que necesitas detener una canalización.
Abre cada canalización en tiempo real en Pipeline Studio y haz clic en Detener.
Abre cada trabajo de replicación en la página Replicar y haz clic en Detener.
API de REST
Para recuperar todas las canalizaciones, usa la siguiente llamada a la API de REST:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps"Reemplaza
NAMESPACE_IDpor el nombre de tu espacio de nombres.Para detener una canalización en tiempo real, usa la siguiente llamada a la API de REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/PIPELINE_NAME/spark/DataStreamsSparkStreaming/stop"Reemplaza NAMESPACE_ID por el nombre de tu espacio de nombres y PIPELINE_NAME por el nombre de la canalización en tiempo real.
Para detener un trabajo de replicación, usa la siguiente llamada a la API de REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/REPLICATION_JOB_NAME/workers/DeltaWorker/stop"Reemplaza NAMESPACE_ID por el nombre de tu espacio de nombres y REPLICATION_JOB_NAME por el nombre del trabajo de replicación.
Para obtener más información, consulta cómo detener canalizaciones en tiempo real y detener trabajos de replicación.
Verifica y anula la versión predeterminada de Managed Service para Apache Spark en Cloud Data Fusion
Haz clic en Administrador del sistema > Configuración > Preferencias del sistema.

Si no se especifica una imagen de Managed Service para Apache Spark en las Preferencias del sistema o para cambiar la preferencia, haz clic en Editar las preferencias del sistema.
Ingresa el siguiente texto en el campo Clave:
system.profile.properties.imageVersionIngresa la imagen de Managed Service para Apache Spark elegida en el campo Valor, como
2.1.Haz clic en Guardar y cerrar.

Este cambio afecta a toda la instancia de Cloud Data Fusion, incluidos todos sus espacios de nombres y ejecuciones de canalización, a menos que se anule la propiedad de la versión de la imagen en un espacio de nombres, una canalización o un argumento de entorno de ejecución en tu instancia.
Cambia la versión de la imagen de Managed Service para Apache Spark
La versión de la imagen se puede configurar en la interfaz web de Cloud Data Fusion en las Configuraciones de procesamiento, las Preferencias de espacio de nombres o los Argumentos de entorno de ejecución de la canalización.
Cambia la imagen en las Preferencias de espacio de nombres
Si anulaste la versión de la imagen en las propiedades de tu espacio de nombres, sigue estos pasos:
Haz clic en Administrador del sistema > Configuración > Espacios de nombres.
Abre cada espacio de nombres y haz clic en Preferencias.
Asegúrate de que no haya ninguna anulación con la clave
system.profile.properties.imageVersioncon un valor de versión de imagen incorrecto.Haz clic en Finalizar.
Cambia la imagen en los perfiles de procesamiento del sistema
Haz clic en Administrador del sistema > Configuración.
Haz clic en Perfiles de procesamiento del sistema > Crear perfil nuevo.
Selecciona el aprovisionador de Managed Service para Apache Spark.

Crea el perfil de Managed Service para Apache Spark. En el campo Versión de la imagen, ingresa una versión de la imagen de Managed Service para Apache Spark.

Selecciona este perfil de procesamiento mientras ejecutas la canalización en la página Studio. En la página de ejecución de la canalización, haz clic en Configurar > Configuración de procesamiento y selecciona este perfil.
Selecciona el perfil de Managed Service para Apache Spark y haz clic en Guardar.
Haz clic en Finalizar.
Cambia la imagen en los Argumentos de entorno de ejecución de la canalización
Si anulaste la versión de la imagen con una propiedad en los Argumentos de entorno de ejecución de tu canalización, sigue estos pasos:
Haz clic en el menú Menú > Lista.
En la página Lista, selecciona la canalización que deseas actualizar.
La canalización se abrirá en la página Studio.
Para expandir las opciones de Ejecutar, haz clic en la flecha de expansión .
Se abrirá la ventana Argumentos de entorno de ejecución.
Verifica que no haya ninguna anulación con la clave
system.profile.properties.imageVersioncon una versión de imagen incorrecta como valor.Haz clic en Guardar.

Vuelve a crear clústeres estáticos de Managed Service para Apache Spark que usa Cloud Data Fusion con la versión de imagen elegida
Si usas clústeres existentes de Managed Service para Apache Spark con Cloud Data Fusion, sigue la guía de Managed Service para Apache Spark para volver a crear los clústeres con la versión de imagen de Managed Service para Apache Spark elegida para tu versión de Cloud Data Fusion.
Como alternativa, puedes crear un clúster nuevo de Managed Service para Apache Spark con la versión de imagen de Managed Service para Apache Spark elegida, y borrar y volver a crear el perfil de procesamiento en Cloud Data Fusion con el mismo nombre de perfil de procesamiento y el nombre actualizado del clúster de Managed Service para Apache Spark. De esta manera, la ejecución de canalizaciones por lotes puede completar la ejecución en el clúster existente, y las ejecuciones posteriores de la canalización se realizan en el nuevo clúster de Managed Service para Apache Spark. Puedes borrar el clúster anterior de Managed Service para Apache Spark después de confirmar que se completaron todas las ejecuciones de la canalización.
Verifica que se actualice la versión de la imagen de Managed Service para Apache Spark
Console
En la Google Cloud consola de, ve a la página **Clústeres** de Managed Service para Apache Spark.
Abre la página Detalles del clúster del clúster nuevo que creó Cloud Data Fusion cuando especificaste la versión nueva.
El campo Versión de la imagen tiene el valor nuevo que especificaste en Cloud Data Fusion.
API de REST
Obtén la lista de clústeres con sus metadatos:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ https://dataproc.googleapis.com/v1/projects/PROJECT_ID/regions/REGION_ID/clustersReemplaza lo siguiente:
PROJECT_IDpor el nombre de tu espacio de nombresREGION_IDpor el nombre de la región en la que se encuentran tus clústeres
Busca el nombre de tu canalización (nombre del clúster).
En ese objeto JSON, consulta la imagen en
config > softwareConfig > imageVersion.
Cambia la imagen de Managed Service para Apache Spark a la versión 2.1 o posterior
Las versiones 6.9.1 y posteriores de Cloud Data Fusion admiten la imagen 2.1 de Managed Service para Apache Spark Compute Engine, que se ejecuta en Java 11. En las versiones 6.10.0 y posteriores, la imagen 2.1 es la predeterminada.
Si cambias a la imagen 2.1 o posterior desde una imagen anterior, para que tus canalizaciones por lotes y trabajos de replicación se realicen correctamente, los controladores de JDBC que usan los complementos de la base de datos en esas instancias deben ser compatibles con Java 11.
Las imágenes 2.2 y 2.1 de Managed Service para Apache Spark tienen las siguientes limitaciones en Cloud Data Fusion:
- No se admiten los trabajos de MapReduce.
- Las versiones de los controladores de JDBC que se usan en los complementos de la base de datos de tu instancia deben actualizarse para que sean compatibles con Java 11. Consulta la siguiente tabla para obtener las versiones de los controladores que funcionan con Managed Service para Apache Spark 2.2, 2.1 y Java 11:
| Controladores de JDBC | Versiones anteriores quitadas de Cloud Data Fusion 6.9.1 | Versiones compatibles con Java 8 y Java 11 que funcionan con Managed Service para Apache Spark 2.2, 2.1 o 2.0 |
|---|---|---|
| Controlador de JDBC de Cloud SQL para MySQL | - | 1.0.16 |
| Controlador de JDBC de Cloud SQL para PostgreSQL | - | 1.0.16 |
| Controlador de JDBC de Microsoft SQL Server | Controlador de Microsoft JDBC 6.0 | Controlador de Microsoft JDBC 9.4 |
| Controlador de JDBC de MySQL | 5.0.8, 5.1.39 | 8.0.25 |
| Controlador de JDBC de PostgreSQL | 9.4.1211.jre7, 9.4.1211.jre8 | 42.6.0.jre8 |
| Controlador de JDBC de Oracle | ojdbc7 | ojdbc8 (12c y versiones posteriores) |
Uso de memoria cuando se usa Managed Service para Apache Spark 2.1 o versiones posteriores
El uso de memoria puede aumentar para las canalizaciones que usan Managed Service para Apache Spark 2.1 o versiones posteriores. Si actualizas tu instancia a la versión 6.10 o posterior, y las canalizaciones anteriores fallan debido a problemas de memoria, aumenta la memoria del controlador y del ejecutor a 2048 MB en la configuración de Resources para la canalización.

Como alternativa, puedes anular la versión de Managed Service para Apache Spark si configuras el argumento de entorno de ejecución system.profile.properties.imageVersion en 2.0-debian10.