Conjuntos de datos de Estadísticas de almacenamiento

La función de conjuntos de datos de Estadísticas de almacenamiento te ayuda a comprender, organizar y gestionar tus datos a gran escala. Puede elegir una organización, o bien uno o varios proyectos o carpetas que contengan los contenedores y objetos cuyos metadatos quiera actualizar. Se proporciona un índice de metadatos consultable para los contenedores y objetos incluidos en esos proyectos como un conjunto de datos vinculado de BigQuery.

Si quieres obtener estadísticas de tus recursos de Cloud Storage que se han exportado a BigQuery, usa los conjuntos de datos de Estadísticas de almacenamiento. Estas estadísticas pueden ayudarte a explorar los datos, optimizar los costes, aplicar medidas de seguridad e implementar la gobernanza. Los conjuntos de datos de Estadísticas de almacenamiento son una función exclusiva que solo está disponible con la suscripción a Storage Intelligence.

Información general

Un conjunto de datos de Estadísticas de almacenamiento es una instantánea continua de los metadatos de todos los contenedores y objetos de uno o varios proyectos de origen especificados de una organización. La información proporcionada por los conjuntos de datos te permite comprender mejor y auditar periódicamente tus datos de Cloud Storage.

Para crear un conjunto de datos, primero debes crear una configuración de conjunto de datos en un proyecto. Puede elegir una organización o uno o varios proyectos o carpetas que contengan los contenedores y objetos de los que quiera ver los metadatos. La configuración del conjunto de datos genera conjuntos de datos a diario. Tanto las configuraciones como los conjuntos de datos son recursos almacenados en Cloud Storage.

Para ver un conjunto de datos, primero debes vincularlo a BigQuery.

Propiedades de configuración de conjuntos de datos

Cuando crea una configuración de conjunto de datos, define estas propiedades del conjunto de datos. Una vez que haya configurado el conjunto de datos, pueden pasar hasta 48 horas hasta que vea los primeros datos en BigQuery como conjunto de datos vinculado. Los objetos o los contenedores que se añadan se incluirán en la siguiente copia de seguridad diaria.

  • Nombre: nombre que se usa para hacer referencia al conjunto de datos. Los nombres se usan como identificadores de las configuraciones de conjuntos de datos y no se pueden cambiar una vez que se ha creado la configuración. El nombre puede tener hasta 128 caracteres, que pueden ser letras, números y guiones bajos. El nombre debe empezar por una letra.

  • Descripción (opcional): una descripción del conjunto de datos. Puedes editar la descripción en cualquier momento.

  • Ámbito del conjunto de datos: campo obligatorio que especifica una organización, proyectos o carpetas que contienen los contenedores y objetos de los que quieres obtener metadatos. Puedes especificar proyectos o carpetas de forma individual o en un archivo CSV, con cada número de proyecto o carpeta en una línea independiente. Puede especificar hasta 10.000 proyectos o carpetas en una configuración de conjunto de datos. Los conjuntos de datos se configuran para el ámbito de conjunto de datos especificado. Solo se puede especificar un ámbito de conjunto de datos por configuración de conjunto de datos. Puede actualizar el ámbito del conjunto de datos al editar la configuración del conjunto de datos.

  • Filtros de contenedor (opcional): filtros que se usan para incluir y excluir contenedores específicos del conjunto de datos por nombre o por regiones.

  • Periodo de conservación: el número de días durante los que el conjunto de datos recoge y conserva los datos, incluida la fecha de creación del conjunto de datos. Los conjuntos de datos se actualizan con metadatos cada 24 horas y pueden conservar los datos durante un máximo de 90 días. Los datos recogidos fuera del periodo de conservación se eliminan automáticamente. Por ejemplo, supongamos que tienes un conjunto de datos que se creó el 1 de octubre del 2023 y que tiene un periodo de conservación de 30 días. El 30 de octubre, el conjunto de datos reflejará los datos de los 30 días anteriores, es decir, del 1 al 30 de octubre. El 31 de octubre, el conjunto de datos reflejará los datos del 2 al 31 de octubre. Puedes modificar el periodo de conservación en cualquier momento.

  • Ubicación: lugar donde se almacenan el conjunto de datos y sus datos. Por ejemplo, us-central1. La ubicación debe ser compatible con BigQuery. Te recomendamos que selecciones la ubicación de tus tablas de BigQuery, si tienes alguna.

  • Tipo de agente de servicio: puede ser un agente de servicio con ámbito de configuración o un agente de servicio con ámbito de proyecto.

    Al crear una configuración de conjunto de datos, se te proporcionará un agente de servicio. Para leer y escribir conjuntos de datos, se deben conceder los permisos necesarios al agente de servicio.

    Un agente de servicio con ámbito de proyecto puede acceder a los conjuntos de datos generados a partir de todas las configuraciones de conjuntos de datos del proyecto y escribir en ellos. Por ejemplo, si tienes varias configuraciones de conjuntos de datos en un proyecto, solo tienes que conceder los permisos necesarios al agente de servicio del proyecto una vez para que pueda leer y escribir conjuntos de datos en todas las configuraciones de conjuntos de datos del proyecto. Cuando se elimina una configuración de conjunto de datos, no se elimina el agente de servicio del proyecto.

    Un agente de servicio con ámbito de configuración solo puede acceder al conjunto de datos generado por la configuración de un conjunto de datos concreto y escribir en él. Esto significa que, si tienes varias configuraciones de conjuntos de datos, deberás conceder los permisos necesarios a cada agente de servicio con ámbito de configuración. Cuando se elimina una configuración de un conjunto de datos, se elimina el agente de servicio con ámbito de configuración.

Vincule el conjunto de datos a BigQuery después de crear una configuración de conjunto de datos. Al vincular un conjunto de datos a BigQuery, se crea un conjunto de datos vinculado en BigQuery para hacer consultas. Puedes vincular o desvincular el conjunto de datos en cualquier momento.

Para obtener más información sobre las propiedades que se definen al crear o actualizar una configuración de conjunto de datos, consulta el recurso DatasetConfigs en la documentación de la API JSON.

Ubicaciones admitidas

Se admiten las siguientes ubicaciones de BigQuery para crear conjuntos de datos vinculados:

  • EU
  • US
  • asia-southeast1
  • europe-west1
  • us-central1
  • us-east1
  • us-east4

Esquema de metadatos del conjunto de datos

Los siguientes campos de metadatos se incluyen en los conjuntos de datos. Para obtener más información sobre los modos de columna de BigQuery, consulta Modos. Los modos de columna determinan cómo almacena y consulta BigQuery los datos.

El campo snapshotTime almacena la hora de la actualización de la instantánea de los metadatos del cubo en formato RFC 3339.

Metadatos de segmentos

A menos que se indique lo contrario, puede consultar descripciones más detalladas de los siguientes campos de metadatos de los contenedores en la representación del recurso "Buckets" de la API JSON.

Campo de metadatos Modo Tipo
snapshotTime NULLABLE TIMESTAMP
name NULLABLE STRING
location NULLABLE STRING
project NULLABLE INTEGER
storageClass NULLABLE STRING
versioning NULLABLE BOOLEAN
lifecycle NULLABLE BOOLEAN
metageneration NULLABLE INTEGER
timeCreated NULLABLE TIMESTAMP
public1 NULLABLE RECORD
public.bucketPolicyOnly NULLABLE BOOLEAN
public.publicAccessPrevention NULLABLE STRING
iamConfiguration NULLABLE RECORD
iamConfiguration.uniformBucketLevelAccess NULLABLE RECORD
iamConfiguration.uniformBucketLevelAccess.enabled NULLABLE BOOLEAN
iamConfiguration.publicAccessPrevention NULLABLE STRING
autoclass NULLABLE RECORD
autoclass.enabled NULLABLE BOOLEAN
autoclass.toggleTime NULLABLE TIMESTAMP
softDeletePolicy NULLABLE OBJECT
softDeletePolicy.effectiveTime NULLABLE DATETIME
softDeletePolicy.retentionDurationSeconds NULLABLE LONG
tags2 NULLABLE RECORD
tags.lastUpdatedTime NULLABLE TIMESTAMP
tags.tagMap REPEATED RECORD
tags.tagMap.key NULLABLE STRING
tags.tagMap.value NULLABLE STRING
resourceTags3 REPEATED RECORD
resourceTags.key NULLABLE STRING
resourceTags.value NULLABLE STRING
labels REPEATED RECORD
labels.key NULLABLE STRING
labels.value NULLABLE STRING

1 [Obsoleto] Este campo está obsoleto. Usa iamConfiguration en su lugar.

2 [Obsoleto] Este campo está obsoleto. Use resourceTags en su lugar.

3 Las etiquetas del segmento. Para obtener más información, consulta la API de Cloud Resource Manager.

Metadatos del objeto

A menos que se indique lo contrario, puedes consultar descripciones más detalladas de los siguientes campos de metadatos de objetos en la representación del recurso Objects de la API JSON.

Campo de metadatos Modo Tipo
snapshotTime NULLABLE TIMESTAMP
bucket NULLABLE STRING
location NULLABLE STRING
componentCount NULLABLE INTEGER
contentDisposition NULLABLE STRING
contentEncoding NULLABLE STRING
contentLanguage NULLABLE STRING
contentType NULLABLE STRING
crc32c NULLABLE INTEGER
customTime NULLABLE TIMESTAMP
etag NULLABLE STRING
eventBasedHold NULLABLE BOOLEAN
generation NULLABLE INTEGER
md5Hash NULLABLE STRING
metageneration NULLABLE INTEGER
name NULLABLE STRING
size NULLABLE INTEGER
storageClass NULLABLE STRING
temporaryHold NULLABLE BOOLEAN
timeCreated NULLABLE TIMESTAMP
timeDeleted NULLABLE TIMESTAMP
updated NULLABLE TIMESTAMP
timeStorageClassUpdated NULLABLE TIMESTAMP
retentionExpirationTime NULLABLE TIMESTAMP
softDeleteTime NULLABLE DATETIME
hardDeleteTime NULLABLE DATETIME
metadata REPEATED RECORD
metadata.key NULLABLE STRING
metadata.value NULLABLE STRING

La última instantánea de metadatos de segmentos y objetos

El conjunto de datos vinculado expone la última instantánea de los metadatos del cubo y del objeto a través de las siguientes vistas específicas:

  • El bucket_attributes_latest_snapshot_view proporciona los metadatos más recientes de tus segmentos de Cloud Storage. Su estructura coincide con el esquema de metadatos de Bucket.

  • El object_attributes_latest_snapshot_view proporciona los metadatos más recientes de tus objetos de Cloud Storage. Su estructura coincide con el esquema de metadatos de objeto.

Metadatos del proyecto

Los metadatos del proyecto se exponen como una vista llamada project_attributes_view en el conjunto de datos vinculado:

Campo de metadatos Modo Tipo
snapshotTime NULLABLE TIMESTAMP
name NULLABLE STRING
id NULLABLE STRING
number NULLABLE NUMBER

Esquema del conjunto de datos de eventos y errores

En el conjunto de datos vinculado, también puede ver los eventos de procesamiento de las instantáneas y los errores en las vistas events_view y error_attributes_view. Para saber cómo solucionar los errores de procesamiento de la instantánea, consulta Solucionar errores de conjuntos de datos.

Registro de eventos

Puedes ver los registros de eventos en la vista events_view del conjunto de datos vinculado:

Nombre de la columna Modo Tipo Descripción
manifest.snapshotTime NULLABLE TIMESTAMP La hora en formato RFC 3339 en la que se actualiza la instantánea de los eventos.
manifest.viewName NULLABLE STRING Nombre de la vista que se ha actualizado.
manifest.location NULLABLE STRING Ubicación de origen de los datos que se han actualizado.
globalManifest.snapshotTime NULLABLE TIMESTAMP La hora en formato RFC 3339 en la que se actualiza la instantánea de los eventos.
eventTime NULLABLE STRING La hora a la que se produjo el evento.
eventCode NULLABLE STRING Es el código de evento asociado a la entrada correspondiente. El código de evento 1 hace referencia a la vista manifest.viewName que se actualiza con todas las entradas de la ubicación de origen manifest.location de la instantánea manifest.snapshotTime. El código de evento 2 indica que el conjunto de datos se actualiza con las entradas de los objetos y los contenedores de todas las ubicaciones de origen. Esta actualización se produce en la captura globalManifest.snapshotTime.

Códigos de error

Puedes ver los códigos de error en la vista error_attributes_view del conjunto de datos vinculado:

Nombre de la columna Modo Tipo Descripción
errorCode NULLABLE INTEGER Código de error asociado a esta entrada. Para ver una lista de valores válidos y cómo resolverlos, consulta Solucionar problemas con conjuntos de datos.
errorSource NULLABLE STRING La fuente del error. Valor válido: CONFIGURATION_PREPROCESSING.
errorTime NULLABLE TIMESTAMP La hora en la que se produjo el error.
sourceGcsLocation NULLABLE STRING Ubicación de Cloud Storage de origen del error. En el caso de los proyectos, este campo es nulo porque no tienen ubicación.
bucketErrorRecord.bucketName NULLABLE STRING Nombre del segmento implicado en el error. Puedes usar esta información para depurar un error de un contenedor.
bucketErrorRecord.serviceAccount NULLABLE STRING La cuenta de servicio que necesita permiso para ingerir objetos del segmento. Puedes usar esta información para depurar un error de un contenedor.
projectErrorRecord.projectNumber NULLABLE INTEGER El número del proyecto implicado en el error. Puedes usar esta información para depurar un error de proyecto.
projectErrorRecord.organizationName NULLABLE STRING Número de la organización a la que debe pertenecer el proyecto para poder procesarse. El valor 0 indica que el conjunto de datos no está en la organización. Puedes usar esta información para depurar un error de proyecto.

Solucionar errores de conjuntos de datos

Para saber cómo solucionar los errores de procesamiento de las copias de la vista error_attributes_view del conjunto de datos vinculado, consulte la siguiente tabla:

Código de error Caso de error Mensaje de error Solución de problemas
1 El proyecto de origen no pertenece a la organización El proyecto de origen projectErrorRecord.projectNumber no pertenece a la organización projectErrorRecord.organizationName. Añade el proyecto de origen projectErrorRecord.projectNumber a la organización projectErrorRecord.organizationName. Para obtener instrucciones sobre cómo migrar un proyecto entre organizaciones, consulta el artículo Migrar proyectos entre organizaciones.
2 Error de autorización del segmento Permiso denegado para ingerir objetos del segmento bucketErrorRecord.bucketName. Concede a la cuenta de servicio bucketErrorRecord.serviceAccount permisos de gestión de identidades y accesos (IAM) para permitir la ingestión de objetos en el segmento bucketErrorRecord.bucketName. Para obtener más información, consulta Conceder los permisos necesarios al agente de servicio.
3 El proyecto de destino no pertenece a la organización El proyecto de destino projectErrorRecord.projectNumber no está en la organización projectErrorRecord.organizationName. Añade el proyecto de destino projectErrorRecord.projectNumber a la organización projectErrorRecord.organizationName. Para obtener instrucciones sobre cómo migrar un proyecto entre organizaciones, consulta el artículo Migrar proyectos entre organizaciones.
4 El proyecto de origen no tiene configurado Storage Intelligence. El proyecto de origen projectErrorRecord.projectNumber no tiene configurado Storage Intelligence. Configura Storage Intelligence en el proyecto de origen projectErrorRecord.projectNumber. Para obtener más información, consulta Configurar y gestionar Estadísticas de almacenamiento.
5 El segmento no tiene configurado Storage Intelligence. El segmento bucketErrorRecord.bucketName no tiene configurado Storage Intelligence. Configura Storage Intelligence en el segmento bucketErrorRecord.bucketName. Para obtener más información, consulta Configurar y gestionar Estadísticas de almacenamiento.

Cuestiones importantes

Ten en cuenta lo siguiente en las configuraciones de conjuntos de datos:

  • Cuando cambias el nombre de una carpeta de un segmento con el espacio de nombres jerárquico habilitado, los nombres de los objetos de ese segmento se actualizan. Cuando el conjunto de datos vinculado los ingiere, estas copias de objetos se consideran entradas nuevas en los conjuntos de datos vinculados.

  • Los conjuntos de datos solo se admiten en estas ubicaciones de BigQuery.

Siguientes pasos