Snowflake presenta Snowpark Connect para Apache Spark en vista previa pública


Esto anuncio permite a los usuarios de Spark aprovechar la potencia del motor de Snowflake directamente con su código Spark existente. Snowpark Connect para Apache Sparkse basa en la arquitectura cliente-servidor desacoplada que permite separar el código del usuario del clúster de Spark donde se ejecuta el procesamiento. Esta nueva arquitectura ahora hace posible que los trabajos de Spark sean impulsados por Snowflake, y ha sido presentada por la comunidad de Apache Spark en la versión 3.4.
Con Snowpark Connect, los clientes pueden aprovechar el motor vectorizado de Snowflake para su código Spark, evitando la complejidad de mantener o ajustar entornos Spark separados, incluyendo la gestión de dependencias, compatibilidad de versiones y actualizaciones. Con Snowpark Connect se puede ejecutar todo el código moderno de Spark DataFrame, Spark SQL y funciones definidas por el usuario (UDF) con Snowflake.
Snowflake gestiona automáticamente toda la optimización del rendimiento y el escalado, liberando a los desarrolladores de la sobrecarga operativa de gestionar Spark. Además, al llevar el procesamiento de datos a Snowflake, se establece un marco de gobernanza único y robusto en la fase inicial, lo que ayuda a garantizar la coherencia y seguridad de los datos a lo largo de todo el ciclo de vida, sin necesidad de duplicar esfuerzos.
Desarrollado sobre Spark Connect y la arquitectura Snowflake
Snowpark Connect para Spark aprovecha la arquitectura desacoplada de Spark Connect, que permite que las aplicaciones envíen un plan lógico no resuelto a un clúster Spark remoto para su procesamiento. Esta filosofía de separación cliente-servidor ha sido fundamental en el diseño de Snowpark desde sus inicios. Actualmente, Snowpark Connect es compatible con las versiones 3.5.x de Spark, asegurando la compatibilidad con las últimas funcionalidades y mejoras introducidas en dichas versiones.
Esta innovación elimina la necesidad de mover datos entre Spark y Snowflake, un proceso que históricamente ha generado costes adicionales, latencia y complejidad de gobernanza. Ahora, las organizaciones pueden ejecutar código Spark DataFrame, SQL y UDF en Snowflake a través de Snowflake Notebooks, cuadernos Jupyter, procedimientos almacenados de Snowflake, VSCode, Airflow o Snowpark Submit, lo que permite una integración perfecta en diferentes almacenamientos en Snowflake, Iceberg (en Snowflake o gestionado externamente) y opciones de almacenamiento en la nube.