View a markdown version of this page

Uso de Spark Connect con sesiones interactivas de AWS Glue - AWS Glue

Uso de Spark Connect con sesiones interactivas de AWS Glue

Apache Spark Connect incorpora una arquitectura cliente-servidor desacoplada que separa la aplicación del proceso del controlador de Spark. Con Spark Connect, las sesiones interactivas de AWS Glue se benefician de un cliente ligero que se inicia más rápido, utiliza menos recursos locales y proporciona compatibilidad nativa con las API de PySpark DataFrame y SQL. Puede utilizar las sesiones interactivas de AWS Glue desde el IDE o con las herramientas que prefiera para los cuadernos.

Spark Connect es compatible de forma nativa en la versión 5.1 de AWS Glue y versiones posteriores. Puede conectarse a una sesión interactiva de AWS Glue directamente desde un entorno compatible con la API remote() de PySpark.

Comparación de los tipos de sesiones: Livy y Spark Connect

Las sesiones interactivas de AWS Glue son compatibles con dos tipos de sesiones. En la siguiente tabla se comparan las sesiones basadas en Livy y las sesiones de Spark Connect.

Característica Livy Spark Connect

Protocolo

REST

gRPC (para enviar planes de ejecución lógica) + Apache Arrow (para transmitir los resultados)

Método de conexión

API de instrucciones (RunStatement, CancelStatement, GetStatement, ListStatements)

Conexión directa a través de la URL del punto de conexión mediante la API remote() de PySpark

Requisitos del cliente

Paquete aws-glue-sessions para kernels o AWS SDK

Compatibilidad de PySpark con Spark Connect

Compatibilidad con IDE

A través de Jupyter con el kernel de SparkMagic

Cuadernos en el Estudio unificado de SageMaker o IDE con intérpretes de Python como VS Code, PyCharm y otros

Cuándo usar Spark Connect

Utilice las sesiones de Spark Connect cuando necesite acceso directo y programático a una sesión interactiva de AWS Glue desde su entorno de desarrollo. A continuación se indican algunos casos de uso comunes:

  • Cuadernos en el Estudio unificado de SageMaker: conéctese a las sesiones interactivas de AWS Glue directamente desde su entorno de cuadernos para una exploración interactiva de datos.

  • IDE como VS Code o PyCharm: utilice PySpark desde su IDE preferido para desarrollar y probar aplicaciones de Spark en un clúster remoto de AWS Glue.

  • Aplicaciones y scripts de Python: acceda a las sesiones interactivas de AWS Glue mediante programación desde una aplicación de Python que utilice la API remote() de PySpark.

Disponibilidad por región

Las sesiones interactivas de AWS Glue con Spark Connect están disponibles en las siguientes regiones de AWS:

  • Asia-Pacífico (Mumbai)

  • Asia-Pacífico (Seúl)

  • Asia-Pacífico (Singapur)

  • Asia-Pacífico (Sídney)

  • Asia-Pacífico (Tokio)

  • Canadá (centro)

  • Europa (Fráncfort)

  • Europa (Irlanda)

  • Europa (Londres)

  • Europa (París)

  • Europa (Estocolmo)

  • América del Sur (São Paulo)

  • Este de EE. UU. (Ohio)

  • Este de EE. UU. (Norte de Virginia)

  • Oeste de EE. UU. (Oregón)

Consideraciones y limitaciones

Tenga presente lo siguiente al utilizar Spark Connect con las sesiones interactivas de AWS Glue:

  • Spark Connect está disponible para las sesiones interactivas de AWS Glue que ejecuten la versión 5.1 de AWS Glue y versiones posteriores.

  • Las API de instrucciones (RunStatement, CancelStatement, GetStatement y ListStatements) no son compatibles con las sesiones de Spark Connect. Usted interactúa directamente con la sesión a través del cliente PySpark.

  • No puede cambiar el tipo de sesión después de crear la sesión. Para cambiar entre Livy y Spark Connect, debe crear una sesión nueva.

  • Spark Connect no es compatible con AWS Glue Studio. Para el desarrollo interactivo con AWS Glue, puede utilizar los cuadernos del Estudio unificado de Sagemaker o sus IDE preferidos con intérpretes de Python.

  • No se admite un control de acceso detallado mediante Lake Formation en las sesiones de Spark Connect.