設定 Dataflow 工作站 VM

本文說明如何設定 Dataflow 工作的背景工作 VM。

根據預設,Dataflow 會為執行作業的工作站 VM 選取機器類型,以及永久磁碟的大小和類型。如要設定工作站 VM,請在建立工作時設定下列管道選項

機型

Dataflow 啟動工作站 VM 時使用的 Compute Engine 機器類型。您可以使用 x86 或 Arm 機器類型,包括自訂機器類型。

Java

設定 workerMachineType 管道選項。

Python

設定 machine_type 管道選項。

Go

設定 worker_machine_type 管道選項。

自訂機器類型

如要指定自訂機器類型,請使用下列格式:FAMILY-vCPU-MEMORY。取代下列項目:

  • FAMILY. 請使用下列其中一個值:
    機器系列
    N1custom
    N2n2-custom
    N2Dn2d-custom
    N4

    如要執行串流工作,必須啟用 Streaming Engine
    對於批次工作,必須啟用 Dataflow Shuffle (預設)。
    n4-custom
    E2e2-custom
  • vCPU。vCPU 數量。
  • MEMORY。記憶體大小 (以 MB 為單位)。

如要啟用擴充記憶體,請在機器類型後方附加 -ext。例如:n2-custom-6-3072n2-custom-2-32768-ext

如要進一步瞭解有效的自訂機器類型,請參閱 Compute Engine 說明文件中的「自訂機器類型」。

磁碟類型

要使用的永久磁碟類型。

使用串流引擎或 N4機器類型時,請勿指定永久磁碟。

Java

設定 workerDiskType 管道選項。

Python

設定 worker_disk_type 管道選項。

Go

設定 disk_type 管道選項。

如要指定磁碟類型,請使用下列格式:compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE

更改下列內容:

  • PROJECT_ID:您的專案 ID
  • :永久磁碟的可用區,例如 us-central1-bZONE
  • DISK_TYPE:磁碟類型,可能是 pd-ssdpd-standard

詳情請參閱 Compute Engine API 參考資料頁面的 diskTypes 說明。

磁碟大小

永久磁碟大小。

Java

設定 diskSizeGb 管道選項。

Python

設定 disk_size_gb 管道選項。

Go

設定 disk_size_gb 管道選項。

如果設定這個選項,請指定至少 30 GB,以存放工作站開機映像檔和本機記錄檔。

調降磁碟大小會減少可用的隨機處理 I/O。如果受重組作業限制的工作未使用 Dataflow Shuffle 或 Streaming Engine,可能會導致執行時間和工作費用增加。

Batch 工作

如為使用 Dataflow Shuffle 的批次作業,這個選項會設定工作站 VM 開機磁碟的大小。如果批次工作未使用 Dataflow Shuffle,這個選項會設定用於儲存 Shuffle 資料的磁碟大小,開機磁碟大小則不受影響。

如果批次工作使用 Dataflow Shuffle,預設磁碟大小為 25 GB。否則預設為 250 GB。

串流工作

如果是使用 Streaming Engine 的串流工作,這個選項會設定啟動磁碟的大小。對於未使用 Streaming Engine 的串流工作,這個選項會設定 Dataflow 服務建立的每個額外永久磁碟大小,開機磁碟則不受影響。

如果串流工作未使用 Streaming Engine,您可以使用實驗旗標 streaming_boot_disk_size_gb 設定開機磁碟大小。舉例來說,指定 --experiments=streaming_boot_disk_size_gb=80 即可建立 80 GB 的開機磁碟。

如果串流工作使用 Streaming Engine,預設磁碟大小為 30 GB。否則預設為 400 GB。

使用 Cloud Storage FUSE 將 Cloud Storage 值區掛接到 Dataflow VM

Cloud Storage FUSE 可讓您直接透過 Dataflow VM 掛接 Cloud Storage 值區,讓軟體存取檔案,就像存取本機檔案一樣。這項整合功能可免除預先下載資料的需要,簡化工作負載的資料存取程序。詳情請參閱使用 Dataflow 和 Cloud Storage FUSE 處理 ML 資料

後續步驟