对象存储版本控制
简介
对象存储是云服务提供商提供的一种存储服务,允许用户存放大量的非结构化数据,如文档、图片、视频等,在这种服务中,“版本控制”是一个关键的数据保护功能,它允许在同一存储桶(Bucket)中存放同一对象的多个版本,在一个存储桶中,您可以存放多个名为“picture.jpg”的对象,每个对象都有一个不同的版本ID,如100000、100101和120002等。
版本控制状态
存储桶可以处于以下三种版本控制状态之一:
1、未启用版本控制状态:这是存储桶的默认初始状态,在这个状态下,版本控制功能关闭。
2、启用版本控制状态:开启存储桶的版本控制功能后,该状态下的所有对象都会有唯一的版本ID,新上传到存储桶中的对象也将拥有这些唯一标识符。
3、暂停版本控制状态:这个状态是从“启用版本控制状态”变更而来,后续上传的对象不再拥有版本控制功能。
一旦您对存储桶启用了版本控制,它将无法返回到未启用版本控制状态,您可以选择暂停版本控制,这样新上传的对象将不会产生多个版本。
管理版本控制状态下的对象
在版本控制的不同状态下,您可以对存储桶中的对象进行上传、查询和删除操作,具体方法如下:
上传对象:当您启用版本控制后,通过PUT、POST或COPY操作上传对象时,系统会自动为其添加一个唯一的版本ID。
列出版本控制对象:对象存储会在与存储桶关联的versions参数中存储对象版本信息,并按存储时间顺序返回对象版本,最近存储的版本最先被返回。
查询对象的所有版本:使用versions参数和prefix请求参数可以查询某对象的所有版本。
查询对象的当前或历史版本:使用GET请求时无指定版本ID将查询对象的当前版本,指定版本ID则查询对应版本。
删除对象:有两种情况:
不指定版本ID执行DELETE操作,COS会为被删除对象插入删除标记,该标记成为当前版本,可以根据需要恢复至先前版本。
指定版本ID执行DELETE操作,可以永久删除版本控制的对象。
还原早期版本:有两种方法可以还原早期版本:
将早期版本复制到同一存储桶中,复制的对象将成为当前版本,并且所有版本都保留。
永久删除当前版本,前一个版本将转变为当前版本。
使用场景和注意事项
使用场景:
数据误删除:在没有回收站功能的情况下,通过版本控制恢复已删除的数据。
文件被覆盖:对于频繁修改的文件,使用版本控制找回某个时间点的版本。
注意事项:
启用版本控制后,每个版本的文件(包括当前和历史版本)都会收取存储费用,建议通过生命周期规则删除不需要的历史版本以节省费用。
只有Bucket的拥有者及授权的RAM用户才能配置版本控制。
同一Bucket中,版本控制与合规保留策略无法同时配置。
相关操作
以下是如何使用对象存储控制台开启版本控制的步骤:
1、登录OSS管理控制台。
2、单击Bucket列表,然后单击创建Bucket。
3、在创建Bucket页面配置各项参数。
4、在版本控制区域选择开通。
5、单击确定。
FAQs
Q1: 如何为已创建的存储桶开启版本控制?
A1: 您可以通过以下步骤为已创建的存储桶开启版本控制:
1、登录OSS管理控制台。
2、单击Bucket列表,然后单击目标Bucket名称。
3、在左侧导航栏,选择数据安全 > 版本控制。
4、在版本控制页面,单击开启。
5、在弹出的对话框中,单击确定。
Q2: 暂停版本控制后,新上传的对象会怎样?
A2: 当您暂停存储桶的版本控制后,新上传到存储桶中的对象将不再拥有版本控制功能,这意味着这些对象不会有唯一的版本ID,而是会有特殊的“null”版本ID,如果再次上传同名对象,新的“null”版本将覆盖前一次的“null”版本,而其他非“null”版本的Object或删除标记不受影响。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/844635.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复