La funzionalità dei set di dati di Storage Insights ti aiuta a comprendere, organizzare e gestire i tuoi dati su larga scala. Puoi scegliere un'organizzazione o uno o più progetti o cartelle contenenti bucket e oggetti per cui vuoi aggiornare i metadati. Un indice dei metadati interrogabile per i bucket e gli oggetti inclusi in questi progetti viene reso disponibile come set di dati collegato a BigQuery.
Se vuoi ottenere insight per le tue risorse Cloud Storage esportate in BigQuery, utilizza i set di dati Storage Insights. Queste informazioni possono aiutarti con l'esplorazione dei dati, l'ottimizzazione dei costi, l'applicazione della sicurezza e l'implementazione della governance. I set di dati di Storage Insights sono una funzionalità esclusiva disponibile solo tramite l'abbonamento a Storage Intelligence.
Panoramica
Un set di dati Storage Insights è uno snapshot cumulativo dei metadati di tutti i bucket e gli oggetti all'interno di uno o più progetti di origine specificati all'interno di un'organizzazione. Le informazioni fornite dai set di dati ti consentono di comprendere meglio e controllare regolarmente i tuoi dati di Cloud Storage.
Per creare un set di dati, devi prima creare una configurazione del set di dati in un progetto. Puoi scegliere un'organizzazione o uno o più progetti o cartelle contenenti bucket e oggetti di cui vuoi visualizzare i metadati. La configurazione del set di dati genera set di dati ogni giorno. Sia le configurazioni dei set di dati sia i set di dati sono risorse archiviate in Cloud Storage.
Per visualizzare un set di dati, devi prima collegarlo a BigQuery.
Proprietà di configurazione del set di dati
Quando crei una configurazione del set di dati, imposti queste proprietà del set di dati. Potrebbero essere necessarie fino a 48 ore prima che i primi dati vengano visualizzati come set di dati collegato in BigQuery dopo la configurazione del set di dati. Gli eventuali oggetti o bucket appena aggiunti vengono inclusi nello snapshot giornaliero successivo.
Nome: un nome utilizzato come riferimento al set di dati. I nomi vengono utilizzati come identificatore delle configurazioni del set di dati e non possono essere modificati dopo la creazione della configurazione. Il nome contiene fino a 128 caratteri tra cui lettere, numeri e trattini bassi. Il nome deve iniziare con una lettera.
(Facoltativo) Descrizione: una descrizione del set di dati. Puoi modificare la descrizione in qualsiasi momento.
Ambito del set di dati: un campo obbligatorio che specifica un'organizzazione, progetti o cartelle contenenti i bucket e gli oggetti per i quali vuoi i metadati. Puoi specificare progetti o cartelle singolarmente o come file CSV, con ogni progetto o numero di cartella su una riga separata. Puoi specificare fino a 10.000 progetti o cartelle in una configurazione del set di dati. I set di dati sono configurati per l'ambito del set di dati specificato. Per ogni configurazione del set di dati può essere specificato un solo ambito del set di dati. Puoi aggiornare l'ambito del set di dati durante la modifica della configurazione del set di dati.
Filtri dei bucket (facoltativo): filtri utilizzati per includere ed escludere bucket specifici dal set di dati in base al nome del bucket o alle regioni.
Periodo di conservazione: il numero di giorni per cui il set di dati acquisisce e conserva i dati, inclusa la data di creazione del set di dati. I set di dati vengono aggiornati con i metadati ogni 24 ore e possono conservare i dati per un massimo di 90 giorni. I dati acquisiti al di fuori della finestra di conservazione vengono eliminati automaticamente. Ad esempio, supponi di avere un set di dati creato il 1° ottobre 2023 con un periodo di conservazione impostato su 30. Il 30 ottobre, il set di dati rifletterà i dati degli ultimi 30 giorni, dal 1° al 30 ottobre. Il 31 ottobre, il set di dati rifletterà i dati dal 2 al 31 ottobre. Puoi modificare il periodo di conservazione in qualsiasi momento.
Posizione: una posizione in cui archiviare il set di dati e i relativi dati. Ad esempio,
us-central1
. La località deve essere supportata da BigQuery. Ti consigliamo di selezionare la posizione delle tue tabelle BigQuery, se ne hai.Tipo di agente di servizio: un agente di servizio con ambito a livello di configurazione o un agente di servizio con ambito a livello di progetto.
La creazione di una configurazione del set di dati esegue il provisioning di un service agent per te. Per leggere e scrivere set di dati, all'agente di servizio devono essere concesse le autorizzazioni necessarie.
Un agente di servizio con ambito progetto può accedere e scrivere set di dati generati da tutte le configurazioni del set di dati nel progetto. Ad esempio, se hai più configurazioni di set di dati all'interno di un progetto, devi concedere le autorizzazioni richieste all'agente di servizio con ambito progetto una sola volta per consentirgli di leggere e scrivere set di dati per tutte le configurazioni di set di dati all'interno del progetto. Quando viene eliminata una configurazione del set di dati, l'agente di servizio con ambito progetto non viene eliminato.
Un agente di servizio con ambito di configurazione può accedere e scrivere solo il set di dati generato dalla particolare configurazione del set di dati. Ciò significa che se hai più configurazioni di set di dati, dovrai concedere le autorizzazioni richieste a ogni agente di servizio con ambito di configurazione. Quando viene eliminata una configurazione del set di dati, viene eliminato l'agente di servizio ambito della configurazione.
Collega il set di dati a BigQuery dopo aver creato una configurazione del set di dati. Il collegamento di un set di dati a BigQuery crea un set di dati collegato in BigQuery per le query. Puoi collegare o scollegare il set di dati in qualsiasi momento.
Per ulteriori informazioni sulle proprietà che imposti durante la creazione o l'aggiornamento di una configurazione del set di dati, consulta la risorsa DatasetConfigs nella documentazione dell'API JSON.
Località supportate
Per la creazione di set di dati collegati sono supportate le seguenti località BigQuery:
EU
US
asia-southeast1
europe-west1
us-central1
us-east1
us-east4
Schema di set di dati dei metadati
Le sezioni seguenti descrivono i campi dei metadati inclusi nei set di dati. Per ulteriori informazioni sulle modalità delle colonne BigQuery, vedi Modalità. Le modalità delle colonne determinano in che modo BigQuery archivia ed esegue query sui dati.
Metadati del bucket
La tabella seguente descrive i campi dei metadati del bucket:
Campo metadati | Modalità | Tipo | Descrizione |
---|---|---|---|
snapshotTime |
NULLABLE |
TIMESTAMP |
Il campo snapshotTime memorizza l'ora dell'aggiornamento dello snapshot dei metadati del bucket nel formato RFC 3339. |
name |
NULLABLE |
STRING |
Il nome del bucket. |
location |
NULLABLE |
STRING |
La posizione del bucket. I dati degli oggetti nel bucket risiedono nell'archiviazione fisica all'interno di questa località. |
project |
NULLABLE |
INTEGER |
Il numero di progetto del progetto a cui appartiene il bucket. |
storageClass |
NULLABLE |
STRING |
La classe di archiviazione predefinita del bucket. |
public |
NULLABLE |
RECORD |
Deprecato. Questo campo indica se un bucket era accessibile pubblicamente. Utilizza iamConfiguration. |
public.bucketPolicyOnly |
NULLABLE |
BOOLEAN |
Deprecato. Questo campo, parte del record public , indica se è stato attivato l'accesso uniforme a livello di bucket, che impedisce la concessione dell'accesso tramite ACL a livello di oggetto. |
public.publicAccessPrevention |
NULLABLE |
STRING |
Deprecato. Questo campo, parte del record public , indica se l'accesso pubblico al bucket è stato impedito. |
autoclass |
NULLABLE |
RECORD |
La configurazione di Autoclass del bucket, che, se abilitata, controlla la classe di archiviazione degli oggetti in base a come e quando vengono acceduti. |
autoclass.enabled |
NULLABLE |
BOOLEAN |
Indica se Autoclass è abilitato. |
autoclass.toggleTime |
NULLABLE |
TIMESTAMP |
L'ora in cui Autoclass è stata abilitata o disabilitata l'ultima volta per questo bucket, nel formato RFC 3339. |
versioning |
NULLABLE |
BOOLEAN |
Indica se il controllo delle versioni è abilitato per il bucket. Per saperne di più, consulta la sezione Controllo delle versioni degli oggetti. |
lifecycle |
NULLABLE |
BOOLEAN |
Indica se il bucket ha una configurazione del ciclo di vita. Per maggiori informazioni, consulta la sezione Gestione del ciclo di vita. |
metageneration |
NULLABLE |
INTEGER |
La generazione dei metadati di questo bucket. |
timeCreated |
NULLABLE |
TIMESTAMP |
L'ora di creazione del bucket nel formato RFC 3339. |
tags |
NULLABLE |
RECORD |
Deprecato. Questo campo contiene coppie chiave-valore definite dall'utente associate al bucket. Utilizza invece i tag delle risorse. |
tags.lastUpdatedTime |
NULLABLE |
TIMESTAMP |
Deprecato. Questo campo, parte del record tags , indica l'ultima volta che i tag sono stati aggiornati. |
tags.tagMap |
REPEATED |
RECORD |
Deprecato. Questo campo, parte del record tags , contiene la mappa delle chiavi e dei valori dei tag. |
tags.tagMap.key |
NULLABLE |
STRING |
Deprecato. Questo campo, parte del record tags.tagMap , rappresenta la chiave di un tag. |
tags.tagMap.value |
NULLABLE |
STRING |
Deprecato. Questo campo, parte del record tags.tagMap , rappresenta il valore di un tag. |
labels |
REPEATED |
RECORD |
Etichette dei bucket fornite dall'utente, in coppie chiave-valore. |
labels.key |
NULLABLE |
STRING |
Una singola voce di etichetta. |
labels.value |
NULLABLE |
STRING |
Il valore dell'etichetta. |
softDeletePolicy |
NULLABLE |
OBJECT |
Il criterio di eliminazione temporanea del bucket, che definisce il periodo di tempo durante il quale gli oggetti nel bucket vengono conservati in uno stato di eliminazione temporanea dopo essere stati eliminati. Gli oggetti in stato di eliminazione temporanea non possono essere eliminati definitivamente e sono ripristinabili fino al loro hardDeleteTime . |
softDeletePolicy.effectiveTime |
NULLABLE |
DATETIME |
La data e l'ora in cui la norma di eliminazione temporanea diventa effettiva, nel formato RFC 3339.
|
softDeletePolicy.retentionDurationSeconds |
NULLABLE |
LONG |
Il periodo di tempo durante il quale un oggetto eliminato temporaneamente viene conservato e non può essere eliminato definitivamente, in secondi. Il valore deve essere maggiore o uguale a 604800 (7 giorni) e inferiore a 7776000 (90 giorni). Il valore può anche essere impostato su 0 , che disattiva la policy di eliminazione temporanea. |
iamConfiguration |
NULLABLE |
RECORD |
La configurazione IAM per un bucket. |
iamConfiguration.uniformBucketLevelAccess |
NULLABLE |
RECORD |
La configurazione dell'accesso uniforme a livello di bucket del bucket. |
iamConfiguration.uniformBucketLevelAccess.enabled |
NULLABLE |
BOOLEAN |
Se il bucket utilizza o meno l'accesso uniforme a livello di bucket. |
iamConfiguration.publicAccessPrevention |
NULLABLE |
STRING |
Lo stato di prevenzione dell'accesso pubblico del bucket, che è "inherited" o "enforced" . |
resourceTags |
REPEATED |
RECORD |
I tag del bucket. Per saperne di più, consulta la Cloud Resource Manager API. |
resourceTags.key |
NULLABLE |
STRING |
La chiave del tag della risorsa. |
resourceTags.value |
NULLABLE |
STRING |
Il valore del tag della risorsa. |
Metadati degli oggetti
La tabella seguente descrive i campi dei metadati degli oggetti:
Campo metadati | Modalità | Tipo | Descrizione |
---|---|---|---|
snapshotTime |
NULLABLE |
TIMESTAMP |
Il campo snapshotTime memorizza l'ora dell'aggiornamento dello snapshot dei metadati dell'oggetto nel formato RFC 3339. |
bucket |
NULLABLE |
STRING |
Il nome del bucket contenente questo oggetto. |
location |
NULLABLE |
STRING |
La posizione del bucket. I dati degli oggetti nel bucket risiedono nell'archiviazione fisica all'interno di questa località. |
componentCount |
NULLABLE |
INTEGER |
Restituito solo per gli oggetti compositi. Numero di oggetti non compositi nell'oggetto composito. componentCount include oggetti non compositi che facevano parte di oggetti compositi utilizzati per comporre l'oggetto corrente. |
contentDisposition |
NULLABLE |
STRING |
Content-Disposition dei dati dell'oggetto. |
contentEncoding |
NULLABLE |
STRING |
Content-Encoding dei dati dell'oggetto. |
contentLanguage |
NULLABLE |
STRING |
Content-Language dei dati dell'oggetto. |
contentType |
NULLABLE |
STRING |
Content-Type dei dati dell'oggetto. |
crc32c |
NULLABLE |
INTEGER |
Checksum CRC32c, come descritto nel documento RFC 4960, Appendice B; codificato utilizzando base64 in ordine dei byte big-endian. |
customTime |
NULLABLE |
TIMESTAMP |
Un timestamp specificato dall'utente per l'oggetto nel formato RFC 3339. |
etag |
NULLABLE |
STRING |
Tag di entità HTTP 1.1 per l'oggetto. |
eventBasedHold |
NULLABLE |
BOOLEAN |
Indica se l'oggetto è soggetto a un blocco basato su eventi. |
generation |
NULLABLE |
INTEGER |
La generazione di contenuti di questo oggetto. |
md5Hash |
NULLABLE |
STRING |
Hash MD5 dei dati, codificato utilizzando base64. Questo campo non è presente per gli oggetti compositi. |
mediaLink |
NULLABLE |
STRING |
Un URL per scaricare i dati dell'oggetto. |
metadata |
REPEATED |
RECORD |
Metadati forniti dall'utente, in coppie chiave-valore. |
metadata.key |
NULLABLE |
STRING |
Una singola voce di metadati. |
metadata.value |
NULLABLE |
STRING |
Il valore dei metadati. |
metageneration |
NULLABLE |
INTEGER |
La versione dei metadati per questo oggetto in questa generazione. |
name |
NULLABLE |
STRING |
Il nome dell'oggetto. |
selfLink |
NULLABLE |
STRING |
Un URL per questo oggetto. |
size |
NULLABLE |
INTEGER |
Content-Length dei dati in byte. |
storageClass |
NULLABLE |
STRING |
Classe di archiviazione dell'oggetto. |
temporaryHold |
NULLABLE |
BOOLEAN |
Indica se l'oggetto è soggetto a un blocco temporaneo. |
timeCreated |
NULLABLE |
TIMESTAMP |
L'ora di creazione dell'oggetto nel formato RFC 3339. |
timeDeleted |
NULLABLE |
TIMESTAMP |
L'ora di eliminazione dell'oggetto nel formato RFC 3339. |
updated |
NULLABLE |
TIMESTAMP |
L'ora di modifica dei metadati dell'oggetto nel formato RFC 3339. |
timeStorageClassUpdated |
NULLABLE |
TIMESTAMP |
L'ora in cui è stata modificata l'ultima volta la classe di archiviazione dell'oggetto. |
retentionExpirationTime |
NULLABLE |
TIMESTAMP |
Il momento più remoto in cui l'oggetto può essere eliminato, che dipende da qualsiasi configurazione della conservazione impostata per l'oggetto e da qualsiasi criterio di conservazione impostato per il bucket che contiene l'oggetto. Il valore di retentionExpirationTime è nel formato RFC 3339. |
softDeleteTime |
NULLABLE |
DATETIME |
L'ora in cui l'oggetto è stato eliminato temporaneamente. Disponibile solo per gli oggetti nei bucket con una policy di eliminazione temporanea. |
hardDeleteTime |
NULLABLE |
DATETIME |
Il momento in cui un oggetto eliminato temporaneamente viene eliminato definitivamente e non può più essere ripristinato. Il valore è la somma del valore softDeleteTime e del valore softDeletePolicy.retentionDurationSeconds del bucket. Disponibile solo per gli oggetti nei bucket con una policy di eliminazione temporanea. |
project |
NULLABLE |
INTEGER |
Il numero di progetto del progetto a cui appartiene il bucket. |
Ultimo snapshot dei metadati di bucket e oggetti
Il set di dati collegato espone l'ultimo snapshot dei metadati del bucket e dell'oggetto tramite le seguenti visualizzazioni dedicate:
bucket_attributes_latest_snapshot_view
fornisce i metadati più recenti per i bucket Cloud Storage. La sua struttura corrisponde allo schema dei metadati del bucket.object_attributes_latest_snapshot_view
fornisce i metadati più recenti per gli oggetti Cloud Storage. La sua struttura corrisponde allo schema dei metadati dell'oggetto.
Metadati di progetto
I metadati del progetto vengono esposti come una vista denominata project_attributes_view
nel
set di dati collegato:
Campo metadati | Modalità | Tipo | Descrizione |
---|---|---|---|
snapshotTime |
NULLABLE |
TIMESTAMP |
Il campo snapshotTime memorizza l'ora di aggiornamento dello snapshot dei metadati del progetto nel formato RFC 3339. |
name |
NULLABLE |
STRING |
Il nome del progetto. |
id |
NULLABLE |
STRING |
L'identificatore univoco del progetto. |
number |
NULLABLE |
NUMBER |
Un valore numerico associato al progetto. |
Schema del set di dati per eventi ed errori
Nel set di dati collegato, puoi anche visualizzare gli eventi di elaborazione degli snapshot e
gli errori nelle visualizzazioni events_view
e error_attributes_view
. Per scoprire come
risolvere i problemi relativi all'elaborazione degli snapshot, consulta Risolvere i problemi relativi ai set di dati.
Log eventi
Puoi visualizzare i log eventi nella visualizzazione events_view
del set di dati collegato:
Nome colonna | Modalità | Tipo | Descrizione |
---|---|---|---|
manifest.snapshotTime |
NULLABLE |
TIMESTAMP |
L'ora nel formato RFC 3339 in cui viene aggiornato lo snapshot degli eventi. |
manifest.viewName |
NULLABLE |
STRING |
Il nome della visualizzazione aggiornata. |
manifest.location |
NULLABLE |
STRING |
La posizione di origine dei dati aggiornati. |
globalManifest.snapshotTime |
NULLABLE |
TIMESTAMP |
L'ora nel formato RFC 3339 in cui viene aggiornato lo snapshot degli eventi. |
eventTime |
NULLABLE |
STRING |
L'ora in cui si è verificato l'evento. |
eventCode |
NULLABLE |
STRING |
Il codice evento associato alla voce corrispondente. Il codice evento
1 si riferisce all'aggiornamento della visualizzazione manifest.viewName con tutte
le voci per la posizione di origine manifest.location all'interno dello snapshot
manifest.snapshotTime . Il codice evento 2 indica che il set di dati viene aggiornato con le voci di bucket e oggetto per tutte le località di origine. Questo aggiornamento si verifica all'interno dello snapshot globalManifest.snapshotTime . |
Codici di errore
Puoi visualizzare i codici di errore nella visualizzazione error_attributes_view
del set di dati collegato:
Nome colonna | Modalità | Tipo | Descrizione |
---|---|---|---|
errorCode |
NULLABLE |
INTEGER |
Il codice di errore associato a questa voce. Per un elenco dei valori validi e come risolverli, consulta Risolvere gli errori del set di dati. |
errorSource |
NULLABLE |
STRING |
L'origine dell'errore. Valore valido: CONFIGURATION_PREPROCESSING . |
errorTime |
NULLABLE |
TIMESTAMP |
L'ora in cui si è verificato l'errore. |
sourceGcsLocation |
NULLABLE |
STRING |
La posizione di Cloud Storage di origine dell'errore. Per i progetti, questo campo è nullo perché non hanno una posizione. |
bucketErrorRecord.bucketName |
NULLABLE |
STRING |
Il nome del bucket coinvolto nell'errore. Puoi utilizzare queste informazioni per eseguire il debug di un errore del bucket. |
bucketErrorRecord.serviceAccount |
NULLABLE |
STRING |
Il account di servizio che richiede l'autorizzazione per importare oggetti dal bucket. Puoi utilizzare queste informazioni per eseguire il debug di un errore del bucket. |
projectErrorRecord.projectNumber |
NULLABLE |
INTEGER |
Il numero del progetto coinvolto nell'errore. Puoi utilizzare queste informazioni per eseguire il debug di un errore del progetto. |
projectErrorRecord.organizationName |
NULLABLE |
STRING |
Il numero dell'organizzazione a cui deve appartenere il progetto per essere elaborato. Un valore pari a 0 indica che il set di dati non si trova nell'organizzazione. Puoi utilizzare queste informazioni per eseguire il debug di un errore del progetto. |
Risolvere i problemi relativi agli errori del set di dati
Per scoprire come risolvere gli errori di elaborazione degli snapshot registrati nella visualizzazione error_attributes_view
del set di dati collegato, consulta la seguente tabella:
Codice di errore | Error Case | Messaggio di errore | Risoluzione dei problemi |
---|---|---|---|
1 | Il progetto di origine non appartiene all'organizzazione | Il progetto di origine projectErrorRecord.projectNumber non appartiene all'organizzazione projectErrorRecord.organizationName . |
Aggiungi il progetto di origine projectErrorRecord.projectNumber all'organizzazione projectErrorRecord.organizationName . Per istruzioni su come eseguire la migrazione di un progetto tra organizzazioni, consulta Eseguire la migrazione dei progetti tra organizzazioni. |
2 | Errore di autorizzazione del bucket | Autorizzazione negata per l'importazione di oggetti per il bucket bucketErrorRecord.bucketName . |
Concedi al account di servizio bucketErrorRecord.serviceAccount le autorizzazioni Identity and Access Management (IAM) per consentire l'importazione di oggetti per il bucket bucketErrorRecord.bucketName . Per ulteriori informazioni, vedi Concedere le autorizzazioni necessarie all'agente di servizio. |
3 | Il progetto di destinazione non appartiene all'organizzazione | Il progetto di destinazione projectErrorRecord.projectNumber non si trova nell'organizzazione projectErrorRecord.organizationName . |
Aggiungi il progetto di destinazione projectErrorRecord.projectNumber all'organizzazione projectErrorRecord.organizationName . Per istruzioni su come eseguire la migrazione di un progetto tra organizzazioni, consulta Eseguire la migrazione dei progetti tra organizzazioni. |
4 | Il progetto di origine non ha Storage Intelligence configurato. | Il progetto di origine projectErrorRecord.projectNumber non ha Storage Intelligence configurato. |
Configura Storage Intelligence per il progetto di origine projectErrorRecord.projectNumber . Per ulteriori informazioni, vedi Configurare e gestire Storage Intelligence. |
5 | Il bucket non ha Storage Intelligence configurato. | Il bucket bucketErrorRecord.bucketName non ha Storage Intelligence configurato. |
Configura Storage Intelligence per il bucket bucketErrorRecord.bucketName . Per ulteriori informazioni, vedi Configurare e gestire Storage Intelligence. |
Considerazioni
Considera quanto segue per le configurazioni dei set di dati:
Quando rinomini una cartella in un bucket con lo spazio dei nomi gerarchico abilitato, i nomi degli oggetti in quel bucket vengono aggiornati. Quando vengono importati dal set di dati collegato, questi snapshot degli oggetti vengono considerati nuove voci nei set di dati collegati.
I set di dati sono supportati solo in queste posizioni BigQuery.
Passaggi successivi
- Utilizza i set di dati Storage Insights.
- Scopri di più su Storage Intelligence.
- Esegui query SQL sui set di dati in BigQuery.
- Scopri di più su BigQuery Analytics.