什么是 Dataproc Serverless?

借助 Dataproc Serverless,您可以运行 Spark 工作负载,而无需预配和管理自己的 Dataproc 集群。您可以通过以下两种方式运行 Dataproc Serverless 工作负载:

适用于 Spark Batch 的 Dataproc Serverless

使用 Google Cloud 控制台、Google Cloud CLI 或 Dataproc API 将批量工作负载提交到 Dataproc Serverless 服务。该服务将在托管式计算基础架构上运行工作负载,并根据需要自动扩缩资源。Dataproc 无服务器费用仅适用于执行工作负载的时间。

如需开始使用,请参阅运行 Apache Spark 批处理工作负载

适用于 Spark Interactive 的 Dataproc Serverless

在 Dataproc Serverless for Spark Interactive 会话期间,在 Jupyter 笔记本中编写和运行代码。您可以通过以下方式创建笔记本会话:

  • 使用 Dataproc JupyterLab 插件,根据您创建和管理的模板创建多个笔记本会话。在本地机器或 Compute Engine 虚拟机上安装插件时,JupyterLab 启动器页面上会显示与不同 Spark 内核配置对应的不同卡片。点击卡片即可创建 Dataproc Serverless 笔记本会话,然后开始在笔记本中编写和测试您的代码。

    借助 Dataproc JupyterLab 插件,您还可以使用 JupyterLab 启动器页面执行以下操作:

    • 创建 Dataproc on Compute Engine 集群。
    • 将作业提交到 Dataproc on Compute Engine 集群。
    • 查看 Google Cloud 和 Spark 日志。

如需开始使用,请参阅使用 JupyterLab 进行无服务器批量和交互式笔记本会话

Dataproc Serverless for Spark 与 Dataproc on Compute Engine

如果要预配和管理基础架构,然后在 Spark 和其他开源处理框架上执行工作负载,Compute Engine 上的 Dataproc 是您的理想选择。下表列出了 Dataproc on Compute Engine 与 Dataproc Serverless for Spark 之间的主要区别。

能力 Dataproc Serverless for Spark Dataproc on Compute Engine
处理框架 批处理:Spark 3.4 及更低版本
互动:适用于 Spark 3.4 及更低版本的 PySpark 内核
Spark 3.3 及更低版本。其他开源框架,如 Hive、Flink、Trino 和 Kafka
无服务器
启动时间 60 秒 90 秒
基础架构控制
资源管理 基于 Spark 基于 YARN
GPU 支持
交互式会话
自定义容器
虚拟机访问权限(例如 SSH)
Java 版本 Java 17、11 支持过往版本
OS Login 支持 *

备注:

  • 操作系统登录政策不适用于 Dataproc Serverless,也不受其支持。如果您的组织强制执行 OS Login 政策,则其 Dataproc Serverless 工作负载将会失败。

Dataproc 无服务器安全合规性

Dataproc 无服务器遵循所有数据驻留CMEKVPC-SC 以及 Dataproc 符合的其他安全要求。

Dataproc Serverless for Spark 批量工作负载功能

您可以运行以下 Dataproc Serverless for Spark 批处理工作负载类型:

  • Pyspark
  • Spark SQL
  • Spark R
  • Spark(Java 或 Scala)

提交 Dataproc Serverless for Spark 批量工作负载时,您可以指定 Spark 属性