Crea sesiones interactivas y perfiles de entorno de ejecución

En este documento, se muestra cómo crear sesiones interactivas y perfiles de entorno de ejecución de Managed Service para Apache Spark, que se denominan plantillas de sesión en Google Cloud CLI y la API de Dataproc. Un perfil de entorno de ejecución es un conjunto reutilizable de parámetros de configuración del entorno de ejecución de Spark sin servidores, como el nivel de procesamiento y la configuración del ejecutor, que puedes usar para crear notebooks y sesiones interactivos.

Crea una sesión interactiva

Puedes usar Google Cloud CLI o la API de Managed Service para Apache Spark para crear una sesión interactiva de Managed Service para Apache Spark.

gcloud

Puedes usar el comando gcloud beta dataproc sessions create spark SESSION_ID para crear una sesión interactiva de Managed Service para Apache Spark:

gcloud beta dataproc sessions create spark SESSION_ID \
    --location=REGION \
    optional flags ...

Reemplaza o agrega lo siguiente:

REST

Puedes usar el método de la API de Managed Service para Apache Spark sessions.create para crear una sesión interactiva de Managed Service para Apache Spark. Configura los siguientes campos de solicitud:

Crea un perfil de entorno de ejecución

Un perfil de entorno de ejecución de Managed Service para Apache Spark (a veces llamado plantilla de sesión) define parámetros de configuración reutilizables para crear sesiones interactivas de Managed Service para Apache Spark. Puedes usar la consola de Google Cloud , la gcloud CLI o la API de Managed Service para Apache Spark para crear un perfil de entorno de ejecución. En gcloud CLI y la API de Dataproc, los perfiles de entorno de ejecución se llaman session templates.

Console

Para crear un perfil de entorno de ejecución de Managed Service para Apache Spark con la consola deGoogle Cloud , completa los siguientes pasos:

  1. En la consola de Google Cloud , ve a la página Perfiles de entorno de ejecución.

    Ir a Perfiles de entorno de ejecución

  2. Haz clic en Crear.

  3. En la página Crea un perfil de entorno de ejecución, establece la siguiente configuración principal:

    • Nombre visible: obligatorio. Ingresa un nombre visible para el perfil de entorno de ejecución o acepta el nombre generado que se completó previamente. El nombre visible debe contener al menos una letra o un número, y se guarda como un nombre visible de nivel superior para todos los tipos de sesiones, incluido Spark Connect. El Nombre del perfil de entorno de ejecución es el ID del recurso y se deriva automáticamente del nombre visible convirtiendo las letras en minúsculas y los caracteres no válidos en guiones, que se muestran como una sugerencia debajo del campo. Para personalizar el ID del recurso de forma independiente del nombre visible, expande Configuración adicional y edita Configuración del entorno de ejecución.

    • Región: obligatorio. Selecciona una región de Compute Engine disponible para las sesiones que usan este perfil de entorno de ejecución. La región predeterminada es us-east4 (antes us-central1), y en la lista se muestran las descripciones de las regiones.

    • Descripción: opcional. Ingresa una descripción para ayudar a identificar el perfil de entorno de ejecución.

    • Nivel: Selecciona el nivel de Managed Service para Apache Spark para la ejecución de la carga de trabajo:

      • Premium: Es el valor predeterminado. Optimiza las consultas complejas o sensibles a la latencia con motores de aceleración y admite formas de ejecutores con alta capacidad de memoria y aceleración por GPU. Cuando se selecciona Premium, se muestra y se selecciona de forma predeterminada la casilla de verificación Habilitar Lightning Engine para acelerar el rendimiento para acelerar los trabajos de Spark con Lightning Engine, que establece spark.dataproc.engine=lightningEngine.

      • Estándar: Proporciona un entorno de ejecución de Spark estándar para el procesamiento de datos rutinario. Las sesiones interactivas siempre se ejecutan en el nivel Premium; seleccionar Estándar solo afecta la ejecución por lotes. Si eliges Estándar, se desactiva Lightning Engine, se restringen las formas de máquina a las formas de CPU estándar (standard-4, standard-8 o standard-16) y se requieren discos HDD (standard). Si cambias de Premium a Estándar, las formas de GPU o de memoria alta se restablecen a standard-4 y los discos SSD se restablecen a un HDD 200 GiB.

    • Configuración del ejecutor: Selecciona el modo de tamaño de procesamiento y la forma de la máquina para los ejecutores y el controlador de Spark que ejecutan tu carga de trabajo:

      • General: Es el valor predeterminado. Proporciona formas de máquinas solo de CPU adecuadas para las cargas de trabajo generales de extracción, transformación y carga (ETL). En la lista Tipo de ejecutor, selecciona una forma de Memoria alta, como highmem-4 (predeterminada) con 4 CPU virtuales y 32 GB de memoria, highmem-8 con 8 CPU virtuales y 64 GB de memoria, o highmem-16 con 16 CPU virtuales y 128 GB de memoria, o selecciona una forma Estándar, como standard-4 con 4 CPU virtuales y 16 GB de memoria, standard-8 con 8 CPU virtuales y 32 GB de memoria, o standard-16 con 16 CPU virtuales y 64 GB de memoria. Las formas de memoria alta solo están disponibles en el nivel Premium.

      • Acelerado: Proporciona formas de máquinas conectadas a GPU adecuadas para cargas de trabajo de ciencia de datos y entrenamiento e inferencia de IA o AA. Si seleccionas una forma Acelerada, el nivel cambia automáticamente a Premium y el nivel de disco a SSD (premium) con un tamaño predeterminado de 375 GiB. En la lista Tipo de ejecutor, selecciona una forma L4 con 4, 8, 12, 16, 24, 48 o 96 CPUs virtuales, o selecciona una forma A100, como A100 40GB (12 vCPU) o A100 80GB (12 vCPU).

  4. Opcional: Para personalizar la configuración avanzada del entorno de ejecución, el procesamiento, el ajuste de escala automático, el almacén de metadatos, la red, la seguridad, el ciclo de vida o las propiedades, haz clic en Configuración adicional para expandir el panel. Junto a cualquier categoría que quieras personalizar, haz clic en Editar, establece la configuración en el panel y, luego, haz clic en Guardar:

    • Configuración del entorno de ejecución: Configura el identificador del entorno de ejecución, la versión de Spark, la imagen de contenedor, el bucket de etapa de pruebas y el repositorio de paquetes de Python:

      • Nombre del perfil de entorno de ejecución: obligatorio. Acepta el ID del recurso generado derivado del nombre visible o ingresa un ID personalizado. El ID debe tener entre 4 y 63 caracteres, contener solo letras minúsculas, números y guiones, comenzar y terminar con una letra minúscula o un número, y no se puede cambiar después de crear el perfil de entorno de ejecución.

      • Versión del entorno de ejecución de Spark: obligatorio. Selecciona una versión del entorno de ejecución de Managed Service para Apache Spark compatible.

      • Imagen de Spark personalizada: opcional. Ingresa el URI de Artifact Registry o Container Registry de una imagen de contenedor personalizada que incluya dependencias de Java o Python personalizadas.

      • Bucket de etapa de pruebas: opcional. Haz clic en Explorar para seleccionar o crear un bucket de etapa de pruebas de Cloud Storage en el que se almacenarán las dependencias de la carga de trabajo, el resultado del controlador de trabajos y los archivos de configuración. Si se deja vacío, Managed Service para Apache Spark administra automáticamente el bucket de etapa de pruebas (indicado por Auto en el resumen).

      • Repositorio de paquetes de Python: opcional. Ingresa el URI de un repositorio personalizado, como https://pypi.org/simple, para instalar paquetes de Python. Si se deja vacío, los paquetes se instalan desde la caché de extracción de PyPI administrada por Google (el resumen predeterminado).

    • Configuración del ejecutor y del controlador: personaliza el nivel de procesamiento, el nivel de disco, el tamaño del disco y la configuración del controlador independiente:

      • Nivel: Selecciona Premium, que incluye la casilla de verificación opcional Habilitar Lightning Engine para acelerar el rendimiento, o Estándar.

      • Tipo de ejecutor: Selecciona una forma de máquina General High memory o Standard, o una forma de máquina Acelerada L4 o A100.

      • Nivel de disco: Selecciona HDD (standard) o SSD (premium). HDD (standard) es el valor predeterminado para las formas de CPU y es obligatorio en el nivel Estándar. SSD (premium) está disponible en el nivel Premium para cargas de trabajo con muchas operaciones de Shuffle o desbordamiento, y es obligatorio para las formas de GPU aceleradas.

      • Tamaño del disco: Selecciona un tamaño de disco en GiB. HDD (standard) admite de 200 GiB a 1500 GiB en incrementos de 100 GiB, con un valor predeterminado de 200 GiB. SSD (premium) admite 375 GiB, 750 GiB o 1500 GiB, con un valor predeterminado de 375 GiB.

      • Usar otra configuración para el controlador: opcional. De forma predeterminada, el controlador usa la misma forma de máquina y configuración de disco que el ejecutor. Selecciona esta casilla de verificación para personalizar el tipo de máquina del controlador, el nivel de disco del controlador y el tamaño del disco del controlador de forma independiente.

    • Escalado automático: Configura la asignación dinámica de recursos para escalar los ejecutores según la demanda de la carga de trabajo:

      • Habilitado: Se selecciona de forma predeterminada, lo que establece spark.dynamicAllocation.enabled. Desmarca esta casilla de verificación para inhabilitar el ajuste de escala automático.

      • Ejecutores iniciales: Ingresa la cantidad inicial de ejecutores, que establece spark.dynamicAllocation.initialExecutors. El valor predeterminado es 5. Los valores válidos varían de 2 a 2000 para las versiones del entorno de ejecución 2.3 y anteriores, o de 0 a 2000 para la versión del entorno de ejecución 3.0 y posteriores.

      • Cantidad mínima de ejecutores: Ingresa la cantidad mínima de ejecutores, que establece spark.dynamicAllocation.minExecutors. El valor predeterminado es 2 para las versiones del entorno de ejecución 2.3 y anteriores, o 0 para la versión del entorno de ejecución 3.0 y posteriores, con un límite superior de 2000.

      • Cantidad máxima de ejecutores: Ingresa la cantidad máxima de ejecutores, que establece spark.dynamicAllocation.maxExecutors. El valor predeterminado es 1000, con un límite máximo permitido de 2000.

    • Configuración de metastore: Selecciona el metastore que administra los metadatos de tu conjunto de datos:

      • Catálogo de tiempo de ejecución de Lakehouse: predeterminado. Usa un catálogo de entorno de ejecución de Lakehouse sin servidores en el proyecto actual, con el extremo de REST de Iceberg habilitado de forma predeterminada. Puedes especificar el ID del proyecto y elegir un ID de catálogo existente o definir un catálogo nuevo. También puedes seleccionar la casilla de verificación Extremo de Hive para especificar un ID del proyecto, un ID del catálogo y un Nombre del catálogo del extremo de Hive.

      • Dataproc Metastore: Adjunta una instancia de Hive Metastore (HMS) de Dataproc Metastore administrada. Selecciona el proyecto en Proyecto seleccionado y elige una instancia de servicio en la lista Servicio de Metastore.

      • Ninguno: Inhabilita la integración del almacén de metadatos para las sesiones que usan este perfil de entorno de ejecución.

    • Red y seguridad: Configura las redes de VPC, las credenciales de ejecución y las claves de encriptación:

      • Conecta tu clúster: En Configuración de red, la consola de Google Cloud selecciona automáticamente una red o subred apta en la región elegida. Si la región elegida no tiene una red predeterminada disponible, se abrirá automáticamente la sección Configuración adicional y se mostrará una advertencia que indica que la red predeterminada no está disponible. En esta situación, el botón Crear permanece inhabilitado hasta que hagas clic en Configurar red y selecciones una subred disponible. Puedes seleccionar Redes en este proyecto para elegir una Red principal y una Subred en el proyecto actual, o seleccionar Redes compartidas desde el proyecto host para elegir una subred de VPC compartida. La subred seleccionada debe tener habilitado el Acceso privado a Google (PGA). Para conocer los requisitos de conectividad de red, consulta Conectividad de subred abierta. También puedes ingresar etiquetas de red opcionales para aplicar reglas y rutas de firewall a las VMs de carga de trabajo.

      • Ejecutar notebooks con: Selecciona Cuenta de usuario, que es la opción predeterminada, para ejecutar notebooks con credenciales de usuario final, o selecciona Cuenta de servicio para ejecutar sesiones con una cuenta de servicio personalizada. Cuando se selecciona Cuenta de servicio, es obligatorio especificar una cuenta de servicio en el campo Cuenta de servicio.

      • Encriptación: Selecciona Google-owned and Google-managed encryption key, que es la opción predeterminada, o selecciona Clave de Cloud KMS para encriptar los datos de la carga de trabajo con una clave de encriptación administrada por el cliente (CMEK).

    • Ciclo de vida de la sesión: Configura los límites de finalización automática de la sesión:

      • Tiempo de inactividad máximo: opcional. Ingresa una Cantidad máxima de tiempo de inactividad y selecciona una Unidad máxima de tiempo de inactividad en seconds, minutes, hours o days, de 10 minutos a 330 horas, para especificar cuánto tiempo puede permanecer inactiva una sesión de notebook antes de que finalice automáticamente.

      • Tiempo máx. de sesión: opcional. Ingresa una cantidad de tiempo máximo de sesión y selecciona una unidad de tiempo máximo de sesión en seconds, minutes, hours o days, de 10 minutos a 330 horas, para especificar la duración máxima de una sesión.

    • Otras personalizaciones: Agrega propiedades de Spark y etiquetas de recursos personalizadas:

      • Propiedades de Spark: opcional. Haz clic en Agregar propiedad y, luego, ingresa los pares Clave y Valor para las propiedades personalizadas de Spark. Las propiedades controladas por campos dedicados en el formulario (como el nivel de procesamiento, el tamaño del ejecutor y del controlador, Lightning Engine, spark.dynamicAllocation.* y las propiedades del catálogo de Lakehouse) se administran con esos campos y se ocultan de la lista de formato libre. En la consola de Google Cloud , no incluyas el prefijo spark:.

      • Etiquetas: opcional. Haz clic en Agregar etiqueta y, luego, ingresa los pares de Clave y Valor para adjuntar etiquetas al perfil de entorno de ejecución.

  5. Revisa los detalles de configuración en la tarjeta Resumen y el uso estimado de la unidad de procesamiento de datos (DCU) en la tarjeta Estimación de precios que se encuentra en el lado derecho de la página. Para obtener más información sobre los cargos de DCU, consulta Precios de Managed Service para Apache Spark.

  6. Haz clic en Crear.

gcloud

En gcloud CLI, los perfiles de entorno de ejecución se administran como plantillas de sesión. No puedes crear directamente un perfil de entorno de ejecución de Managed Service para Apache Spark con un comando create en gcloud CLI, pero puedes usar el comando gcloud beta dataproc session-templates import para crear o actualizar un perfil de entorno de ejecución desde un archivo de configuración YAML. También puedes exportar un perfil de entorno de ejecución existente con el comando gcloud beta dataproc session-templates export.

REST

En la API de Managed Service para Apache Spark, los perfiles de entorno de ejecución se representan con recursos SessionTemplate. Puedes usar el método de la API de Managed Service para Apache Spark sessionTemplates.create para crear un perfil de entorno de ejecución de Managed Service para Apache Spark. Configura los siguientes campos de solicitud: