Spostare i dati tra i bucket

Puoi copiare oggetti tra bucket Cloud Storage quando vuoi riorganizzare il layout dello spazio di archiviazione o aggirare le proprietà immutabili dei bucket. Ad esempio, puoi copiare gli oggetti in un nuovo bucket per modificare il nome di un bucket o trasferire i workload tra i progetti. Per completare uno spostamento, copia gli oggetti da un bucket di origine a un bucket di destinazione, quindi elimina gli oggetti originali.

Se il tuo obiettivo principale è archiviare i dati in una posizione geografica diversa, valuta la possibilità di utilizzare la rilocalizzazione dei bucket.

Panoramica

Quando crei un bucket, alcune delle proprietà impostate sono permanenti e non possono essere modificate, tra cui il nome del bucket e il progetto principale.

Se vuoi utilizzare un nuovo nome per il bucket, puoi farlo in modo efficace creando un nuovo bucket con il nome che vuoi utilizzare e poi copiando gli oggetti dal bucket precedente a quello nuovo. A questo punto puoi eliminare il bucket precedente. Tieni presente quanto segue:

  • Quando elimini un bucket, il nome del bucket può essere riutilizzato.

  • Se l'obiettivo principale dello spostamento di oggetti da un bucket a un altro è archiviare i dati in una posizione del bucket diversa, ti consigliamo di ricollocare direttamente il bucket.

  • Lo spostamento dei dati tra località comporta costi di utilizzo della rete. Inoltre, lo spostamento dei dati potrebbe comportare costi aggiuntivi, a seconda delle classi di archiviazione dei dati di origine e della località del bucket di destinazione. Per maggiori informazioni, consulta Prezzi di Cloud Storage.

Autorizzazioni obbligatorie

Console

Per completare questa guida utilizzando la consoleGoogle Cloud , devi disporre delle autorizzazioni IAM appropriate. Se i bucket a cui vuoi accedere esistono in un progetto che non hai creato, potrebbe essere necessario che il Project Owner ti assegni un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, consulta Autorizzazioni IAM per la console Google Cloud .

Per un elenco dei ruoli pertinenti, consulta Ruoli di Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

Riga di comando

Per completare questa guida utilizzando un'utilità a riga di comando, devi disporre delle autorizzazioni IAM appropriate. Se i bucket a cui vuoi accedere esistono in un progetto che non hai creato, potrebbe essere necessario che il Project Owner ti assegni un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, consulta Autorizzazioni IAM per i comandi gcloud storage.

Per un elenco dei ruoli pertinenti, consulta Ruoli di Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

API REST

API JSON

Per completare questa guida utilizzando l'API JSON, devi disporre delle autorizzazioni IAM appropriate. Se i bucket a cui vuoi accedere si trovano in un progetto che non hai creato, potresti dover chiedere al Project Owner di assegnarti un ruolo che contenga le autorizzazioni necessarie.

Per un elenco delle autorizzazioni richieste per azioni specifiche, consulta Autorizzazioni IAM per i metodi JSON.

Per un elenco dei ruoli pertinenti, consulta Ruoli di Cloud Storage. In alternativa, puoi creare un ruolo personalizzato con autorizzazioni specifiche e limitate.

Sposta i dati da un bucket all'altro

Console

Utilizza Storage Transfer Service dalla console Google Cloud :

  1. Se non hai ancora un bucket di destinazione, crealo.
  2. Apri la pagina Trasferimento nella console Google Cloud .

    Apri la pagina Trasferisci

  3. Fai clic su Crea job di trasferimento.
  4. Segui la procedura dettagliata, facendo clic su Passaggio successivo man mano che completi ogni passaggio:

    • Scegli un'origine: utilizza Bucket Cloud Storage come tipo di origine e inserisci direttamente il nome del bucket desiderato oppure fai clic su Sfoglia per trovare e selezionare il bucket che ti interessa.

    • Scegli una destinazione: inserisci direttamente il nome del bucket desiderato o fai clic su Sfoglia per trovare e selezionare il bucket che ti interessa.

    • Scegli le impostazioni: seleziona l'opzione Elimina i file dall'origine dopo il trasferimento.

    • Opzioni di pianificazione: puoi ignorare questa sezione.

  5. Dopo aver completato la procedura dettagliata, fai clic su Crea.

    In questo modo, viene avviato il processo di copia degli oggetti dal bucket precedente a quello nuovo. Questo processo potrebbe richiedere del tempo; tuttavia, dopo aver fatto clic su Crea, puoi uscire dalla console Google Cloud .

    Per visualizzare l'avanzamento del trasferimento:

    Apri la pagina Trasferimento nella console Google Cloud .

    Apri la pagina Trasferisci

    Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud , consulta Risoluzione dei problemi.

  6. Una volta completato il trasferimento, non devi fare nulla per eliminare gli oggetti dal bucket precedente se hai selezionato la casella di controllo Elimina gli oggetti di origine al termine del trasferimento durante la configurazione. Tuttavia, potresti anche voler eliminare il bucket precedente, operazione che devi eseguire separatamente.

Riga di comando

  1. Se non ne hai ancora uno, crea un bucket di destinazione.

  2. Per copiare in modo ricorsivo i contenuti del bucket di origine nel bucket di destinazione, utilizza il comando gcloud storage cp con l'opzione --recursive:

    gcloud storage cp --recursive gs://SOURCE_BUCKET/* gs://DESTINATION_BUCKET

    Dove:

    • SOURCE_BUCKET è il nome del bucket originale. Ad esempio, old-bucket.

    • DESTINATION_BUCKET è il nome del bucket in cui stai spostando i dati. Ad esempio, my-bucket.

    Se il bucket utilizza cartelle gestite e uno spazio dei nomi piatto, devi includere il flag --include-managed-folders nel comando per copiare le cartelle gestite.

  3. Per eliminare in modo ricorsivo i contenuti dal bucket di origine, insieme al bucket di origine stesso, utilizza il comando gcloud storage rm con l'opzione --recursive:

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    Dove SOURCE_BUCKET è il nome del tuo bucket originale. Ad esempio, old-bucket.

    In alternativa, per eliminare i contenuti dal bucket di origine senza eliminare il bucket di origine stesso, utilizza il comando gcloud storage rm con il flag --all-versions e il carattere jolly **:

    gcloud storage rm --all-versions gs://SOURCE_BUCKET/**

    Dove SOURCE_BUCKET è il nome del tuo bucket originale. Ad esempio, old-bucket.

API REST

API JSON

  1. Se non hai ancora un bucket di destinazione, crealo.

  2. Copia ogni oggetto dal bucket di origine al bucket di destinazione.

  3. Elimina ogni oggetto nel bucket di origine.

  4. Elimina il bucket di origine.

API XML

  1. Se non hai ancora un bucket di destinazione, crealo.

  2. Copia ogni oggetto dal bucket di origine al bucket di destinazione.

  3. Elimina ogni oggetto nel bucket di origine.

  4. Elimina il bucket di origine.

Passaggi successivi