En esta página, se proporciona información sobre las carpetas en buckets con el espacio de nombres jerárquico habilitado.
Descripción general
Cuando creas un bucket con el espacio de nombres jerárquico habilitado, el bucket usa una estructura de sistema de archivos real en lugar de un espacio de nombres plano estándar. Las carpetas existen como un recurso en buckets con el espacio de nombres jerárquico habilitado. Con las carpetas, puedes organizar tus objetos de manera más eficaz y obtener acceso a capacidades de directorio reales, como cambios de nombre de carpetas atómicos y operaciones de metadatos eficientes.
Las carpetas en buckets con el espacio de nombres jerárquico habilitado son diferentes de las carpetas simuladas y las carpetas administradas. Las carpetas simuladas existen en buckets de espacio de nombres plano, y las carpetas administradas se pueden aplicar tanto en buckets de espacio de nombres plano como en buckets con el espacio de nombres jerárquico habilitado. Las carpetas administradas se usan principalmente para otorgar permisos de IAM a grupos de objetos. Para obtener más información sobre estos otros tipos de carpetas, consulta Tipos de carpetas.
Puedes administrar carpetas realizando operaciones de carpetas. Para obtener información sobre cómo crear, enumerar y borrar carpetas, así como obtener metadatos de carpetas , consulta Crea y administra carpetas. Para obtener información sobre cómo cambiar el nombre de una carpeta o moverla, consulta Cambia el nombre de una carpeta.
Metadatos de la carpeta
Los metadatos de una carpeta contienen información estructurada sobre la carpeta. Para obtener información detallada sobre los metadatos de las carpetas, consulta el Folder recurso en la documentación de referencia de la API de JSON de Cloud Storage.
Los componentes clave de los metadatos de una carpeta son los siguientes:
bucket: El nombre del bucket en el que reside la carpeta. Por ejemplo,my-bucketid: Un identificador único para la carpeta dentro del bucket. Por ejemplo,hns-bucket/dir1/kind: El tipo de recurso Para una carpeta, este valor siempre esstorage#folder.name: El nombre de la carpeta. Por ejemplo,dir1/selfLink: Una URL que hace referencia a la carpeta en la API de Cloud Storage.timeCreated: La marca de tiempo en la que se creó la carpeta. Por ejemplo,2023-05-05T16:32:08.878000+00:00updated: la marca de tiempo cuando se actualizó el recurso por última vez. Por ejemplo,2024-05-06T16:32:08.878000+00:00.
Operaciones de carpetas
En esta sección, se describen las operaciones que puedes realizar en las carpetas. Algunas operaciones inician una operación de larga duración que puedes supervisar para hacer un seguimiento del progreso y el estado de la operación.
Crear una carpeta
Puedes crear carpetas de forma explícita con la operación de creación de carpetas.
Además, cuando creas un objeto y especificas una carpeta inexistente en su ruta de acceso, se crea automáticamente la carpeta superior faltante. Por ejemplo,
si creas un objeto llamado dir1/foo.txt, se crea automáticamente la carpeta dir1/
si aún no existe.
Para obtener información sobre la asignación de nombres de carpetas, consulta Consideraciones.
Mostrar lista de carpetas
Puedes recuperar una lista de carpetas en tu bucket con la operación de lista de carpetas. Debido a que las carpetas son recursos distintos en buckets con el espacio de nombres jerárquico habilitado, esta operación evalúa la estructura de carpetas real en lugar de simular carpetas desde rutas de acceso de objetos.
Cuando enumeras carpetas, puedes filtrar los resultados con parámetros como prefix, delimiter, lexicographicStart y lexicographicEnd. Por ejemplo, si configuras el parámetro de delimitador en /, puedes enumerar carpetas en un modo similar a un directorio, que solo muestra las carpetas que coinciden con el prefijo o que existen un nivel por debajo de él.
La operación de lista de carpetas muestra resultados paginados. Una sola página de respuesta puede contener un máximo de 1,000 carpetas.
Obtén los metadatos de una carpeta
Puedes recuperar las propiedades de una carpeta con la operación de obtención de metadatos de carpetas. Esta operación recupera información sobre el recurso de carpeta en sí, en lugar de los objetos que contiene.
Esta operación muestra los metadatos de una carpeta, que proporcionan información estructurada, como su marca de tiempo de creación, su identificador único y el bucket en el que reside. Para obtener una lista detallada de las propiedades que muestra esta operación, consulta Metadatos de la carpeta.
Cambia el nombre de una carpeta o muévela
Cambiar el nombre de una carpeta y moverla usan la misma operación subyacente. La operación es un cambio atómico de solo metadatos que actualiza la ruta de acceso de la carpeta sin copiar ni borrar físicamente los objetos subyacentes. Cambiar el nombre de una carpeta también actualiza la ruta de acceso de la carpeta para los recursos dentro de la carpeta, como carpetas secundarias, objetos y carpetas administradas. Esto hace que la operación sea rápida y evita los costos de copia de objetos.
La operación para cambiar el nombre de la carpeta inicia una operación de larga duración.
Durante una operación de cambio de nombre de carpeta, puedes leer y enumerar las carpetas a las que se les cambia el nombre, pero no puedes ejecutar operaciones de escritura en ellas.
En la API de JSON y Google Cloud CLI, las operaciones de cambio de nombre y movimiento usan el mismo extremo o comando de URL. En la Google Cloud consola, Cambiar el nombre de la carpeta y Mover la carpeta se presentan como dos opciones distintas, pero ambas opciones ejecutan la misma operación de backend.
Borra una carpeta
Puedes borrar una carpeta de forma permanente con la operación de borrado de carpetas. Si bien las carpetas se pueden crear automáticamente durante las operaciones de objetos, no se quitan automáticamente cuando se vacían. Debes borrarlas de forma explícita.
Interacciones entre carpetas y carpetas administradas asociadas
Las carpetas administradas asociadas se usan para controlar el acceso a las carpetas en buckets con el espacio de nombres jerárquico habilitado. Las carpetas y las carpetas administradas asociadas interactúan de las siguientes maneras:
Creación de carpetas: Cuando creas una carpeta administrada en un bucket con el espacio de nombres jerárquico habilitado, se crean automáticamente todas las carpetas faltantes en su ruta de acceso, incluidas las carpetas superiores y la carpeta de destino real (también conocida como la carpeta asociada).
Por ejemplo, supongamos que creas un bucket con el espacio de nombres jerárquico habilitado llamado
my-bucket. Si creas una carpeta administrada llamada2025/training-data/en el bucket, Cloud Storage crea automáticamente la carpeta superior2025/y la carpeta asociada de destinotraining-data/en el bucket.Borrado de carpetas: Cuando borras una carpeta que tiene una carpeta administrada asociada, Cloud Storage también borra la carpeta administrada asociada. Esto se debe a que, cuando borras una carpeta, borras la ruta de acceso por completo. Debido a que la ruta de acceso ya no existe, se borran la carpeta administrada asociada y las políticas de IAM adjuntas. En buckets con el espacio de nombres jerárquico habilitado, una carpeta administrada no puede existir sin una carpeta asociada.
Si no tienes los permisos necesarios para borrar la carpeta administrada asociada de la carpeta, falla la operación de borrado de carpetas. Para encontrar los permisos necesarios para borrar carpetas administradas, consulta Obtén los roles necesarios para las carpetas administradas.
Cambio de nombre de carpetas: Cuando cambias el nombre de una carpeta que tiene una carpeta administrada asociada, Cloud Storage también cambia el nombre de la carpeta administrada asociada.
Para obtener información sobre los requisitos de nombres para las carpetas que tienen una carpeta administrada asociada, consulta Nombres de carpetas.
Consideraciones
Cuando crees carpetas, ten en cuenta lo siguiente:
Nombres de objetos y carpetas: los buckets con espacio de nombres jerárquico habilitado admiten todos los nombres de objetos válidos, lo que incluye los que tienen barras iniciales finales (
/) o barras consecutivas. Cada barra diagonal (/) en el nombre de un objeto representa una carpeta. En la siguiente tabla, se muestran ejemplos de la relación entre los nombres de objetos y su ubicación correspondiente en la jerarquía de carpetas:Nombre del objeto Ubicación en la jerarquía de carpetas foo.txtCada bucket incluye una carpeta raíz. El objeto foo.txtreside en la carpeta raíz del bucket.dir1/foo.txtEl objeto foo.txtreside dentro de una carpeta de nivel superior llamadadir1/. La carpeta de nivel superior es distinta de la carpeta raíz.dir1/La barra final en los nombres de objetos como dir1/indica que el objeto reside dentro de la carpeta. En este ejemplo, el nombre del objetodir1/es el mismo que el nombre de la carpeta superiordir1/.dir1//foo.txtEl objeto foo.txtreside en una carpeta de segundo nivel llamadadir1//, una carpeta secundaria dedir1/.Profundidad máxima de las carpetas: Los buckets con espacio de nombres jerárquico habilitado admiten una profundidad máxima de carpetas de 50. Las carpetas se pueden crear con hasta 50 carpetas secundarias apiladas (por ejemplo,
folder1/folder2/folder3/.../folder50/my-data.txt). Sin embargo, si una carpeta tiene una carpeta administrada asociada, solo puede tener hasta 15 carpetas secundarias apiladas.Tamaño máximo del nombre de la carpeta: 512 bytes (codificados en UTF-8).
Información sensible o de identificación personal (PII): Los nombres de las carpetas son más visibles que los metadatos de las carpetas. Por ejemplo, los nombres de las carpetas aparecen en las URLs y cuando se enumeran carpetas o objetos en un bucket. No incluyas información sensible ni PII en los nombres de las carpetas.
¿Qué sigue?
Pruébalo tú mismo
Si es la primera vez que usas Google Cloud, crea una cuenta para evaluar el rendimiento de Cloud Storage en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar e implementar cargas de trabajo.
Prueba Cloud Storage gratis