How snapshots works when using different Storage Class (GCS)?

Hello,

Currently I'm using snapshot repositories stored in Google Cloud Storage that was created with the standard storage class.

Now I have the need to create new snapshots on another Google Cloud project and I was thinking in using another storage class, like the coldline one as it is pretty rare for us to need to restore a snapshot, they are mostly for archival reasons, and the price difference between the standard and coldline could help us to reduce the costs.

But I have a few questions about how snapshots works under the hood and if it can impact the costs somehow.

While the storage price for data in the coldline storage class is 5 times cheaper than the price for the standard storage class, the costs for operations are doubled.

For example, 10,000 Class A operations costs $ 0.05 for the standard class and $ 0.10 for the coldline class, a similar thing happens for Class B operations.

From the pricing page, Class A operations seems to be when you write or list something into the bucket and Class B seems to be when you get something from the bucket, so creating snapshots and sending data would be Class A operations and restoring would also envolve Class B operations.

For the coldline class there is also a minimum retention of 90 days and if a object is replaced in the bucket, additional charges happens.

How would this translate for the real world usage?

My use case is pretty simple, the majority of my indices are time based daily indices that does not have any update and the snapshots are also daily, I would assume that for daily indices after a snapshot is created, the new snapshot will only upload the new indices.

But some indices are monthly based, so the shards of those indices would change between snapshots as there are new documents, would this reflect as the objects being replaced in the google cloud?

Anyone has any experience with snapshots on GCS or any other cloud service with tiered storage class, that have a similar pricing pattern?

Since this is more related to the internals of how the snapshot and restore processes work, I've opened a ticket with the support.

But looking at our GCP Billing dashboard, the number of Class A and Class B operations can be ignored.

The question now is if it is safe to change the storage class from standard to coldline for existing objects in the bucket or if this can impact the snapshot in some way.

It should work correctly with coldline storage. It's hard to say whether it'll be cheaper or not since it depends on how you're using it.

There's an open issue to use different classes for different things on S3 which would also apply to GCS, and might give a bit more insight into the inner workings too:

2 Likes

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.