对象存储产品文档之:数据保护

一、SpeedyCOS数据如何备份
SpeedyCOS提供纠删码,故障自动恢复能力,保障数据可靠性99.99999999%。

二、SpeedyCOS校验上传文件的完整性
SpeedyCOS上的object会有etag标签,etag主要是用来判断服务端数据是否存在变化。但是,这个标签并不一定等同于文件的MD5值,所以不建议作为校验数据一致性的依据。
如果需要校验上传到SpeedyCOS的文件和本地文件是否一致,可以在上传文件时携带文件的Content-MD5值,这时 SpeedyCOS服务端会帮用户进行MD5校验,只有在SpeedyCOS服务器接收到的文件MD5值和Content-MD5一致时才可以上传成功,从而保证上传数据的一致性。

三、Python SDK中的multiupload上传如何验证文件完整性
通过在Python sdk上传方式中将 --check_md5的值改为true后,如下:
multiupload(multi_upload,mp) localfile oss://bucket/object --check_md5=false --thread_num=10
服务器将会去验证文件的完整性。
如果客户端需要对上传的文件做完整性检查,可以将文件下载下来计算md5值与源文件md5值比对验证。

四、SpeedyCOS MD5校验说明
SpeedyCOS MD5一致性校验说明
SpeedyCOS上的object会有etag标签,etag主要是用来判断服务端数据是否存在变化。但是,这个标签并不一定等同于文件的MD5值,所以不建议作为校验数据一致性的依据。
如果需要校验上传到SpeedyCOS的文件和本地文件是否一致,可以在上传文件时携带文件的Content-MD5值,这时SpeedyCOS服务端会帮用户进行MD5校验,只有在SpeedyCOS服务器接收到的文件MD5值和Content-MD5一致时才可以上传成功,从而保证上传数据的一致性。

五、SpeedyCOS 下载内容与实际内容不一致
遇到该类问题,可以ping测试查看下载连接是否来自SpeedyCOS源站IP地址。如不是,则有可能是由于网络接入运营商的劫持行为导致的。
一般遇到这类问题是由于用户更新了Object内容导致的,如果经常有更新Object文件的需求,建议最好能将版本号放在Objectname中,每次更新生成新的Object来访问,可以避免由于劫持缓存等原因导致的内容未更新的问题。
分享到:
收藏

上一篇:上传下载
下一篇:如何将数据迁移或同步到OSS

相关主题:产品文档 对象存储