Spark-Workloads auf Snowflake mit Snowpark Connect for Spark ausführen

Mit Snowpark Connect for Spark können Sie Ihre bestehenden Spark-Workloads direkt mit Snowflake verbinden und sie auf der Snowflake-Compute-Engine ausführen. Snowpark Connect for Spark unterstützt die Verwendung der Spark-DataFrame-API auf Snowflake. Alle Workloads werden auf dem Snowflake Warehouse ausgeführt. Daher können Sie Ihren PySpark-DataFrame-Code mit allen Vorteilen der Snowflake-Engine ausführen.

In Apache Spark™ 3.4 hat die Apache Spark-Community Spark Connect eingeführt. Die entkoppelte Client-Server-Architektur trennt den Code des Benutzers vom Spark-Cluster, in dem die Arbeit ausgeführt wird. Diese neue Architektur ermöglicht es Snowflake, Spark-Jobs auszuführen.

Sie können mit vertrauten Client-Tools Code entwickeln.

Snowpark Connect for Spark bietet die folgenden Vorteile:

  • Entkoppelt Client und Server, sodass Spark-Code extern auf der Snowflake-Compute-Engine ausgeführt werden kann, ohne dass Sie einen Spark-Cluster verwalten müssen.

  • Ermöglicht es Teams, über ihr bestehendes Ökosystem Spark-Workloads zu verfassen und zu orchestrieren, z. B. Jupyter-Notizbücher, VS-Code und Airflow.

  • Ermöglicht die Wiederverwendung von Open-Source-Spark-Datenframes und Spark SQL-Code mit minimalen Migrationen oder Änderungen.

  • Bietet eine optimierte Möglichkeit, Snowflake-Governance, Sicherheit und Skalierbarkeit in Spark-basierte Workflows zu integrieren, und unterstützt dabei eine vertraute PySpark-Erfahrung mit Pushdown-Optimierungen in Snowflake.

  • Ermöglicht die Verwendung mehrerer Sprachen, einschließlich PySpark und Spark SQL.

Erste Schritte mit Snowpark Connect for Spark

Gehen Sie für die ersten Schritte mit Snowpark Connect for Spark wie folgt vor:

  1. Richten Sie das Clienttool ein, mit dem Sie Spark-Workloads für die Ausführung auf Snowflake entwickeln.

    Sie können zum Beispiel Snowflake Notebooks oder ein anderes Tool verwenden.

  2. Führen Sie Spark-Workloads asynchron mit Snowpark Submit aus.

    Weitere Informationen dazu finden Sie unter Ausführen von Spark-Batch-Workloads über Snowpark Submit.

  3. Lernen Sie Snowpark Connect for Spark-Unterstützung für Spark-Details kennen.

    Weitere Informationen dazu finden Sie unter Snowpark Connect for Spark-Kompatibilitätshandbuch.

Spark-Workloads auf Snowflake entwickeln und ausführen

Sie können vertraute Entwicklungstools verwenden, um Spark-Workloads zu entwickeln, die auf Snowflake ausgeführt werden, und diese Workloads dann in Batches ausführen, indem Sie das Befehlszeilentool Snowpark Submit verwenden.

  • Sie können lokale Tools für die interaktive Entwicklung verwenden.

    Mit Tools wie Snowflake Notebooks und anderen können Sie Spark-Workloads entwickeln. Sie können sich bei Snowflake authentifizieren, eine Spark-Sitzung starten und PySpark-Code zum Laden, Transformieren und Analysieren von Daten ausführen.

  • Sie können nicht-interaktive, asynchrone Spark-Workloads direkt auf der Infrastruktur von Snowflake ausführen und dabei die bekannte Spark-Semantik verwenden.

    Mit Snowpark Submit können Sie produktionsbereite Spark-Anwendungen mit einer einfachen CLI-Schnittstelle und mit Ihren Tools, einschließlich Airflow, übermitteln.

    Weitere Informationen dazu finden Sie unter Ausführen von Spark-Batch-Workloads über Snowpark Submit.