La función de conjuntos de datos de Storage Insights te ayuda a comprender, organizar y administrar tus datos a gran escala. Puedes elegir una organización, uno o varios proyectos o carpetas que contengan buckets y objetos para los que deseas actualizar los metadatos. Un índice de metadatos consultable para los buckets y objetos incluidos en esos proyectos se pone a disposición como un conjunto de datos vinculado de BigQuery.
Si deseas obtener estadísticas de los recursos de Cloud Storage que se exportan a BigQuery, usa los conjuntos de datos de Storage Insights. Estas estadísticas pueden ayudarte con la exploración de datos, la optimización de costos, la aplicación de la seguridad y la implementación de la administración. Los conjuntos de datos de Storage Insights son una función exclusiva que solo está disponible a través de la suscripción a Storage Intelligence.
Descripción general
Un conjunto de datos de Storage Insights es un resumen continuo de los metadatos de todos los buckets y objetos dentro de uno o varios proyectos de origen especificados dentro de una organización. La información que proporcionan los conjuntos de datos te permite comprender mejor tus datos de Cloud Storage y auditarlos de forma periódica.
Para crear un conjunto de datos, primero debes crear una configuración de conjunto de datos en un proyecto. Puedes elegir una organización, uno o varios proyectos o carpetas que contengan los buckets y los objetos de los que deseas ver los metadatos. La configuración del conjunto de datos genera conjuntos de datos a diario. Tanto las configuraciones de los conjuntos de datos como los conjuntos de datos son recursos que se almacenan en Cloud Storage.
Para ver un conjunto de datos, primero debes vincularlo a BigQuery.
Propiedades de configuración del conjunto de datos
Cuando creas una configuración de conjunto de datos, estableces las siguientes propiedades del conjunto de datos:
Nombre: Es un 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 después de crear la configuración. El nombre contiene hasta 128 caracteres, incluidos letras, números y guiones bajos. El nombre debe comenzar con una letra.
Descripción (opcional): Es una descripción del conjunto de datos. Puedes editar la descripción en cualquier momento.
Alcance del conjunto de datos: Es una organización, proyectos o carpetas que contienen los buckets y los objetos para los que deseas metadatos. Puedes especificar proyectos o carpetas de forma individual o como un archivo CSV, con cada número de proyecto o carpeta en una línea independiente. Puedes especificar hasta 10,000 proyectos o carpetas en una configuración de conjunto de datos.
Filtros de bucket (opcionales): Son filtros que se usan para incluir y excluir buckets específicos del conjunto de datos por nombre de bucket o por regiones.
Período de retención: Es la cantidad de días durante los cuales el conjunto de datos captura y retiene datos, incluida la fecha de creación del conjunto de datos. Los conjuntos de datos se actualizan con metadatos cada 24 horas y pueden retener datos durante hasta 90 días. Los datos capturados fuera del período de retención se borran automáticamente. Por ejemplo, supongamos que tienes un conjunto de datos que se creó el 1 de octubre de 2023 con un período de retención establecido en 30. El 30 de octubre, el conjunto de datos reflejará los datos de los últimos 30 días, 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 período de retención en cualquier momento.
Ubicación: Es una ubicación para almacenar 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: Es un agente de servicio centrado en la configuración o en el proyecto.
Cuando creas una configuración de conjunto de datos, se aprovisiona un agente de servicio por ti. Para leer conjuntos de datos, se deben otorgar al agente de servicio los permisos necesarios para leer datos de los buckets de Cloud Storage.
Un agente de servicio centrado en el proyecto puede acceder a conjuntos de datos y escribirlos que se generan a partir de todas las configuraciones de conjuntos de datos del proyecto. Por ejemplo, si tienes varias configuraciones de conjuntos de datos dentro de un proyecto, solo debes otorgar los permisos necesarios al agente de servicio centrado en el proyecto una vez para que pueda leer y escribir conjuntos de datos para todas las configuraciones de conjuntos de datos del proyecto. Para obtener más información sobre los permisos necesarios para leer y escribir conjuntos de datos, consulta Permisos. Cuando se borra la configuración de un conjunto de datos, no se borra el agente de servicio centrado en el proyecto.
Un agente de servicio centrado en la configuración solo puede acceder al conjunto de datos generado por la configuración de conjunto de datos en particular y escribirlo. Esto significa que, si tienes varias configuraciones de conjuntos de datos, deberás otorgar los permisos necesarios a cada agente de servicio centrado en la configuración. Cuando se borra la configuración de un conjunto de datos, también se borra el agente de servicio centrado en la configuración.
Vincula el conjunto de datos a BigQuery después de crear una configuración de conjunto de datos. Cuando vinculas un conjunto de datos a BigQuery, se crea un conjunto de datos vinculado en BigQuery para realizar consultas. Puedes vincular o desvincular el conjunto de datos en cualquier momento.
Para obtener más información sobre las propiedades que estableces cuando creas o actualizas una configuración de conjunto de datos, consulta el recurso DatasetConfigs en la documentación de la API de JSON.
Ubicaciones admitidas
Las siguientes ubicaciones de BigQuery son compatibles 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 BigQuery almacena y consulta los datos.
El campo snapshotTime
almacena la hora de la actualización de la instantánea de metadatos del bucket en formato RFC 3339.
Metadatos de bucket
A menos que se indique lo contrario, puedes encontrar descripciones más detalladas de los siguientes campos de metadatos de bucket si consultas la Representación de recursos de buckets para la API de 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 |
public |
NULLABLE |
RECORD |
public.bucketPolicyOnly |
NULLABLE |
BOOLEAN |
public.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 |
tags* |
NULLABLE |
RECORD |
tags.lastUpdatedTime |
NULLABLE |
TIMESTAMP |
tags.tagMap |
REPEATED |
RECORD |
tags.tagMap.key |
NULLABLE |
STRING |
tags.tagMap.value |
NULLABLE |
STRING |
labels |
REPEATED |
RECORD |
labels.key |
NULLABLE |
STRING |
labels.value |
NULLABLE |
STRING |
* Las etiquetas del bucket Para obtener más información, consulta la API de Cloud Resource Manager.
Metadatos de objeto
A menos que se indique lo contrario, puedes encontrar descripciones más detalladas de los siguientes campos de metadatos de objetos si consultas la Representación de recursos de objetos para la API de 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 |
mediaLink |
NULLABLE |
STRING |
metageneration |
NULLABLE |
INTEGER |
name |
NULLABLE |
STRING |
selfLink |
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 |
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 para eventos y errores
En el conjunto de datos vinculado, también puedes ver los eventos de procesamiento de instantáneas y
los errores en las vistas events_view
y error_attributes_view
. Para obtener información sobre cómo solucionar los errores de procesamiento de instantáneas, consulta Soluciona problemas 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 |
Es la hora en formato RFC 3339 a la que se actualiza la instantánea de los eventos. |
manifest.viewName |
NULLABLE |
STRING |
Es el nombre de la vista que se actualizó. |
manifest.location |
NULLABLE |
STRING |
Es la ubicación de origen de los datos que se actualizaron. |
eventTime |
NULLABLE |
STRING |
La hora en que ocurrió el evento. |
eventCode |
NULLABLE |
STRING |
Es el código de evento asociado con 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 dentro de la instantánea manifest.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 |
Es el código de error asociado con esta entrada. Para obtener una lista de valores válidos y cómo resolverlos, consulta Cómo solucionar problemas de conjuntos de datos. |
errorSource |
NULLABLE |
STRING |
La fuente del error. Valor válido: CONFIGURATION_PREPROCESSING . |
errorTime |
NULLABLE |
TIMESTAMP |
La hora en que ocurrió el error. |
sourceGcsLocation |
NULLABLE |
STRING |
La 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 |
Es el nombre del bucket involucrado en el error. Puedes usar esta información para depurar un error de bucket. |
bucketErrorRecord.serviceAccount |
NULLABLE |
STRING |
La cuenta de servicio que necesita permiso para transferir objetos del bucket Puedes usar esta información para depurar un error de bucket. |
projectErrorRecord.projectNumber |
NULLABLE |
INTEGER |
Es el número del proyecto involucrado en el error. Puedes usar esta información para depurar un error de proyecto. |
projectErrorRecord.organizationName |
NULLABLE |
STRING |
Es el número de la organización a la que debe pertenecer el proyecto para que se procese. Un valor de 0 indica que el conjunto de datos no está en la organización. Puedes usar esta información para depurar un error de proyecto. |
Soluciona problemas de conjuntos de datos
Para obtener información sobre cómo solucionar los errores de procesamiento de instantáneas que se registran en la vista error_attributes_view
del conjunto de datos vinculado, consulta 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 . |
Agrega el proyecto de origen projectErrorRecord.projectNumber a la organización projectErrorRecord.organizationName . Para obtener instrucciones sobre cómo migrar un proyecto entre organizaciones, consulta Migra proyectos entre organizaciones. |
2 | Error de autorización del bucket | Se denegó el permiso para transferir objetos al bucket bucketErrorRecord.bucketName . |
Otorga permisos de Identity and Access Management (IAM) a la cuenta de servicio bucketErrorRecord.serviceAccount para permitir la transferencia de objetos al bucket bucketErrorRecord.bucketName . Para obtener más información, consulta Otorga 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 . |
Agrega el proyecto de destino projectErrorRecord.projectNumber a la organización projectErrorRecord.organizationName . Para obtener instrucciones sobre cómo migrar un proyecto entre organizaciones, consulta Migra proyectos entre organizaciones. |
4 | El proyecto de origen no tiene configurada la función Storage Intelligence. | El proyecto de origen projectErrorRecord.projectNumber no tiene configurada la función Storage Intelligence. |
Configura Storage Intelligence para el proyecto de origen projectErrorRecord.projectNumber . Para obtener más información, consulta Configura y administra Storage Intelligence. |
5 | El bucket no tiene Storage Intelligence configurado. | El bucket bucketErrorRecord.bucketName no tiene Storage Intelligence configurado. |
Configura Storage Intelligence para el bucket bucketErrorRecord.bucketName . Para obtener más información, consulta Configura y administra Storage Intelligence. |
Consideraciones
Ten en cuenta lo siguiente para las configuraciones de conjuntos de datos:
Cuando cambias el nombre de una carpeta en un bucket con el espacio de nombres jerárquico habilitado, los nombres de los objetos de ese bucket se actualizan. Cuando el conjunto de datos vinculado transfiere estas instantáneas de objetos, se consideran entradas nuevas en los conjuntos de datos vinculados.
Los conjuntos de datos solo son compatibles con estas ubicaciones de BigQuery.
¿Qué sigue?
- Usa conjuntos de datos de Storage Insights.
- Obtén información sobre la Inteligencia de almacenamiento.
- Ejecuta consultas de SQL en los conjuntos de datos de BigQuery.
- Obtén más información sobre los análisis de BigQuery.