Regioni di Dataflow

La regione Dataflow archivia e gestisce i metadati sul tuo il job di Dataflow, il deployment e il controllo del tuo Dataflow worker.

I nomi delle regioni seguono una convenzione standard basata su Nomi delle regioni di Compute Engine. Ad esempio, il nome della regione degli Stati Uniti centrali è us-central1.

Questa funzionalità è disponibile in tutte le regioni in cui è supportato Dataflow. Per visualizzare le località disponibili, consulta Località di Dataflow.

Linee guida per la scelta di una regione

È obbligatorio specificare una regione in un job Dataflow.

Sicurezza e conformità

Potresti dover limitare l'elaborazione del job Dataflow a un geografica a supporto delle esigenze di sicurezza e conformità del tuo progetto.

Località di dati

Puoi ridurre al minimo la latenza di rete e i costi di trasporto della rete eseguendo una Job Dataflow dalla stessa regione delle origini, dei sink, delle posizioni dei file temporanei e le posizioni dei file temporanei. Se utilizzi origini, sink, posizioni dei file temporanei di posizioni dei file temporanei o che si trovano al di fuori della regione del job, potrebbero essere inviati tra regioni diverse.

Quando è in esecuzione una pipeline, i dati utente vengono gestiti solo dal pool di worker Dataflow e lo spostamento dei dati è limitato ai percorsi di rete che collegano ai worker Dataflow nel pool.

Sebbene i dati utente vengano gestiti rigorosamente dai worker Dataflow regione assegnata, i messaggi di log della pipeline sono archiviati Cloud Logging, che ha una singola presenza globale in in Google Cloud.

Se hai bisogno di un maggiore controllo sulla posizione dei messaggi di log della pipeline, puoi fare quanto segue:

  1. Creare un filtro di esclusione per il sink del router di log _Default per impedire l'esportazione dei log di Dataflow nel bucket di log _Default.
  2. Crea un bucket di log nella regione che preferisci.
  3. Configura un nuovo sink del router dei log che esporta i log di Dataflow nel nuovo bucket di log.

Per scoprire di più sulla configurazione del logging, consulta Panoramica su routing e archiviazione e Panoramica del routing dei log.

Note sulle origini comuni dei job Dataflow:

  • Se utilizzi un bucket Cloud Storage come origine, ti consigliamo di: eseguire operazioni di lettura come bucket.
  • Argomenti Pub/Sub, quando pubblicati in tutto il mondo sono archiviati nella regione Google Cloud più vicina. Tuttavia, puoi modificare il criterio di archiviazione dell'argomento in un criterio una regione o un insieme di regioni. Analogamente, Pub/Sub Lite supportano solo l'archiviazione a livello di zona.

Resilienza e separazione geografica

Potresti voler isolare le normali operazioni Dataflow e che potrebbero verificarsi in altre regioni geografiche. In alternativa, potresti dover pianificare siti alternativi per la continuità aziendale. di una calamità a livello regionale.

Nei tuoi piani di ripristino di emergenza e continuità aziendale, ti consigliamo di includere i dettagli relativi alle fonti e ai sink utilizzati con il tuo di job Dataflow. Il team di vendita di Google Cloud può per aiutarti a soddisfare i requisiti.

Posizionamento regionale

Per impostazione predefinita, la regione selezionata configura il Dataflow pool di worker per utilizzare tutte le zone disponibili all'interno della regione. La selezione della zona è viene calcolata per ogni worker al momento della creazione, ottimizzando per la risorsa l'acquisizione e l'utilizzo di dati prenotazioni.

Il posizionamento regionale offre vantaggi quali:

  • Disponibilità delle risorse migliorata: i job Dataflow sono più resiliente a disponibilità delle risorse a livello di zona perché è possibile continuare a creare worker in altre zone con la disponibilità rimanente.
  • Affidabilità migliorata: in caso di errore a livello di zona, Dataflow i job possono continuare a essere eseguiti perché i worker vengono ricreati in altre zone.

Si applicano le seguenti limitazioni:

  • Il posizionamento a livello di regione è supportato solo per i job che utilizzano Streaming Engine oppure Dataflow Shuffle. Job che hanno disattivato Streaming Engine oppure Dataflow Shuffle non può usare il posizionamento a livello di regione.
  • Il posizionamento regionale si applica solo alle VM e non a Streaming Engine e Dataflow Shuffle.
  • Le VM non vengono replicate in più zone. Se una VM non è più disponibile, ad esempio, i suoi elementi di lavoro vengono considerati persi e vengono rielaborati da un'altra VM.
  • Se si verifica uno stockout a livello di regione, il servizio Dataflow non può per creare altre VM.

Posizionamento automatico della zona

Per i job non supportati per il posizionamento a livello di regione, la zona migliore della regione viene selezionata automaticamente, in base alle di capacità della zona al momento della richiesta di creazione del job. Selezione automatica della zona contribuisce a garantire che i worker del job vengano eseguiti nella zona migliore per il tuo job.

Poiché il job è configurato per essere eseguito in una singola zona, l'operazione potrebbe non riuscire con un disponibilità delle risorse a livello di zona se non sono disponibili risorse Compute Engine sufficienti.

Inoltre, quando una zona non è disponibile, il backend di flussi di dati può diventare non è disponibile, il che potrebbe causare una perdita di dati.

Specifica una regione

Per specificare una regione per il job, imposta l'opzione --region su una delle le regioni supportate. L'opzione --region esegue l'override della regione predefinita impostata nei metadati il server web, il client locale o le variabili di ambiente.

L'interfaccia a riga di comando di Dataflow supporta anche l'opzione --region per specificare le regioni.

Esegui l'override della regione o della zona del worker

Per impostazione predefinita, quando invii un job con l'opzione --region, i worker vengono assegnati automaticamente in zone della regione o zona migliore all'interno della regione, a seconda del tipo di prestazione.

Nei casi in cui vuoi assicurarti che i lavoratori per il tuo Il job Dataflow viene eseguito rigorosamente in una zona specifica, puoi specificare la zona utilizzando opzione pipeline. Questo pattern di utilizzo è insolito per i job Dataflow.

Java

--workerZone

Python

--worker_zone

Vai

--worker_zone

In tutti gli altri casi, non è consigliabile eseguire l'override della posizione del worker. La La tabella degli scenari comuni contiene suggerimenti sull'utilizzo per queste situazioni.

Poiché il job è configurato per essere eseguito in una singola zona, l'operazione potrebbe non riuscire con un disponibilità delle risorse a livello di zona se non sono disponibili risorse Compute Engine sufficienti.

Puoi eseguire il comando gcloud compute regions list per visualizzare un elenco di regioni e zone disponibili per il deployment dei worker.

Scenari comuni

La tabella seguente contiene suggerimenti sull'utilizzo per scenari comuni.

Scenario Consiglio
Voglio utilizzare una regione supportata e non ho preferenze di zona all'interno della regione. In questo caso, la zona migliore viene selezionate in base alla capacità disponibile. Utilizza --region per specificare una regione del job. Ciò garantisce che Dataflow gestisca il tuo job e i tuoi processi all'interno della regione specificata.
Ho bisogno che l'elaborazione dei worker avvenga in una zona specifica di una regione. Specifica sia --region che --workerZone oppure --worker_zone.

Utilizza --region per specificare la regione del job. Utilizza uno dei due --workerZone o --worker_zone per specificare zona specifica all'interno di quella regione.