Google Cloud Storage
Google Cloud Storage is Google Cloud's managed object storage service. You put files and other data into buckets, then control where the data lives, who can access it, how long it stays, and what storage behavior you pay for.
itCloud computing | OpenSkills.info
Course pathWalk it in order
Look it upDip in anytime
Go furtherLeaves this page
Don't Panic
Don't Panic: Google Cloud Storage
Google Cloud Storage is the place Google Cloud puts data when the application can cope with an object instead of demanding a disk. An object is bytes, a name, and metadata. It lives in a bucket. That sounds almost offensively manageable, which is how the trouble starts.
The bucket is not a drawer with a nice label. It is where location, access, protection, and lifecycle choices gather for a serious meeting. Pick a region when readers and writers live together. Pick a dual-region or multi-region when broader availability or distribution has a reason. The object name may contain slashes and look very much like a file path, but it has not secretly become a shared file system while nobody was looking.
The important trick is generation, the identifier for one version of object data. Two workers can see the same object, and one can replace it first. A generation precondition lets the later worker fail instead of replacing the first change with quiet confidence. Strong consistency means successful writes show up immediately for object reads and listings. Caches have their own opinions, naturally, so public content still needs suitable cache metadata or versioned names.
The next troublesome idea is that storage class is not a personality test for data. Standard, Nearline, Coldline, Archive, and Rapid use the same object interface. Their access and cost behavior differs. Autoclass responds to observed access patterns. Lifecycle rules follow conditions you define. The cheap-looking choice can charge for retrieval, early deletion, operations, replication, or network transfer, because storage bills enjoy being assembled from several parts.
Access also has two jobs. IAM, Google Cloud's role system, decides which principals can work with the bucket and its objects. Uniform bucket-level access removes object ACLs so there is one system to reason about. A signed URL is different: it gives its holder temporary permission for one request. It is a credential that happens to have excellent posture as a URL.
Protection controls are related, not interchangeable. Soft delete retains recent deletions. Object Versioning keeps noncurrent generations. A retention policy blocks early deletion or replacement, and Bucket Lock makes that policy irreversible. Lifecycle rules act on matching objects. Start with what must be recoverable, for how long, and by whom. Then test a restore. A successful upload is not a rescue rehearsal.
Read the Intro for the full map and the Glossary when the terms begin breeding. Use Slides for the relationships between location, class, access, and protection. Keep the Cheatsheet nearby when choosing controls, and use the Practice and Exercise tabs to prove an object path instead of merely admiring one.
Where this skill leads
Relevant careers
See how this topic contributes to broader role-level skill maps.
Sources
- https://docs.cloud.google.com/storage/docs/introduction
Supports
- Cloud Storage is a managed object storage service
- Buckets contain objects and belong to projects
- APIs, client libraries, command-line tools, and HTTP endpoints provide access
- Buckets, objects, folders, and managed folders are Google Cloud resources
- https://docs.cloud.google.com/storage/docs/objects
Supports
- Objects have names, data, metadata, and generation identifiers
- Slash characters can support folder-like naming without ordinary file-system semantics
- Replacing an object is atomic
- Generation numbers identify versions of object data
- https://docs.cloud.google.com/storage/docs/bucket-locations
Supports
- Bucket location determines physical placement of object data
- Region, dual-region, and multi-region location types have different replication behavior
- Colocating data and compute can improve performance and lower total cost
- Location affects availability and price
- https://docs.cloud.google.com/storage/docs/storage-classes
Supports
- Storage class is object metadata that affects availability and pricing
- Standard, Nearline, Coldline, Archive, and Rapid address different access patterns
- New objects inherit the bucket default class unless another class is specified
- Changing a bucket default does not alter existing objects
- Autoclass can manage storage classes automatically
- https://cloud.google.com/storage/pricing
Supports
- Nearline, Coldline, and Archive have minimum storage durations
- Pricing includes stored data, operations, retrieval, replication, feature, and network-transfer dimensions
- Early deletion or rewrite can incur minimum-duration charges
- Retrieval and transfer fees depend on bytes accessed
- https://docs.cloud.google.com/storage/docs/access-control
Supports
- Cloud Storage supports IAM and access control lists
- Uniform bucket-level access creates an IAM-only access model
- Public access prevention blocks access through public principals
- Signed URLs provide another access path
- https://docs.cloud.google.com/storage/docs/uniform-bucket-level-access
Supports
- Uniform bucket-level access disables object access control lists
- IAM controls access to buckets and objects after the setting is enabled
- Uniform access supports a simpler policy model than mixed IAM and access control lists
- https://docs.cloud.google.com/storage/docs/access-control/signed-urls
Supports
- Signed URLs grant time-limited access to a specific Cloud Storage request
- Anyone possessing a valid signed URL can use its permission
- Signed URLs can support read, write, or delete access
- Signed URLs use XML API endpoints
- https://docs.cloud.google.com/storage/docs/protection-backup-recovery-overview
Supports
- Soft delete, Object Versioning, retention policies, Bucket Lock, and lifecycle management solve different protection needs
- Protection design depends on recovery and retention requirements
- https://docs.cloud.google.com/storage/docs/soft-delete
Supports
- Soft delete retains deleted buckets and objects during a retention duration
- Authorized users can restore data within that duration
- Soft-deleted data can add storage cost
- Lifecycle rules do not manage soft-deleted objects
- https://docs.cloud.google.com/storage/docs/object-versioning
Supports
- Object Versioning retains noncurrent generations after replacement or deletion
- Noncurrent versions remain accessible until removed
- Versioning and soft delete can be enabled together
- Retained versions incur storage charges
- https://docs.cloud.google.com/storage/docs/lifecycle
Supports
- Lifecycle configurations contain rules applied to current and future objects
- Matching rules can delete objects or change storage class
- Retention policies can prevent lifecycle deletion
- Lifecycle management can act on noncurrent versions
- https://docs.cloud.google.com/storage/docs/bucket-lock
Supports
- Retention policies prevent object deletion or replacement before retention age
- Locking a retention policy is irreversible
- A locked policy cannot be reduced or removed
- https://docs.cloud.google.com/storage/docs/consistency
Supports
- Cloud Storage provides strong global consistency for object reads and listings
- Bucket reads and listings are strongly consistent
- Successful writes are immediately available to reads and metadata operations
- Public cache behavior remains governed by cache settings
- https://docs.cloud.google.com/storage/docs/request-preconditions
Supports
- Generation and metageneration conditions prevent race conditions
- A generation-match value of zero supports create-only behavior
- Preconditions can make eligible operations safe to retry
- ETags can protect metadata requests on supported interfaces
- https://docs.cloud.google.com/storage/docs/retry-strategy
Supports
- Retry safety depends on the response and operation idempotency
- Transient failures should use exponential backoff
- Preconditions can make some mutations conditionally idempotent
- Unbounded, layered, or unconditional retries are anti-patterns
- https://docs.cloud.google.com/storage/docs/encryption
Supports
- Cloud Storage encrypts data on the server side before writing to disk
- Google manages default encryption keys
- Customer-managed, customer-supplied, and client-side options change key responsibility
- Lost customer-controlled keys can make data unreadable
- https://docs.cloud.google.com/storage/docs/encryption/customer-managed-keys
Supports
- Customer-managed keys use Cloud Key Management Service
- Customers control key location, rotation, permissions, and lifecycle
- A Cloud Storage service agent needs permission to use the key
- Disabling or destroying a required key can prevent object decryption
- https://docs.cloud.google.com/storage/docs/discover-object-storage-gcloud
Supports
- The Google Cloud CLI can create buckets and upload, list, download, and delete objects
- The official quickstart provides an ordered introductory practice path
- https://github.com/GoogleCloudPlatform/awesome-google-cloud
Supports
- The curated list is archived
- Its Storage and Databases section links to the official Cloud Storage product page without distinct storage tools
- https://aws.amazon.com/s3/
Supports
- Amazon S3 is a managed object-storage product.
- https://azure.microsoft.com/products/storage/blobs/
Supports
- Azure Blob Storage is a managed object-storage product.
- https://www.cloudflare.com/developer-platform/products/r2/
Supports
- Cloudflare R2 is an object-storage product integrated with Cloudflare services.
- https://www.backblaze.com/cloud-storage
Supports
- Backblaze B2 Cloud Storage is an object-storage product.
- https://wasabi.com/cloud-storage
Supports
- Wasabi Hot Cloud Storage is an object-storage product.
- https://min.io/
Supports
- MinIO is a self-managed object-storage product.
- https://docs.cloud.google.com/storage/docs/release-notes
Supports
- Cloud Storage release notes document 2016 storage-class changes, 2017 IAM and Requester Pays milestones, and 2020 Archive and dual-region milestones.
- https://cloud.google.com/blog/products/gcp/introducing-coldline-and-a-unified-platform-for-data-storage
Supports
- Google announced Coldline and storage-class changes in October 2016.
- https://cloud.google.com/blog/products/storage-data-transfer/store-it-analyze-it-back-it-up-cloud-storage-updates-bring-new-replication-options
Supports
- Google announced dual-regional Cloud Storage in 2018.
- https://cloud.google.com/blog/products/storage-data-transfer/google-cloud-expands-storage-portfolio-with-latest-launches
Supports
- Google announced Turbo Replication for dual-region buckets in September 2021.
- https://cloud.google.com/blog/products/storage-data-transfer/optimize-your-cloud-storage-spend
Supports
- Google introduced Autoclass for new Cloud Storage buckets in November 2022.
- https://cloud.google.com/blog/products/storage-data-transfer/autoclass-now-available-for-existing-cloud-storage-buckets
Supports
- Google made Autoclass available for existing Cloud Storage buckets in November 2023.
- Google describes unexpected operation charges from prematurely moving many objects to colder storage classes.
- https://cloud.google.com/blog/products/storage-data-transfer/using-dual-region-buckets-in-google-cloud-storage
Supports
- Google announced additional European Cloud Storage dual-region pairings in August 2024.
- https://docs.cloud.google.com/storage/docs/lifecycle
Supports
- Cloud Storage documents that Class A operations for a small-object class transition can outweigh lower-class storage savings.
