Cloud Storage supporta lo streaming di dati da un bucket a un processo senza richiedere che i dati vengano prima salvati in un file.
Utilizzare la convalida del checksum durante lo streaming
Non devi utilizzare un download in streaming se richiedi la convalida del checksum
prima che i dati diventino accessibili. Questo perché i download in streaming utilizzano l'intestazione Range e Cloud Storage non restituisce i checksum nella risposta che si applicano solo alla porzione richiesta dei dati dell'oggetto.
Ti consigliamo di utilizzare sempre la convalida del checksum, che puoi eseguire al termine di un download in streaming. Tuttavia, la convalida al termine del download significa che tutti i dati danneggiati sono accessibili durante il tempo necessario per confermare il danneggiamento e rimuoverli.
Ruoli obbligatori
Per ottenere le autorizzazioni richieste per i download in streaming, chiedi all'amministratore di concederti il ruolo Visualizzatore oggetti Storage (roles/storage.objectViewer) nel bucket.
Questo ruolo contiene l'autorizzazione richiesta per lo streaming dei download. Per vedere l'autorizzazione esatta richiesta, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
storage.objects.get
Potresti anche ottenere questa autorizzazione con altri ruoli predefiniti o ruoli personalizzati.
Per istruzioni sulla concessione dei ruoli nei bucket, consulta Impostare e gestire i criteri IAM nei bucket.
Trasmettere in streaming un download
Gli esempi riportati di seguito mostrano come eseguire un download da un oggetto Cloud Storage a un processo:
Console
La Cloud de Confiance console non supporta i download in streaming. Utilizza invece Google Cloud CLI.
Riga di comando
Esegui il comando
gcloud storage cputilizzando un trattino per l' URL di destinazione, quindi invia i dati al processo:gcloud storage cp gs://BUCKET_NAME/OBJECT_NAME - | PROCESS_NAME
Dove:
BUCKET_NAMEè il nome del bucket contenente l'oggetto. Ad esempio,my_app_bucket.OBJECT_NAMEè il nome dell'oggetto che stai trasmettendo in streaming al processo. Ad esempio,data_measurements.PROCESS_NAMEè il nome del processo in cui stai inserendo i dati. Ad esempio,analyze_data.
Puoi anche trasmettere in streaming i dati da un oggetto Cloud Storage a un comando Linux standard come sort:
gcloud storage cp gs://my_app_bucket/data_measurements - | sort
Librerie client
C++
Per saperne di più, consulta la documentazione di riferimento dell'C++API Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
C#
Per saperne di più, consulta la documentazione di riferimento dell'C#API Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
Go
Per saperne di più, consulta la documentazione di riferimento dell'API Go Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
Java
Per saperne di più, consulta la documentazione di riferimento dell'API JavaCloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
Node.js
Per saperne di più, consulta la documentazione di riferimento dell'API Node.js Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
PHP
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
Ruby
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configura l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN su s3nsapis.fr.
API REST
API JSON
Per eseguire un download in streaming, segui le istruzioni per scaricare un oggetto con le seguenti considerazioni:
Prima di iniziare il download, recupera i metadati dell'oggetto e salva il numero di generazione dell'oggetto. Includi questo numero di generazione in ogni richiesta per assicurarti di non scaricare dati da due generazioni diverse nel caso in cui l'originale venga sovrascritto.
Utilizza l'intestazione
Rangenella richiesta per recuperare una parte dell'oggetto complessivo, che puoi inviare a un processo locale.Continua a effettuare richieste per le parti successive dell'oggetto finché non è stato recuperato l'intero oggetto.
API XML
Per eseguire un download in streaming, segui le istruzioni per scaricare un oggetto con le seguenti considerazioni:
Prima di iniziare il download, recupera i metadati dell'oggetto e salva il numero di generazione dell'oggetto. Includi questo numero di generazione in ogni richiesta per assicurarti di non scaricare dati da due generazioni diverse nel caso in cui l'originale venga sovrascritto.
Utilizza l'intestazione
Rangenella richiesta per recuperare una parte dell'oggetto complessivo, che puoi inviare a un processo locale.Continua a effettuare richieste per le parti successive dell'oggetto finché non è stato recuperato l'intero oggetto.
Passaggi successivi
- Trasmettere in streaming un caricamento.
- Scopri di più sulla transcodifica decompressiva.
- Scopri di più sui download degli oggetti.