Google 覆盖的近线定价

Google nearline pricing on overwrites

我通过 gcloud/gsutil 设置了 Google 近线存储并且工作正常。

到目前为止,我一直在使用 rsync 来备份一些数据库,例如...

rsync -d -R  /sourcedir/db_dir gs://backup_bucket/

目前文件在文件名中带有数据戳,所以我们每天都会得到不同的文件名。

我刚刚看到提早删除收费(目前正在试用)。

我假设每当我使用 -d 删除文件时,我都会为该文件支付最多 30 天的费用?如果是这样,在此之前删除它是没有意义的(但会被收费)。

但是如果我保持文件名不变,但用最近几天的备份覆盖文件,文本会说...

"if you create an object in a bucket configured for Nearline, and 10 days later you overwrite it, the object is considered an early deletion and you will be charged for the remaining 20 days of storage."

所以我有点不清楚,如果我有一个文件并用新版本覆盖它,我是否会为每个 file/day、每个 再次 收费更新时间以及新文件?

例如,对于一个文件,每天通过 rsync 备份(假设这次文件名相同)...超过 30 天

day1 myfile is created

day2 myfile is updated

day3 myfile is updated

... and so on

我现在是否被收取了 (filespaceday1 * 30days) + (filespaceday2 * 29days) + (filespaceday3 * 28) 等等...只是为了一个文件(而不是 filespace * 30 天)?

或者它只是意味着,如果我创建一个 10gig 文件,并用 2meg 文件覆盖它,我将在 30 天内支付 10gig 的费用(忽略 2meg 文件费用)?

如果是,是否有关于 rsync 和降低费用的最佳实践?

在 GCS 中覆盖对象等同于删除旧对象并在其位置插入新对象。覆盖对象确实会产生提前删除费用,这是正确的,因此如果您每天覆盖同一个文件,则每天将收取 30 天的存储费用。

近线存储主要用于将长期保留且不经常读取或修改的对象,并相应定价。如果您想每天修改一个对象,标准或持久的降低可用性可能是一个更便宜的选择。