本期导读 :【OSS 访问加速】第十一讲
主题:打开 OSS 多版本-合规和分析两不误
讲师:辰石,阿里巴巴计算平台事业部 EMR 技术专家
内容框架:
- 背景介绍
- 主要功能
- 具体演示
直播回放链接:(11讲)
https://developer.aliyun.com/live/246915
一、背景介绍
阿里云对象存储 OSS
- 一种海量、安全、低成本、高可靠的云存储服务
- 适合存放任意类型的文件
- 提供容量和处理能力弹性扩展
- 提供多种存储类型供选择
- 数据设计持久性不低于99.9999999999%(12个9),服务可用性(或业务连续性)不低于99.995%
二、主要功能
OSS 支持功能
- 数据的上传以及下载
- OSS 对象生命周期的管理
- 同城/异地的数据容灾
- OSS 对象数据保留合规
- 数据的加密解密
- 数据的多版本管理
参考网址:
https://help.aliyun.com/?spm=a2c4g.11174283.6.538.70a37da2T4gFyT
OSS 对象数据多版本管理
功能介绍
- 单份数据在 OSS 上存在多个版本
使用场景
- 数据误删除:当前 OSS 不提供回收站,如果要恢复已删除的数据可以使用 OSS 多版本
- 文件被覆盖:对于网盘、在线协作类产品,文件会被频繁修改,针对文件的编辑会产生大量的临时版本。您可以使用版本控制功能找回某个时间点的版本
OSS 对象数据多版本状态
未开启状态
- 默认情况下 OSS 版本状态为未开启的状态,一旦开启,无法退回到未开启状态
开启状态
- 当 OSS 版本控制处于开启状态,OSS 将为新上传的对象生成全局唯一的版本 ID
暂停状态
- OSS 将为新上传的 Object 生成特殊字符串为“null”的版本 ID
开启/暂停 OSS 多版本
使用注意事项
功能互斥
- 同一 Bucket 中,版本控制与合规保留策略或镜像回源无法同时配置
- 如果 Bucket 已开启版本控制,上传文件时附加的覆盖同名文件请求头 x-oss-forbid-overwrite 将不生效
使用注意事项
- 开启多版本本身不会产生任何费用,但是由于开启多版本,同一对象会存在多个版本的历史数据,会增加数据的存储成本
- OSS 多版本历史版本过多可能导致 List 过慢的问题,建议配置生命周期定期清理
查看对象的多版本
控制台查看
Ossutil64 命令行查看
JindoFS OSS SDK 的优化
存在问题
- 由于 Hive/Spark 任务在任务执行过程中会产生临时数据,在任务执行成功后这些临时数据会被删除,因此会产生很多历史版本数据,导致后续任务 List 过慢,后续任务性能会受到影响。
JindoFS OSS SDK 优化
- JindoFS 对于这种情况存在优化, 对于 committer 产生的临时数据的历史版本信息可以通过设置 fs.oss.committer.magic.clean.versions.enabled 为 true 可以清理临时数据历史版本。
三、实例演示
⭐点击回放链接,直接观看第11讲视频回放,获取讲师实例讲解:
https://developer.aliyun.com/live/246915
⭐Github链接:
https://github.com/aliyun/alibabacloud-jindofs
不错过每次直播信息、探讨更多数据湖 JindoFS+OSS 相关技术问题,欢迎扫码加入钉钉交流群!