Caricamenti di oggetti

Questa pagina illustra i concetti relativi al caricamento degli oggetti. Puoi caricare e archiviare qualsiasi tipo MIME di dati fino a 5 TiB di dimensioni.

Tipi di caricamento

Puoi inviare richieste di caricamento a Cloud Storage nei seguenti modi:

  • Caricamento con singola richiesta. Un metodo di caricamento in cui un oggetto viene caricato come singola richiesta. Utilizza questo metodo se il file è abbastanza piccolo da essere caricato nella sua interezza in caso di errore di connessione. Per le guide ai caricamenti con singola richiesta, consulta Caricare un oggetto da un file o Caricare un oggetto dalla memoria.

    • Caricamento multiparte dell'API JSON. Un metodo di caricamento che consente di caricare sia i dati dell'oggetto sia i relativi metadati in un'unica richiesta. L'API XML, tuttavia, consente di impostare i metadati dell'oggetto in tutti i tipi di caricamento.
  • Caricamento ripristinabile. Un metodo di caricamento che fornisce un trasferimento più affidabile, il che è particolarmente importante per i file di grandi dimensioni. I caricamenti ripristinabili sono una buona scelta per la maggior parte delle applicazioni, poiché funzionano anche per i file di piccole dimensioni al costo di una richiesta HTTP aggiuntiva per caricamento. Puoi anche utilizzare i caricamenti ripristinabili per eseguire trasferimenti di streaming, che ti consentono di caricare un oggetto di dimensioni sconosciute.

  • Caricamento multiparte dell'API XML. Un metodo di caricamento compatibile con i caricamenti multiparte di Amazon S3. I file vengono caricati in parti e assemblati in un singolo oggetto con la richiesta finale. I caricamenti multiparte dell'API XML consentono di caricare le parti in parallelo, riducendo potenzialmente il tempo necessario per completare il caricamento complessivo.

Utilizzando questi tipi di caricamento di base, sono possibili strategie di caricamento più avanzate:

  • Caricamento composito parallelo. Una strategia di caricamento in cui dividi un file in blocchi e carichi i blocchi in parallelo. A differenza dei caricamenti multiparte dell'API XML, i caricamenti compositi paralleli utilizzano l'operazione di composizione e l'oggetto finale viene archiviato come oggetto composito.

  • Caricamento di streaming. Un metodo di caricamento che consente di caricare i dati senza richiedere che vengano prima salvati in un file, il che è utile quando non conosci le dimensioni totali del caricamento all'inizio del caricamento.

  • Caricamento con codifica del trasferimento a blocchi. Un caricamento con singola richiesta che include l'intestazione Transfer-Encoding: chunked, che consente di inviare il caricamento in più blocchi di dati sequenziali.

Considerazioni sulle dimensioni di caricamento

Quando scegli se utilizzare un caricamento con singola richiesta anziché un caricamento ripristinabile o un caricamento multiparte dell'API XML, considera la quantità di tempo che sei disposto a perdere in caso di errore di rete e se devi riavviare il caricamento dall'inizio. Per le connessioni più veloci, la dimensione limite può in genere essere maggiore.

Ad esempio, supponiamo che tu sia disposto a tollerare 30 secondi di tempo perso:

  • Se carichi da un sistema locale con una velocità di caricamento media di 8 Mbps, puoi utilizzare i caricamenti con singola richiesta per file di dimensioni fino a 30 MB.

  • Se carichi da un servizio in-region con una velocità di caricamento media di 500 Mbps, la dimensione limite per i file è di quasi 2 GB.

Supporto per strumento

Console

Quando utilizzi la Google Cloud console, puoi eseguire i seguenti tipi di caricamenti:

Riga di comando

Quando utilizzi Google Cloud CLI, puoi eseguire i seguenti tipi di caricamenti:

Librerie client

C++

Quando utilizzi la libreria client C++, puoi eseguire i seguenti tipi di caricamenti:

C#

Quando utilizzi la libreria client C#, puoi eseguire i seguenti tipi di caricamenti:

Vai

Quando utilizzi la libreria client Go, puoi eseguire i seguenti tipi di caricamenti:

Java

Quando utilizzi la libreria client Java, puoi eseguire i seguenti tipi di caricamenti:

Node.js

Quando utilizzi la libreria client Node.js, puoi eseguire i seguenti tipi di caricamenti:

PHP

Quando utilizzi la libreria client PHP, puoi eseguire i seguenti tipi di caricamenti:

Python

Quando utilizzi la libreria client Python, puoi eseguire i seguenti tipi di caricamenti:

Ruby

Quando utilizzi la libreria client Ruby, puoi eseguire i seguenti tipi di caricamenti:

Terraform

Quando utilizzi Terraform, puoi eseguire caricamenti con singola richiesta. I caricamenti ripristinabili vengono eseguiti automaticamente quando il file caricato è più grande di 16 MiB.

API REST

Se utilizzi le API REST per caricare gli oggetti, consulta Endpoint delle richieste per una discussione completa sugli endpoint delle richieste che puoi utilizzare.

Passaggi successivi