What is Cloud Storage?
Cloud Storage is a global secure and scalable object store for immutable data such as images, text, videos, or any other file formats.
- Cloud Storage is a service for storing your objects in Google Cloud. 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.
- You can upload objects to your buckets, and download objects from your buckets. By default, data at rest is encrypted. You have options to secure it with your own encryption keys using Google Cloud's Key Management service or at your own key management service on premise. You can also grant permissions to make your data accessible to members you specify, or - for certain use cases such as hosting a website - accessible to everyone on the public internet.
When creating buckets, you have options depending on budget, availability, and access frequency.
It costs a bit more to use standard storage because it allows for automatic redundancy and frequent access options. Nearline, Coldline, and Archive storage offer 99% availability and cost significantly less.
Cloud Storage offers automatic Object versioning so you don't have to worry about versioning and can still access the older version if needed. Object Versioning retains a noncurrent object version when the live object version gets replaced or deleted .
With Object Lifecycle Management, you can automatically transition the data to lower cost storage classes when it reaches a certain age, or when you store a newer version of a file.
Once you have stored the data, Here are some basic ways you can interact with Cloud Storage:
Console: The Google Cloud Console provides a visual interface for you to manage your data in a browser.
gsutil: gsutil is a command-line tool that allows you to interact with Cloud Storage through a terminal. If you use other Google Cloud services, you can download the Cloud SDK, which includes gsutil along with the gcloud tool for other services.
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.
Cloud Storage Use Cases
Standard regional and multiregional buckets are optimal to use for hosting static websites, streaming, and storing documents. Nearline and Coldline storage classes are widely used for backups and disaster recovery, and Archive, as the name suggests, is best for long term archiving.
Cloud Storage is a great data lake choice for streaming and batch uploading data for big data and ML projects.
I hope you found this article useful. Have fun using Google Cloud Storage.
Ahmed Adel Farag
Google Cloud Engineer