Storage Insights datasets tables and schemas

This document describes the tables and their schemas included inStorage Insights datasets, which you can use to analyze operational patterns,monitor resource usage, and understand activity across your storage environment.

Dataset schema of metadata

The following sections describe the metadata fields included in datasets. For more informationabout BigQuery column modes, seeModes. The column modes determinehow BigQuery stores and queries the data.

Bucket metadata

The bucket metadata schema includes thebucket_attributes_view andbucket_attributes_latest_snapshot_view tables. The bucket metadata tables have the followingfields:

Metadata fieldModeTypeDescription
snapshotTimeNULLABLETIMESTAMPThesnapshotTime field stores the time of the bucket metadatasnapshot refresh inRFC 3339 format.
nameNULLABLESTRINGThe name of the bucket.
locationNULLABLESTRINGThe location of the bucket. Object data for objects in the bucket resides in physical storage within this location.
projectNULLABLEINTEGERThe project number of the project the bucket belongs to.
storageClassNULLABLESTRINGThe bucket's defaultstorage class.
publicNULLABLERECORDDeprecated. This field indicates whether a bucket is publicly accessible. UseiamConfiguration instead.
public.bucketPolicyOnlyNULLABLEBOOLEANDeprecated. This field, part of thepublic record, indicates whether uniform bucket-level access is enabled, which prevents access through object-level ACLs.
public.publicAccessPreventionNULLABLESTRINGDeprecated. This field, part of thepublic record, indicates whether public access to the bucket is prevented.
autoclassNULLABLERECORDThe bucket'sAutoclass configuration, which, when enabled, controls the storage class of objects based on how and when the objects are accessed.
autoclass.enabledNULLABLEBOOLEANWhether or not Autoclass is enabled.
autoclass.toggleTimeNULLABLETIMESTAMPThe time at which Autoclass was last enabled or disabled for this bucket, inRFC 3339 format.
versioningNULLABLEBOOLEANWhether or not the bucket has versioning enabled. For more information, seeObject Versioning.
lifecycleNULLABLEBOOLEANWhether or not the bucket has a lifecycle configuration. Seelifecycle management for more information.
metagenerationNULLABLEINTEGERThe metadata generation of this bucket.
timeCreatedNULLABLETIMESTAMPThe creation time of the bucket inRFC 3339 format.
tagsNULLABLERECORDDeprecated. This field contains user-defined key-value pairs associated with the bucket. UseresourceTags instead.
tags.lastUpdatedTimeNULLABLETIMESTAMPDeprecated. This field indicates the last time thetags were updated.
tags.tagMapREPEATEDRECORDDeprecated. This field, part of thetags record, contains the map of tag keys and values.
tags.tagMap.keyNULLABLESTRINGDeprecated. This field, part of thetags.tagMap record, represents the key of a tag.
tags.tagMap.valueNULLABLESTRINGDeprecated. This field, part of thetags.tagMap record, represents the value of a tag.
labelsREPEATEDRECORDUser-providedbucket labels, in key-value pairs.
labels.keyNULLABLESTRINGAn individual label entry.
labels.valueNULLABLESTRINGThe label's value.
softDeletePolicyNULLABLERECORDThe bucket'ssoft delete policy, which defines the period of time during which objects in the bucket are retained in a soft-deleted state after being deleted. Objects in a soft-deleted state cannot be permanently deleted, and are restorable until theirhardDeleteTime.
softDeletePolicy.effectiveTimeNULLABLEDATETIME

The datetime at which the soft delete policy becomes effective, inRFC 3339 format.

softDeletePolicy.effectiveTime is updated wheneversoftDeletePolicy.retentionDurationSeconds is increased.

softDeletePolicy.retentionDurationSecondsNULLABLELONGThe period of time during which a soft-deleted object is retained and cannot be permanently deleted, in seconds. The value must be greater than or equal to604800 (7 days) and less than7776000 (90 days). The value can also be set to0, which disables the soft delete policy.
iamConfigurationNULLABLERECORDThe IAM configuration for a bucket.
iamConfiguration.uniformBucketLevelAccessNULLABLERECORDThe bucket'suniform bucket-level access configuration.
iamConfiguration.uniformBucketLevelAccess.enabledNULLABLEBOOLEANWhether or not the bucket uses uniform bucket-level access.
iamConfiguration.publicAccessPreventionNULLABLESTRINGThe bucket'spublic access prevention status, which is either"inherited" or"enforced".
resourceTagsREPEATEDRECORDThe bucket'stags. For more information, seeCloud Resource Manager API.
resourceTags.keyNULLABLESTRINGTheresourceTags key.
resourceTags.valueNULLABLESTRINGTheresourceTags value.

Object metadata

The object metadata schema includes theobject_attributes_view andobject_attributes_latest_snapshot_view tables. The object metadata tables havethe following fields:

Metadata fieldModeTypeDescription
snapshotTimeNULLABLETIMESTAMPThesnapshotTime field stores the time of the object metadata snapshot refresh inRFC 3339 format.
bucketNULLABLESTRINGThe name of the bucket containing this object.
locationNULLABLESTRINGThe location of the bucket. Object data for objects in the bucket resides in physical storage within this location.
componentCountNULLABLEINTEGERReturned forcomposite objects only. Number of non-composite objects in the composite object.componentCount includes non-composite objects that were part of any composite objects used tocompose the current object.
contentDispositionNULLABLESTRINGContent-Disposition of the object data.
contentEncodingNULLABLESTRINGContent-Encoding of the object data.
contentLanguageNULLABLESTRINGContent-Language of the object data.
contentTypeNULLABLESTRINGContent-Type of the object data.
crc32cNULLABLEINTEGERCRC32c checksum, as described inRFC 4960, Appendix B; encoded usingbase64 in big-endian byte order.
customTimeNULLABLETIMESTAMPA user-specified timestamp for the object inRFC 3339 format.
etagNULLABLESTRINGHTTP 1.1Entity tag for the object.
eventBasedHoldNULLABLEBOOLEANWhether or not the object is subject to anevent-based hold.
generationNULLABLEINTEGERThe content generation of this object.
md5HashNULLABLESTRINGMD5 hash of the data, encoded usingbase64. This field is not present forcomposite objects.
mediaLinkNULLABLESTRINGA URL for downloading the object's data.
metadataREPEATEDRECORDUser-provided metadata, in key-value pairs.
metadata.keyNULLABLESTRINGAn individual metadata entry.
metadata.valueNULLABLESTRINGThe metadata value.
metagenerationNULLABLEINTEGERThe version of the metadata for this object at this generation.
nameNULLABLESTRINGThe name of the object.
selfLinkNULLABLESTRINGA URL for this object.
sizeNULLABLEINTEGERContent-Length of the data in bytes.
storageClassNULLABLESTRINGStorage class of the object.
temporaryHoldNULLABLEBOOLEANWhether or not the object is subject to atemporary hold.
timeCreatedNULLABLETIMESTAMPThe creation time of the object inRFC 3339 format.
timeDeletedNULLABLETIMESTAMPThe deletion time of the object inRFC 3339 format.
updatedNULLABLETIMESTAMPThemodification time of the object metadata inRFC 3339 format.
timeStorageClassUpdatedNULLABLETIMESTAMPThe time at which the object's storage class was last changed.
retentionExpirationTimeNULLABLETIMESTAMPThe earliest time that the object can be deleted, which depends on anyretention configuration set for the object and anyretention policy set for the bucket that contains the object. The value forretentionExpirationTime is given inRFC 3339 format.
softDeleteTimeNULLABLEDATETIMEThe time at which the object wassoft deleted. Only available for objects in buckets with a soft delete policy.
hardDeleteTimeNULLABLEDATETIMEThe time at which a soft-deleted object is permanently deleted and can no longer be restored. The value is the sum of thesoftDeleteTime value and thesoftDeletePolicy.retentionDurationSeconds value of the bucket. Only available for objects in buckets with a soft delete policy.
projectNULLABLEINTEGERThe project number of the project the bucket belongs to.

Latest bucket and object metadata snapshot

The linked dataset exposes the latest snapshot of the bucket and object metadatathrough the following dedicated views:

  • Thebucket_attributes_latest_snapshot_view table provides the latest metadatafor your Cloud Storage buckets. Its structure matches theBucketmetadata schema.

  • Theobject_attributes_latest_snapshot_view table provides the latest metadatafor your Cloud Storage objects. Its structure matches theObjectmetadata schema.

Project metadata

The linked dataset exposes project metadata as a view namedproject_attributes_view:

Metadata fieldModeTypeDescription
snapshotTimeNULLABLETIMESTAMPThesnapshotTime field stores the time of the project metadatasnapshot refresh inRFC 3339 format.
nameNULLABLESTRINGThe name of the project.
idNULLABLESTRINGThe unique identifier for the project.
numberNULLABLEINTEGERA numeric value associated with the project.

Dataset schema for activity data tables

Storage Insights datasets provide activity data, including operational metrics,error logs, and aggregated views with customizable scopes to support diverseanalysis needs. The following sections describe the activity data schemas andthe data available in them.

Object activity data

Theobject_events_view table in your Storage Insights dataset providesqueryable records of create, update, and delete object operations, metadata, anddetails about the errors encountered during these operations. You can use thedata to track and troubleshoot changes to your storage assets by querying theobject_events_view view. The data in theobject_events_view view is scopedto your Storage Intelligence subscription and lists all the activelyenabled objects within it.

Theobject_events_view table includes the following fields:

FieldModeTypeDescription
requestCompletionTimestampNULLABLETIMESTAMPThe timestamp when the request was completed, inRFC 3339 format.
projectNULLABLEINTEGERThe project number that owns the bucket resource.
bucketNameNULLABLESTRINGThe name of the bucket specified in the request.
objectNameNULLABLESTRINGThe name of the object specified in the request. This field can be null.
requestOperationNULLABLESTRINGThe Cloud Storage operation performed. This field is limited to write, update, and delete operations and can be null.
requestBytesNULLABLEINTEGERThe number of bytes sent in the request.
responseBytesNULLABLEINTEGERThe number of bytes sent in the response.
requestProcessingTimeMicrosNULLABLEINTEGERThe time in microseconds the server took to process the request. This time is measured from when the first byte is received until the response is sent. Forresumable uploads, the response to the final upload request determines the endpoint.
requestIdNULLABLESTRINGThe identifier for the request.
requestHostNULLABLESTRINGThe host specified in the original request.
requestHttpMethodNULLABLESTRINGThe HTTP method used for this request.
responseStatusNULLABLEINTEGERThe HTTP status code sent in the server's response.
requestReferrerNULLABLESTRINGThe HTTP referrer for the request.
sizeNULLABLEINTEGERThe size of the object in bytes.
generationNULLABLEINTEGERThe content generation of the object, used for object versioning.
timeCreatedNULLABLETIMESTAMPThe object's creation time, inRFC 3339 format.
storageClassNULLABLESTRINGThe storage class of the object.
errorReasonNULLABLESTRINGThe reason for the error (limited to 429 errors).
locationNULLABLESTRINGThe location of the object.

Project activity view

Theproject_activity_view table offers aggregated operational insights acrossyour projects. The table summarizes total activity by counting operation types,bytes transferred, and response codes and errors. You can use the projectactivity insights for monitoring, tracking, and internal cost attribution. Thedata in the view is determined by your Storage Intelligencesubscription scope. The view displays aggregated data only for the buckets andobjects that are actively enabled under your subscription. For example, if youenable Storage Intelligence only for ten specific buckets, the viewdisplays data exclusively for those ten buckets. Conversely, if you enableStorage Intelligence at a higher level (organization, folder, orproject), all buckets and objects within that scope are automatically included,and the view displays the aggregated data for them.

Theproject_activity_view table includes the following fields:

FieldModeTypeDescription
snapshotStartTimeNULLABLETIMESTAMPThe snapshot's start time, inRFC 3339 format.
snapshotEndTimeNULLABLETIMESTAMPThe snapshot's end time, inRFC 3339 format.
projectNULLABLEINTEGERThe project number.
totalRequestsNULLABLEINTEGERThe total number of requests made across the project.
totalReadsNULLABLEINTEGERThe total number of read operations.
totalWritesNULLABLEINTEGERThe total number of write operations.
totalUpdatesNULLABLEINTEGERThe total number of update operations.
totalDeletesNULLABLEINTEGERThe total number of delete operations.
totalListsNULLABLEINTEGERThe total number of list operations.
totalRequestBytesNULLABLEINTEGERThe total number of request bytes transferred.
totalResponseBytesNULLABLEINTEGERThe total number of response bytes transferred.
count4xxNULLABLEINTEGERThe total number of 4xx errors.
count5xxNULLABLEINTEGERThe total number of 5xx errors.
count2xxNULLABLEINTEGERThe total number of 2xx success responses.
count400NULLABLEINTEGERThe total number of 400 errors for bad requests.
count401NULLABLEINTEGERThe total number of 401 errors for unauthorized requests.
count403NULLABLEINTEGERThe total number of 403 errors for forbidden requests.
count429NULLABLEINTEGERThe total number of 429 errors for usage limit exceeded requests.

Bucket activity view

Thebucket_activity_view table offers aggregated operational insights acrossyour buckets. The table summarizes total activity by counting operation types,bytes transferred, response codes, errors, and includes details about topprefixes. You can use the bucket activity insights for bucket-level monitoring,troubleshooting, metering, and analyzing your most and least active buckets. Thedata inbucket_activity_view table is scoped to yourStorage Intelligence subscription and includes records for all activelyenabled buckets.

Thebucket_activity_view table includes the following fields:

FieldModeTypeDescription
snapshotStartTimeNULLABLETIMESTAMPThe snapshot's start time, inRFC 3339 format.
snapshotEndTimeNULLABLETIMESTAMPThe snapshot's end time, inRFC 3339 format.
nameNULLABLESTRINGThe name of the bucket.
generationNULLABLEINTEGERThe bucket's generation number.
projectNULLABLEINTEGERThe project number.
locationNULLABLESTRINGThe location of the bucket.
totalRequestsNULLABLEINTEGERThe total number of requests made on the bucket.
totalReadsNULLABLEINTEGERThe total number of read operations.
totalWritesNULLABLEINTEGERThe total number of write operations.
totalUpdatesNULLABLEINTEGERThe total number of update operations.
totalDeletesNULLABLEINTEGERThe total number of delete operations.
totalListsNULLABLEINTEGERThe total number of list operations.
totalRequestBytesNULLABLEINTEGERThe total number of request bytes transferred.
totalResponseBytesNULLABLEINTEGERThe total number of response bytes transferred.
count4xxNULLABLEINTEGERThe total number of 4xx errors.
count5xxNULLABLEINTEGERThe total number of 5xx errors.
count2xxNULLABLEINTEGERThe total number of 2xx success responses.
count400NULLABLEINTEGERThe total number of 400 errors for bad requests.
count401NULLABLEINTEGERThe total number of 401 errors for unauthorized requests.
count403NULLABLEINTEGERThe total number of 403 errors for forbidden requests.
count429NULLABLEINTEGERThe total number of 429 errors for usage limit exceeded requests.
topPrefixes429ErrorsREPEATEDRECORDThe top 5 bucket prefixes with the most 429 errors, returned as aRECORD containing the prefix as aSTRING and the error count as anINTEGER.
topPrefixesRequestBytesREPEATEDRECORDThe top 5 bucket prefixes with the highest number of requested bytes, returned as aRECORD containing the prefix as aSTRING and the count as anINTEGER.
topPrefixesResponseBytesREPEATEDRECORDThe top 5 bucket prefixes with the highest number of response bytes, returned as aRECORD containing the prefix as aSTRING and the count as anINTEGER.
topPrefixesHighestOperationsREPEATEDRECORDThe top 5 bucket prefixes with the highest number of operations, returned as aRECORD containing the prefix as aSTRING and the count as anINTEGER.

Bucket region activity view

Thebucket_region_activity_view table summarizes the total bytes sent andreceived for a bucket, aggregated by destination region. Use the bucket activityregional data to identify the most active regions, helping you determine theoptimal bucket location, analyze regional egress, and considerbucket relocation as needed tooptimize performance, cost, or resilience. Thedata inbucket_region_activity_view table is scoped to yourStorage Intelligence subscription and includes records for all activelyenabled buckets.

FieldModeTypeDescription
snapshotStartTimeNULLABLETIMESTAMPThe snapshot's start time, inRFC 3339 format.
snapshotEndTimeNULLABLETIMESTAMPThe snapshot's end time, inRFC 3339 format.
projectNULLABLEINTEGERThe project number for the bucket.
nameNULLABLESTRINGThe name of the bucket.
generationNULLABLEINTEGERThe bucket's generation number.
requestLocationNULLABLESTRINGThe Google Cloud location where the request originated.
bucketLocationNULLABLESTRINGThe location of the bucket.
requestBytesNULLABLEINTEGERThe total number of bytes transferred for requests between the specified bucket and location.
responseBytesNULLABLEINTEGERThe total number of bytes transferred for responses between the specified bucket and location.

Dataset schema for events and errors

In the linked dataset, you can also view the snapshot processing events anderrors in theevents_view anderror_attributes_view views. Totroubleshoot the snapshot processing errors, seeTroubleshoot dataseterrors.

Events log

You can view event logs in theevents_view view in the linked dataset:

Metadata fieldModeTypeDescription
manifest.snapshotTimeNULLABLETIMESTAMPThe time, inRFC 3339 format, when the snapshot of the events is refreshed.
manifest.viewNameNULLABLESTRINGThe name of the view that refreshes.
manifest.locationNULLABLESTRINGThe source location of the data that refreshes.
globalManifest.snapshotTimeNULLABLETIMESTAMPThe ingestion completion time, inRFC 3339 format, for the bucket and object attributes tables across all source locations.
eventTimeNULLABLETIMESTAMPThe time the event occurred.
eventCodeNULLABLESTRINGThe event code associated with the corresponding entry. TheeventCode values are as follows:
  • eventCode 1 indicates that themanifest.viewName view is refreshed with all entries for the source location(manifest.location) within the snapshot(manifest.snapshotTime).
  • eventCode 2 indicates that the dataset is refreshed with the bucket and object entries for all source locations. The refresh occurs within the snapshot(globalManifest.snapshotTime).
  • eventCode 3 refers to the activity data views being refreshed with all entries for the source location(manifest.location) within the log window.

Error codes

You can view error codes in theerror_attributes_view table in the linkeddataset:

Metadata fieldModeTypeDescription
errorCodeNULLABLEINTEGERThe error code associated with this entry. For a list of valid values and how to resolve these errors, seeTroubleshoot dataset errors.
errorSourceNULLABLESTRINGThe source of the error. Valid value:CONFIGURATION_PREPROCESSING.
errorTimeNULLABLETIMESTAMPThe time the error occurs.
sourceGcsLocationNULLABLESTRINGThe source Cloud Storage location of the error. For projects, this field is null because projects are not associated with a location.
bucketErrorRecord.bucketNameNULLABLESTRINGThe name of the bucket involved in the error. You can use this information to debug a bucket error.
bucketErrorRecord.serviceAccountNULLABLESTRINGThe service account that needs permission to ingest objects from the bucket. You can use this information to debug a bucket error.
projectErrorRecord.projectNumberNULLABLEINTEGERThe number of the project involved in the error. You can use this information to debug a project error.
projectErrorRecord.organizationNameNULLABLESTRINGThe name of the organization the project must belong to for processing. A value of0 indicates that the project is not in the organization. You can use this information to debug a project error.

Troubleshoot dataset errors

To troubleshoot the snapshot processing errors that are logged in theerror_attributes_view view in the linked dataset, see the following table:

Error codeError caseError messageTroubleshooting
1Source project doesn't belong to the organizationSource projectprojectErrorRecord.projectNumber doesn't belong to the organizationprojectErrorRecord.organizationName.Add source projectprojectErrorRecord.projectNumber to organizationprojectErrorRecord.organizationName. For instructions to migrate a project between organizations, seeMigrate projects between organizations.
2Bucket authorization errorPermission denied for ingesting objects for bucketbucketErrorRecord.bucketName.Give service accountbucketErrorRecord.serviceAccount Identity and Access Management (IAM) permissions to allow ingestion of objects for bucketbucketErrorRecord.bucketName. For more information, seeGrant required permissions to the service agent.
3Destination project doesn't belong to the organizationDestination projectprojectErrorRecord.projectNumber not in organizationprojectErrorRecord.organizationName.Add destination projectprojectErrorRecord.projectNumber to organizationprojectErrorRecord.organizationName. For instructions to migrate a project between organizations, seeMigrate projects between organizations.
4Source project doesn't have Storage Intelligence configured.Source projectprojectErrorRecord.projectNumber doesn't have Storage Intelligence configured.Configure Storage Intelligence for the source projectprojectErrorRecord.projectNumber. For more information, seeConfigure and manage Storage Intelligence.
5Bucket doesn't have Storage Intelligence configured.BucketbucketErrorRecord.bucketName doesn't have Storage Intelligence configured.Configure Storage Intelligence for the bucketbucketErrorRecord.bucketName. For more information, seeConfigure and manage Storage Intelligence.
6Bucket access authentication errorACTIVITY_BUCKET_ACCESS_AUTHORIZATION_ERROR for bucketbucketErrorRecord.bucketName.Grant service accountbucketErrorRecord.serviceAccount Identity and Access Management (IAM) permissions to allow ingestion of activity for bucketbucketErrorRecord.bucketName. For more information, seeGrant required permissions to the service agent.

What's next

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-12-17 UTC.