Product overview of Cloud Storage

This page provides an overview of Cloud Storage and how it works.

Cloud Storage is a service for storing your objects in Trusted Cloud by S3NS. An object is an immutable piece of data consisting of a file of any format. You store objects in containers called buckets.

All buckets are associated with a project, and you can group your projects under an organization. Each project, bucket, managed folder, and object in Trusted Cloud by S3NS is a resource in Trusted Cloud by S3NS, as are things such as Compute Engine instances.

After you create a project, you can create Cloud Storage buckets, upload objects to your buckets, and download objects from your buckets. You can also grant permissions to make your data accessible to principals you specify or accessible to everyone on the public internet.

The Trusted Cloud by S3NS hierarchy

Here's how the Cloud Storage structure can apply to a real-world case:

  • Organization: Your company, called Example Inc., creates a Trusted Cloud by S3NS organization called exampleinc.org.

  • Project: Example Inc. is building several applications, and each one is associated with a project. Each project has its own set of Cloud Storage APIs, as well as other resources.

  • Bucket: Each project can contain multiple buckets, which are containers to store your objects. For example, you might create a photos bucket for all the image files your app generates and a separate videos bucket.

  • Object: Each bucket can contain essentially unlimited individual objects, such as an image called puppy.png.

  • Managed folder: Each bucket can also contain multiple managed folders, which grant additional access beyond the access granted to the overall bucket. This additional access applies to objects that have a prefix matching the managed folder name. For example, you might create an animals/ managed folder, which gives designated users additional access to objects such as animals/puppy.png and animals/kitten.png.

Basic tools for Cloud Storage

Here are some basic ways you can interact with Cloud Storage:

  • Console: The Trusted Cloud console provides a visual interface for you to manage your data in a browser.

  • Google Cloud CLI: The gcloud CLI allows you to interact with Cloud Storage through a terminal using gcloud storage commands.

  • Client libraries: The Cloud Storage client libraries allow you to manage your data using one of your preferred languages, including C++, C#, Go, Java, Node.js, PHP, Python, and Ruby.

  • REST APIs: Manage your data using the JSON or XML API.

  • Terraform: Terraform is an infrastructure-as-code (IaC) tool that you can use to provision the infrastructure for Cloud Storage.

  • Cloud Storage FUSE: Cloud Storage FUSE lets you mount Cloud Storage buckets to your local file system. This enables your applications to read from a bucket or write to a bucket by using standard file system semantics.

Securing your data

Once you upload your objects to Cloud Storage, you have fine-grained control over how you secure and share your data. Here are some ways to secure the data you upload to Cloud Storage:

Resource names

Each resource has a unique name that identifies it, much like a filename. Buckets have a resource name in the form of projects/_/buckets/BUCKET_NAME, where BUCKET_NAME is the ID of the bucket. Objects have a resource name in the form of projects/_/buckets/BUCKET_NAME/objects/OBJECT_NAME, where OBJECT_NAME is the ID of the object.

A #NUMBER appended to the end of the resource name indicates a specific generation of the object. #0 is a special identifier for the most recent version of an object. #0 is useful to add when the name of the object ends in a string that would otherwise be interpreted as a generation number.

Quickstart guides

To learn the fundamentals of using Cloud Storage, visit the following guides:

What's next