Información general sobre Serverless para Apache Spark

Serverless para Apache Spark te permite ejecutar cargas de trabajo de Spark sin tener que aprovisionar ni gestionar tu propio clúster de Dataproc. Hay dos formas de ejecutar cargas de trabajo de Serverless para Apache Spark:

Cargas de trabajo por lotes

Envía una carga de trabajo por lotes al servicio Serverless para Apache Spark mediante laGoogle Cloud consola, la CLI de Google Cloud o la API de Dataproc. El servicio ejecuta la carga de trabajo en una infraestructura de computación gestionada y adapta los recursos automáticamente según sea necesario. Los cargos de Serverless para Apache Spark solo se aplican durante el tiempo en que se ejecuta la carga de trabajo.

Para empezar, consulta el artículo Ejecutar una carga de trabajo por lotes de Apache Spark.

Sesiones interactivas

Escribe y ejecuta código en cuadernos de Jupyter durante una sesión interactiva de Serverless para Apache Spark. Puedes crear una sesión de cuaderno de las siguientes formas:

  • Ejecutar código de PySpark en cuadernos de BigQuery Studio. Usa el cuaderno de Python de BigQuery para crear una sesión interactiva de Serverless para Apache Spark basada en Spark Connect. Cada cuaderno de BigQuery solo puede tener una sesión activa de Serverless para Apache Spark asociada.

  • Usa el complemento JupyterLab de Dataproc para crear varias sesiones de cuaderno de Jupyter a partir de plantillas que crees y gestiones. Cuando instalas el complemento en una máquina local o en una VM de Compute Engine, aparecen diferentes tarjetas en la página de inicio de JupyterLab que corresponden a distintas configuraciones del kernel de Spark. Haz clic en una tarjeta para crear una sesión de cuaderno de Serverless para Apache Spark y, a continuación, empieza a escribir y probar tu código en el cuaderno.

    El complemento JupyterLab de Dataproc también te permite usar la página de inicio de JupyterLab para hacer lo siguiente:

    • Crea clústeres de Dataproc en Compute Engine.
    • Envía trabajos a clústeres de Dataproc en Compute Engine.
    • Consulta los registros de Google Cloud y Spark.

Comparación entre Serverless para Apache Spark y Dataproc en Compute Engine

Si quieres aprovisionar y gestionar la infraestructura, y luego ejecutar cargas de trabajo en Spark y otros frameworks de procesamiento de código abierto, usa Dataproc en Compute Engine. En la siguiente tabla se enumeran las principales diferencias entre Dataproc en Compute Engine y Serverless para Apache Spark.

Competencia Serverless para Apache Spark Dataproc en Compute Engine
Frameworks de procesamiento Cargas de trabajo por lotes: Spark 3.5 y versiones anteriores
Sesiones interactivas: Spark 3.5 y versiones anteriores
Spark 3.5 y versiones anteriores. Otros frameworks de código abierto, como Hive, Flink, Trino y Kafka
Sin servidor No
Tiempo de inicio 60s 90s
Control de la infraestructura No
Gestión de recursos Basada en Spark Basado en YARN
Compatibilidad con GPU
Sesiones interactivas No
Contenedores personalizados No
Acceso a la VM (por ejemplo, SSH) No
Versiones de Java Java 17 y 11 Versiones anteriores compatibles

Seguridad y cumplimiento

Serverless para Apache Spark cumple todos los requisitos de residencia de datos, CMEK, VPC-SC y otros requisitos de seguridad que cumple Dataproc.

Funciones de cargas de trabajo por lotes

Puedes ejecutar los siguientes tipos de cargas de trabajo por lotes de Serverless para Apache Spark:

  • PySpark
  • Spark SQL
  • Spark R
  • Spark (Java o Scala)

Puedes especificar propiedades de Spark al enviar una carga de trabajo por lotes de Serverless para Apache Spark.