使用 Snowpark Connect for Spark 在 Snowflake 上运行 Spark 工作负载

使用 Snowpark Connect for Spark,您可以将现有 Spark 工作负载直接连接到 Snowflake,然后在 Snowflake 计算引擎上运行。Snowpark Connect for Spark 支持在 Snowflake 上使用 Spark DataFrame API (https://spark.apache.org/docs/latest/sql-programming-guide.html)。所有工作负载都在 Snowflake 仓库上运行。因此,您可以运行 PySpark 数据帧代码,并获得 Snowflake 引擎的所有优势。

在 Apache Spark™ 3.4 版中,Apache Spark 社区引入了 Spark Connect。它具有解耦的客户端-服务器架构,将用户的代码与完成工作的 Spark 集群分离开来。这种新架构使 Snowflake 可以为 Spark 作业提供支持。

您可以 使用自己熟悉的客户端工具进行开发

Snowpark Connect for Spark 提供以下优势:

  • 解耦客户端和服务器,让 Spark 代码可以在 Snowflake 计算引擎上远程运行,您不需要管理 Spark 集群。

  • 让团队能够使用其现有生态系统来编写和编排 Spark 工作负载,例如 Jupyter 笔记本、VS Code 和 Airflow。

  • 允许您在迁移或更改最少的前提下重复使用开源 Spark 数据帧和 Spark SQL 代码。

  • 提供一种精简的方式,将 Snowflake 的治理、安全性和可扩展性集成到基于 Spark 的工作流中,并以 Snowflake 的下推优化支持熟悉的 PySpark 体验。

  • 允许您任意使用多种语言,包括 PySpark 和 Spark SQL。

开始使用 Snowpark Connect for Spark

要开始使用 Snowpark Connect for Spark,请按照以下步骤操作:

  1. 设置客户端工具,以开发将在 Snowflake 上运行的 Spark 工作负载。

    例如,您可以使用 Snowflake 笔记本其他工具

  2. 使用 Snowpark Submit 异步运行 Spark 工作负载。

    有关更多信息,请参阅 使用 Snowpark Submit 运行 Spark 批处理工作负载

  3. 了解 Snowpark Connect for Spark 对 Spark 具体细节的支持。

    有关更多信息,请参阅 Snowpark Connect for Spark 兼容性指南

在 Snowflake 上开发和运行 Spark 工作负载

您可以使用熟悉的开发工具来开发在 Snowflake 上运行的 Spark 工作负载,然后使用 Snowpark Submit 命令行工具,以批量方式运行这些工作负载。

  • 您可以使用本地工具进行交互式开发。

    使用 Snowflake 笔记本:doc:` 等工具 </developer-guide/snowpark-connect/snowpark-connect-workloads-jupyter>`,您可以开发 Spark 工作负载。您可以使用 Snowflake 进行身份验证、启动 Spark 会话并运行 PySpark 代码来加载、转换和分析数据。

  • 您可以使用熟悉的 Spark 语义,直接在 Snowflake 基础设施上运行非交互式异步 Spark 工作负载。

    借助 Snowpark Submit,您可以使用简单易用的 CLI 界面和工具(包括 Airflow),提交可用于生产的 Spark 应用程序。

    有关更多信息,请参阅 使用 Snowpark Submit 运行 Spark 批处理工作负载

语言: 中文