Google cloud platform 在GCP中编写对象生命周期规则时理解IsLive和存储类
我们需要在Google cloud platform 在GCP中编写对象生命周期规则时理解IsLive和存储类,google-cloud-platform,google-cloud-storage,versioning,Google Cloud Platform,Google Cloud Storage,Versioning,我们需要在GCP云存储桶中启用以下对象生命周期规则 如果非当前对象版本在100天内未被访问,且其当前存储类别为存储、多区域和持久可用性降低,请将该对象移动到近线存储 如果对象版本在100天内未被访问,且其当前存储类别为Nearline,请将其移动到Coldline存储类别 如果在100天内未从Coldline存储访问对象,请从Coldline存储中删除 保留2个文件的非当前版本 为了实现上述规则,对bucket应用了以下规则 { "lifecycle": {
GCP云存储桶中启用以下对象生命周期规则
如果非当前对象版本在100天内未被访问,且其当前存储类别为存储、多区域和持久可用性降低
,请将该对象移动到近线
存储
如果对象版本在100天内未被访问,且其当前存储类别为Nearline
,请将其移动到Coldline
存储类别
如果在100天内未从Coldline
存储访问对象,请从Coldline
存储中删除
保留2个文件的非当前版本
为了实现上述规则,对bucket应用了以下规则
{
"lifecycle": {
"rule": [
{
"action": {
"type": "SetStorageClass",
"storageClass": "NEARLINE"
},
"condition": {
"age": 100,
"isLive": false,
"matchesStorageClass": ["REGIONAL", "STANDARD", "DURABLE_REDUCED_AVAILABILITY"]
}
},
{
"action": {
"type": "SetStorageClass",
"storageClass": "COLDLINE"
},
"condition": {
"age": 100,
"matchesStorageClass": ["NEARLINE"]
}
},
{
"action": { "type": "Delete"},
"condition": {
"age": 100,
"matchesStorageClass": ["COLDLINE"]
}
},
{
"action": { "type": "Delete"},
"condition": {
"numNewerVersions": 2
}
}
]
}
}
需要澄清以下内容
这表明规则得到了成功的应用,但它将切实可行。由于我们正在将非当前版本从近线移动到冷线,这些版本在100天内无法访问,因此我需要在规则2中添加“isLive”:false。规则3也需要它
{
"action": {
"type": "SetStorageClass",
"storageClass": "COLDLINE"
},
"condition": {
"age": 100,
"isLive": false
"matchesStorageClass": ["NEARLINE"]
}
},
另外,由于我们正在考虑超过100天的访问时间,从标准存储类直接转到COLDLINE是否有意义
有什么建议吗?您的规则不正确
首先,年龄是最重要的
年龄从对象的创建时间开始计算
因此,您的条件“如果在过去100天内未访问”是不可能的。正确的表达方式是“100天后,做…”
因此,您的归档策略是不正确的。使用相同的年龄(对象创建后100天)来
- 到近线
- 去Coldline
- 从冷线删除
在同样的年龄条件下
回答你的问题
不,你不需要提到<代码> iSave:false 如果你考虑到(只有肯定的)只有非当前版本在 NealLe> 类
是的,你可以从标准跳到冷线,特别是对于非当前版本,如果你把它们看作是从来没有(或很少使用),然后在100天后删除它们。
谢谢因此,这些规则是基于“年龄”而不是“权限”。很少查询。将非当前文件从标准移动到近线或冷线后,创建日期似乎没有修改,因此前三个规则中的“年龄”必须分别为“100”、“200”和“300”。如果我错了,请纠正我。这是正确的。更改存储类时,更新的是blob元数据,而不是blob本身,因此创建日期不会更改。谢谢。如果规则2和规则3中有生存的机会,那么添加isLive:false
是否安全!版本将与非当前版本一起存在于从存储类移出的NEARLINE和COLDLINE存储中?是的,这样会更安全!
{
"action": { "type": "Delete"},
"condition": {
"age": 100,
"isLive": false
"matchesStorageClass": ["COLDLINE"]
}
},