Snowflake stellt Snowpark Connect für Apache Spark in der öffentlichen Vorschau vor


Anwender, die Spark nutzen, können die Leistung der Snowflake-Engine direkt mit ihrem bestehenden Spark-Code nutzen. Snowpark Connect für Apache Spark basiert auf einer entkoppelten Client-Server-Architektur, die es ermöglicht, den Benutzercode vom Spark-Cluster zu trennen, auf dem die Verarbeitung ausgeführt wird. Diese neue Architektur ermöglicht es nun, Spark-Jobs von Snowflake auszuführen, und wurde von der Apache Spark-Community in Version 3.4 vorgestellt.
Mit Snowpark Connect können Kunden die vektorisierte Engine von Snowflake für ihren Spark-Code nutzen und so die Komplexität der Wartung oder Anpassung separater Spark-Umgebungen vermeiden, einschließlich der Verwaltung von Abhängigkeiten, Versionskompatibilität und Updates. Mit Snowpark Connect kann der gesamte moderne Code von Spark DataFrame, Spark SQL und benutzerdefinierten Funktionen (UDF) mit Snowflake ausgeführt werden.
Snowflake kümmert sich automatisch um die gesamte Leistungsoptimierung und Skalierung, sodass Entwickler sich nicht mehr um den Betrieb von Spark kümmern müssen. Durch die Verlagerung der Datenverarbeitung auf Snowflake wird außerdem von Anfang an ein einheitliches und robustes Governance-Framework eingerichtet, das die Konsistenz und Sicherheit der Daten während des gesamten Lebenszyklus gewährleistet, ohne dass doppelte Arbeit anfällt.
Entwickelt auf Spark Connect und der Snowflake-Architektur
Snowpark Connect für Spark nutzt die entkoppelte Architektur von Spark Connect, die es Anwendungen ermöglicht, einen unaufgelösten logischen Plan zur Verarbeitung an einen entfernten Spark-Cluster zu senden. Diese Philosophie der Trennung von Client und Server war von Anfang an ein wesentlicher Bestandteil des Designs von Snowpark. Derzeit unterstützt Snowpark Connect die Spark-Versionen 3.5.x und stellt damit die Kompatibilität mit den neuesten Funktionen und Verbesserungen dieser Versionen sicher.
Durch diese Innovation entfällt die Notwendigkeit, Daten zwischen Spark und Snowflake zu verschieben – ein Prozess, der in der Vergangenheit zusätzliche Kosten, Latenz und Komplexität bei der Governance verursacht hat. Jetzt können Unternehmen Spark DataFrame-, SQL- und UDF-Code in Snowflake über Snowflake Notebooks, Jupyter-Notebooks, gespeicherte Snowflake-Prozeduren, VSCode, Airflow oder Snowpark Submit ausführen, was eine nahtlose Integration in verschiedene Speicher in Snowflake, Iceberg (in Snowflake oder extern verwaltet) und Cloud-Speicheroptionen ermöglicht.