您可以使用 Dataproc Serverless 執行 Spark 工作負載,而無須自行佈建及管理 Dataproc 叢集。您可以透過兩種方式執行 Dataproc Serverless 工作負載:
無伺服器型 Dataproc 批次工作負載
使用Google Cloud 控制台、Google Cloud CLI 或 Dataproc API,將批次工作負載提交至 Dataproc Serverless 服務。這項服務會在受管理的運算基礎架構上執行工作負載,並視需要自動調度資源。Dataproc Serverless 費用僅適用於工作負載執行期間。
如要開始使用,請參閱「執行 Apache Spark 批次工作負載」。
Dataproc Serverless 互動工作階段
在 Dataproc Serverless for Spark 互動工作階段中,在 Jupyter 筆記本中編寫及執行程式碼。您可以透過下列方式建立 Notebook 工作階段:
在 BigQuery Studio 筆記本中執行 PySpark 程式碼。使用 BigQuery Python 筆記本建立以 Spark-Connect 為基礎的 Dataproc Serverless 互動式工作階段。每個 BigQuery 筆記本只能與一個有效的 Dataproc 無伺服器工作階段建立關聯。
使用 Dataproc JupyterLab 外掛程式,根據您建立及管理的範本建立多個 Jupyter Notebook 工作階段。在本機機器或 Compute Engine VM 上安裝外掛程式時,JupyterLab 啟動器頁面會顯示與不同 Spark 核心設定相對應的不同資訊卡。按一下資訊卡即可建立 Dataproc Serverless 的筆記本工作階段,然後開始在筆記本中編寫及測試程式碼。
Dataproc JupyterLab 外掛程式還可讓您使用 JupyterLab 啟動器頁面執行下列操作:
- 建立 Dataproc on Compute Engine 叢集。
- 將工作提交至 Compute Engine 叢集上的 Dataproc。
- 查看 Google Cloud 和 Spark 記錄檔。
Dataproc Serverless 與 Dataproc on Compute Engine 的比較
如果您想佈建及管理基礎架構,然後在 Spark 和其他開放原始碼處理架構上執行工作負載,請使用 Compute Engine 上的 Dataproc。下表列出 Compute Engine 上的 Dataproc 和 Dataproc Serverless 之間的主要差異。
功能 | Dataproc Serverless | 在 Compute Engine 上執行 Dataproc |
---|---|---|
處理架構 | 批次工作負載:Spark 3.5 以下版本 互動式工作階段:Spark 3.5 以下版本 |
Spark 3.5 以下版本。其他開放原始碼架構,例如 Hive、Flink、Trino 和 Kafka |
無伺服器 | 是 | 否 |
啟動時間 | 60 秒 | 90 秒 |
基礎架構控制 | 否 | 是 |
資源管理 | 以 Spark 為基礎 | YARN 架構 |
GPU 支援 | 是 | 是 |
互動工作階段 | 是 | 否 |
自訂容器 | 是 | 否 |
VM 存取權 (例如 SSH) | 否 | 是 |
Java 版本 | Java 17、11 | 支援的舊版 |
OS Login
支援 * |
否 | 是 |
注意:
- OS 登入政策不適用於 Dataproc Serverless,也未受 Dataproc Serverless 支援。如果貴機構強制執行
OS Login
政策,其 Dataproc Serverless 工作負載就會失敗。
Dataproc Serverless 安全性符合性
Dataproc Serverless 會遵循所有 資料儲存地點、CMEK、VPC-SC 和其他 Dataproc 支援的安全性規定。
Dataproc Serverless 批次工作負載功能
您可以執行下列 Dataproc Serverless 批次工作負載類型:
- PySpark
- Spark SQL
- Spark R
- Spark (Java 或 Scala)
提交 Dataproc Serverless 批次工作負載時,您可以指定 Spark 屬性。