Mover datos entre segmentos

En esta página se describe cómo mover el contenido de un segmento copiando objetos de un segmento de origen a un segmento de destino.

Información general

Cuando creas un contenedor, algunas de las propiedades que defines son permanentes y no se pueden cambiar, como el nombre del contenedor y su proyecto principal.

Si quieres usar otro nombre para tu contenedor, puedes hacerlo de forma eficaz creando un contenedor con el nombre que quieras usar y, a continuación, copiando tus objetos del contenedor antiguo al nuevo. Después, puede eliminar el segmento antiguo. Ten en cuenta lo siguiente:

  • Cuando eliminas un segmento, puedes volver a usar su nombre.

  • Si tu objetivo principal al mover objetos de un segmento a otro es almacenar tus datos en una ubicación de segmento diferente, te recomendamos que cambies la ubicación del segmento directamente.

Permisos obligatorios

Consola

Para completar esta guía con la consola deTrusted Cloud , debes tener los permisos de gestión de identidades y accesos adecuados. Si los contenedores a los que quieres acceder están en un proyecto que no has creado, es posible que necesites que el propietario del proyecto te asigne un rol que contenga los permisos necesarios.

Para ver una lista de los permisos necesarios para realizar acciones específicas, consulta los permisos de IAM para la consola Trusted Cloud .

Para ver una lista de los roles pertinentes, consulta Roles de Cloud Storage. También puedes crear un rol personalizado que tenga permisos específicos y limitados.

Línea de comandos

Para completar esta guía con una utilidad de línea de comandos, debes tener los permisos de gestión de identidades y accesos adecuados. Si los contenedores a los que quieres acceder están en un proyecto que no has creado, es posible que necesites que el propietario del proyecto te asigne un rol que contenga los permisos necesarios.

Para ver una lista de los permisos necesarios para realizar acciones específicas, consulta Permisos de IAM para comandos de gcloud storage.

Para ver una lista de los roles pertinentes, consulta Roles de Cloud Storage. También puedes crear un rol personalizado que tenga permisos específicos y limitados.

APIs REST

API JSON

Para completar esta guía con la API JSON, debes tener los permisos de gestión de identidades y accesos adecuados. Si los contenedores a los que quieres acceder están en un proyecto que no has creado, es posible que necesites que el propietario del proyecto te asigne un rol que contenga los permisos necesarios.

Para ver una lista de los permisos necesarios para realizar acciones específicas, consulta Permisos de gestión de identidades y accesos para métodos JSON.

Para ver una lista de los roles pertinentes, consulta Roles de Cloud Storage. También puedes crear un rol personalizado que tenga permisos específicos y limitados.

Mover datos de un segmento a otro

Consola

  1. Si aún no tiene un bucket de destino, créelo.

  2. Copie cada objeto del segmento de origen al de destino.

  3. Elimina el bucket de origen y su contenido.

Línea de comandos

  1. Si aún no tienes uno, crea un contenedor de destino.

  2. Para copiar de forma recursiva el contenido del segmento de origen en el de destino, usa el comando gcloud storage cp con la opción --recursive:

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

    Donde:

    • SOURCE_BUCKET es el nombre de tu cubo original. Por ejemplo, old-bucket.

    • DESTINATION_BUCKET es el nombre del contenedor al que vas a mover tus datos. Por ejemplo, my-bucket.

    Si tu segmento usa carpetas gestionadas y un espacio de nombres plano, debes incluir la marca --include-managed-folders en el comando para que se copien las carpetas gestionadas.

  3. Para eliminar de forma recursiva el contenido del contenedor de origen, junto con el propio contenedor de origen, usa el comando gcloud storage rm con la opción --recursive:

    gcloud storage rm --recursive gs://SOURCE_BUCKET

    Donde SOURCE_BUCKET es el nombre de tu segmento original. Por ejemplo, old-bucket.

    También puedes eliminar el contenido del contenedor de origen sin eliminar el contenedor en sí. Para ello, usa el comando gcloud storage rm con la marca --all-versions y el comodín **:

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

    Donde SOURCE_BUCKET es el nombre de tu segmento original. Por ejemplo, old-bucket.

APIs REST

API JSON

  1. Si aún no tiene un bucket de destino, créelo.

  2. Copie cada objeto del segmento de origen al de destino.

  3. Elimina cada objeto del bucket de origen.

  4. Elimina el segmento de origen.

API XML

  1. Si aún no tiene un bucket de destino, créelo.

  2. Copie cada objeto del segmento de origen al de destino.

  3. Elimina cada objeto del bucket de origen.

  4. Elimina el segmento de origen.

Siguientes pasos