归档直读功能允许您在数据湖、云相册等场景中直接访问归档存储类型文件,无需提前解冻,在保持低存储成本的同时实现对极低频访问数据的实时读取,平衡了存储成本与访问效率的需求。
解冻读取和直接读取
开启归档直读的前后对比如下:
项目 | 未开启归档直读(默认) | 开启归档直读 |
取回方式 | 先解冻,再读取 | 直接读取 |
取回费用① | 低 | 高 |
取回时间 | 分钟级 | 毫秒级 |
①关于取回费用的具体价格,请参见OSS产品定价。
开启归档直读
OSS控制台
登录OSS管理控制台。
单击Bucket 列表,然后单击目标Bucket名称。
在左侧导航栏,选择数据管理 > 归档直读。
在归档直读页面,开启归档直读。
在提示对话框,单击确定。
命令行工具ossutil
使用前需安装ossutil。
以下命令用于为存储空间
examplebucket
开启归档直读。ossutil api put-bucket-archive-direct-read --bucket examplebucket --archive-direct-read-configuration "{\"Enabled\":\"true\"}"
关于该命令的更多信息,请参见put-bucket-archive-direct-read。
以下命令用于查看存储空间
examplebucket
是否开启归档直读。ossutil api get-bucket-archive-direct-read --bucket examplebucket
关于该命令的更多信息,请参见get-bucket-archive-direct-read。
API
如果您的程序自定义要求较高,您可以直接发起REST API请求。直接发起REST API请求需要手动编写代码计算签名。更多信息,请参见PutBucketArchiveDirectRead和GetBucketArchiveDirectRead。
涉及读取的操作
开启归档直读后,无需解冻Bucket中的归档存储类型文件,就可以直接对其进行以下涉及读取的操作:
查询通过归档直读产生的Object访问记录
如果未在日志服务中开启
archive_direct_read_size
字段索引,在OSS管理控制台找到目标Bucket,然后在实时查询页面使用扫描模式查询:* and __topic__: oss_access_log and bucket: buckename | set session mode=scan; select object where archive_direct_read_size not like '-'
如果已在日志服务中开启
archive_direct_read_size
字段索引,在OSS管理控制台找到目标Bucket,然后在实时查询页面使用索引模式查询:* and __topic__: oss_access_log and bucket: buckename |select object where archive_direct_read_size not like '-'
查询通过归档直读产生的流量大小
如果未在日志服务中开启
archive_direct_read_size
字段索引,在OSS管理控制台找到目标Bucket,然后在实时查询页面使用扫描模式查询:* and __topic__: oss_access_log and bucket: bucketname | set session mode=scan; select sum(cast(archive_direct_read_size as bigint)) as total_size where archive_direct_read_size != '-'
如果已在日志服务中开启
archive_direct_read_size
字段索引,在OSS管理控制台找到目标Bucket,然后在实时查询页面使用索引模式查询:* and __topic__: oss_access_log and bucket: bucketname | select sum(cast(archive_direct_read_size as bigint)) as total_size where archive_direct_read_size != '-'
权限说明
RAM用户必须有以下权限:oss:PutBucketArchiveDirectRead
、oss:GetBucketArchiveDirectRead
。具体操作,请参见为RAM用户授予自定义的权限策略。
使用限制
归档直读仅适用于Bucket中归档存储类型的文件,不适用于冷归档、深度冷归档存储类型的文件。
在Bucket开启归档直读的情况下,如果在配置静态网站托管时将默认首页或错误页面设置为同一Bucket内未解冻的归档类型文件,则跳转访问默认首页或错误页面失败,并返回403错误。为确保可以正常跳转访问,默认首页和错误页面建议配置为标准存储类型的文件。
费用说明
为Bucket开启归档直读后,直接读取Bucket中未解冻的归档存储类型文件,会产生归档直读数据取回容量(RetrievalDataArchiveDirect)费用,请求产生的归档直读取回容量通过日志字段
archive_direct_read_size
的值来表示。对于已解冻的归档存储类型文件,直接读取不会产生归档直读数据取回容量费用。详情请参见数据处理费用。归档直读数据取回量取决于与HTTP建立连接时请求头中指定的数据读取范围。传输连接的提前断开不会影响已发起请求的归档直读数据取回容量。例如,实际读取1字节数据后中断连接,但是请求范围为100 MB~200 MB,将按照100 MB~200 MB计算归档直读数据取回容量。
通过归档直读功能对存储的归档类型图片执行图片缩放操作,OSS将按照原图大小,而非处理后的图片大小作为归档直读取回容量。这意味着,即便原图经过处理后显著减小了其传输时的实际占用带宽,您仍需根据原图大小支付归档直读取回流量费用。例如,原图大小为1 GB,经图片缩放处理后仅为100 KB,归档直读数据取回计费容量为1 GB。