Questo documento descrive come configurare le VM worker per un job Dataflow.
Per impostazione predefinita, Dataflow seleziona il tipo di macchina per le VM worker che eseguono il job, nonché le dimensioni e il tipo di Persistent Disk. Per configurare le VM worker, imposta le seguenti opzioni della pipeline quando crei il job.
Tipo di macchina
Il tipo di macchina Compute Engine utilizzato da Dataflow per avviare le VM di lavoro. Puoi utilizzare tipi di macchine x86 o Arm, inclusi i tipi di macchine personalizzate.
Java
Imposta l'opzione della pipeline workerMachineType
.
Python
Imposta l'opzione della pipeline machine_type
.
Vai
Imposta l'opzione della pipeline worker_machine_type
.
Per Arm, è supportata la serie di macchine Tau T2A. Per ulteriori informazioni sull'utilizzo delle VM Arm, consulta Utilizzare le VM Arm in Dataflow.
I tipi di macchine con core condivisi, ad esempio i worker delle serie
f1
eg1
, non sono supportati dall'accordo sul livello del servizio di Dataflow.La fatturazione è indipendente dalla famiglia di tipo di macchina. Per ulteriori informazioni, consulta Prezzi di Dataflow.
Tipi di macchine personalizzate
Per specificare un tipo di macchina personalizzata, utilizza il seguente formato:
FAMILY-vCPU-MEMORY
. Sostituisci quanto segue:
- FAMILY. Utilizza uno dei seguenti valori:
Serie di macchine Valore N1 custom
N2 n2-custom
N2D n2d-custom
N4 n4-custom
E2 e2-custom
- vCPU. Il numero di vCPU.
- MEMORY. La memoria, in MB.
Per attivare la memoria estesa, accoda -ext
al tipo di macchina. Esempi: n2-custom-6-3072
,
n2-custom-2-32768-ext
.
Per saperne di più sui tipi di macchine personalizzate validi, consulta Tipi di macchine personalizzate nella documentazione di Compute Engine.
Tipo di disco
Il tipo di disco permanente da utilizzare.
Non specificare un Persistent Disk quando utilizzi Streaming Engine.
Java
Imposta l'opzione della pipeline workerDiskType
.
Python
Imposta l'opzione della pipeline worker_disk_type
.
Vai
Imposta l'opzione della pipeline disk_type
.
Per specificare il tipo di disco, utilizza il seguente formato:
compute.googleapis.com/projects/PROJECT_ID/zones/ZONE/diskTypes/DISK_TYPE
.
Sostituisci quanto segue:
- PROJECT_ID: il tuo ID progetto
- ZONE: la zona del Persistent Disk, ad esempio
us-central1-b
- DISK_TYPE: il tipo di disco,
pd-ssd
opd-standard
Per ulteriori informazioni, consulta la pagina di riferimento dell'API Compute Engine relativa a diskTypes.
Dimensione disco
La dimensione del disco permanente.
Java
Imposta l'opzione della pipeline diskSizeGb
.
Python
Imposta l'opzione della pipeline disk_size_gb
.
Vai
Imposta l'opzione della pipeline disk_size_gb
.
Se imposti questa opzione, specifica almeno 30 GB per tenere conto dell'immagine di avvio del worker e dei log locali.
La riduzione delle dimensioni del disco riduce le operazioni di I/O di mescolamento disponibili. I job con vincoli di ordinamento che non utilizzano Dataflow Shuffle o Streaming Engine possono comportare un aumento del tempo di esecuzione e del costo del job.
Job in batch
Per i job batch che utilizzano Dataflow Shuffle, questa opzione imposta le dimensioni del disco di avvio di una VM worker. Per i job batch che non utilizzano Dataflow Shuffle, questa opzione imposta le dimensioni dei dischi utilizzati per archiviare i dati sottoposti a shuffling. Le dimensioni del disco di avvio non sono interessate.
Se un job batch utilizza Dataflow Shuffle, le dimensioni predefinite del disco sono di 25 GB. In caso contrario, il valore predefinito è 250 GB.
Job in modalità flusso
Per i job di streaming che utilizzano Streaming Engine, questa opzione imposta le dimensioni dei dischi di avvio. Per i job in streaming che non utilizzano Streaming Engine, questa opzione imposta le dimensioni di ogni disco aggiuntivo persistente creato dal servizio Dataflow. Il disco di avvio non è interessato.
Se un job di streaming non utilizza Streaming Engine, puoi impostare le dimensioni del disco di avvio
con il flag dell'esperimento streaming_boot_disk_size_gb
. Ad esempio, specifica
--experiments=streaming_boot_disk_size_gb=80
per creare dischi di avvio da 80 GB.
Se un job di streaming utilizza Streaming Engine, la dimensione predefinita del disco è di 30 GB. In caso contrario, il valore predefinito è 400 GB.