随着AI、数据仓库、大数据分析等业务发展,越来越多运行在OSS上的业务对于数据的访问延迟和吞吐量有了更高的要求。OSS推出加速器功能,可以将OSS中的热点文件(Object)缓存在NVMe SSD高性能存储介质上,提供毫秒级低延迟和高吞吐量的数据访问服务。
功能优势
低延迟
OSS加速器的NVMe SSD介质可以为业务提供的毫秒级下载延迟。对于推理模型下载,数仓热数据查询有较好的效果。
高吞吐密度
加速器提供最高2.4 Gbps/TB的读取带宽,为少量数据提供极大的吞吐能力,可以满足少量热数据的突发读取需求。
高吞吐能力
加速器的带宽随容量大小线性增长,并提供高达百GB/s的突发吞吐能力。
弹性伸缩
计算任务通常是周期性任务,每个任务所需资源存在差异。加速器可根据您的需求进行在线扩容或缩容,可有效避免资源浪费,降低您的使用成本。加速器支持最低50 GB,最大百TB的缓存空间。OSS加速器继承了OSS海量数据存储的优点,支持直接缓存数仓中的多个表或者分区。
存算分离
OSS加速器相较于计算服务器上的缓存空间,可以脱离计算服务器独立且在线调整空间和性能。
数据一致
加速器提供了传统缓存方案不具备的OSS数据强一致性。当OSS上的文件被更新时,加速器能自动识别并缓存更新后的文件,以确保计算引擎读取的都是更新后的数据。
多种预热策略
OSS加速器能够自动识别OSS上更新的文件,确保引擎读取到最新数据。OSS加速器提供以下预热策略。
同步预热:数据写入OSS时,将数据同步缓存至加速器空间。
读时预热:在加速器中读取数据时未命中,则会自动回源到标准OSS,获取到数据,并将其存放到加速器中。
说明同步预热需手动配置开启.
读时预热默认开启且不可配置。
工作原理
加速器创建完成后会拥有一个地域专属的内网加速域名,并且此域名只能通过内网访问,不支持公网访问。例如华北2(北京)地域的加速域名为http://cn-beijing-internal.oss-data-acc.aliyuncs.com
。当您与加速器在同一专有网络VPC时,您可以通过加速域名访问加速器内的资源,流程如下。
写请求
读时预热:客户端向加速域名发送的写请求会直接转发至OSS Bucket,流程与使用OSS默认域名一致。
同步预热:客户端向加速域名发送的写请求会直接转发至OSS Bucket和OSS加速器。
读请求
说明各种预热策略下的读请求方式一致。
客户端向加速域名发送的读请求会被转发给OSS加速器。
加速器在收到读请求后会在缓存空间内查找目标文件:
若缓存空间存在目标文件,则文件直接返回给客户端。
若缓存空间没有目标文件,加速器会向绑定的OSS请求目标文件。OSS在收到请求后,会将目标文件缓存到加速器中,加速器将文件返回给客户端。
当加速器缓存已满后,加速器会根据缓存文件的热度将低热度的文件替换为高热度文件。
使用场景
OSS加速器适用于需要大量带宽,且数据重复读的场景。具体场景如下:
低时延数据共享
需求背景
客户在货柜上购买物品,先通过手机App扫描货柜的货物拍照上传,应用后端接收到图片后通过OSS加速器进行存储。后台的子系统随后进行内容安全分析和图片上条码的识别,条码识别后的结果反馈到应用后端进行扣费等操作。下载图片要求毫秒级完成。
解决方案
采用OSS加速器写时预热的模式。使用OSS加速器可以有效降低分析系统加载图片的延时情况,缩短交易链路。OSS加速器适合对延时敏感,多次重复读的业务。
模型推理
需求背景
AIGC模型推理需要拉取加载模型文件,在推理的调试过程中,还需要不断切换新的模型文件进行尝试。随着模型文件的不断增大,推理服务器拉取模型文件所需时间会越来越长。
解决方案
采用OSS加速器异步预热或者读时预热模式。OSS异步预热模式适用于明确知晓热点模型文件范围的场景,读时预热适用于不确定模型文件范围的场景。如果您知晓热点模型文件的列表,可以配置相应的加速器空间,并通过加速器SDK将指定的OSS文件提前放入加速器空间中。您也可以根据经验配置一定大小的加速器空间,加速器会在数据读取时自动缓存文件至加速器高性能介质中,供下次读取时快速访问。加速器的空间可根据加速效果随时进行扩缩调整。如果您的推理程序需要通过本地目录方式访问OSS,您需要部署ossfs。
大数据分析
需求背景
公司的业务数据按天进行分区,归档到OSS作为长期数据进行存储。分析人员使用Hive或Spark等计算引擎对数据进行分析,但不确定查询范围。分析人员要求尽量减少查询分析时间。
解决方案
使用OSS加速器读时预热的模式。该模式适用于离线查询场景下数据量大,且不确定数据查询范围,无法准确预热的场景。例如,分析人员A查询的数据,数据会缓存在加速集群。而分析人员B查询的数据包含分析人员A查询的数据,从而加快数据分析进度。
多级加速
需求背景
客户端缓存和服务端加速并不冲突,希望根据业务情况能够达到多级加速的效果。
解决方案
OSS加速器与客户端缓存搭配使用。推荐Alluxio与计算集群共置部署。当读取的数据未命中Alluxio缓存时,会从后端存储来读取数据。对于OSS加速器,采用读时预热,并在第一次获取数据时进行预热。由于客户端主机缓存空间的限制,Alluxio中每个文件和目录都会设置TTL。当TTL到期后缓存会被淘汰,以便节约空间。此时,OSS加速器中的数据并不会马上淘汰,其缓存空间可以存放数百TB的数据。当再次读取Alluxio中未命中的数据时,可以直接从OSS加速器加载,实现两级加速。
指标说明
指标 | 说明 |
容量 |
如果您的业务场景需要更高的容量,请提交工单申请提升容量。 |
加速器宽带 | 加速器根据配置的空间大小,为加速器上缓存的数据提供吞吐带宽。每TB的加速器空间提供2.4 Gbps的最大带宽。加速器提供的吞吐带宽为OSS标准带宽之外的性能,不受OSS标准带宽能力限制。关于OSS标准带宽限制说明,请参见使用限制及性能指标。 例如,华南1(深圳)地域,OSS提供100 Gbps的标准带宽能力。开启加速器并配置10 TB加速器空间后,您可以通过加速器域名获得额外的24 Gbps低延迟带宽。对于批量离线计算应用,建议您以大规模并发大块读取的方式通过OSS内网域名利用100 Gbps标准带宽能力。对于热点数据查询业务,您可以通过OSS加速器域名访问缓存至NVMe SSD介质中的数据,获得额外的低延迟24 Gbps吞吐量。 |
读宽带(峰值) | 计算公式为:MAX[600,600×容量(TB)]MB/s
例如,加速器容量配置为2048 GB(即2 TB),则读带宽为(600+600)MB/s=1200 MB/s。 |
最大读宽带 | 40 GB/s 如果您的业务场景需要更大的读带宽,请提交工单申请。 |
单路128 KB最低读延迟 | <10 ms |
扩缩容间隔 | 每小时可修改1次 |
扩缩容方式 | 通过控制台手动扩缩容 |
缓存淘汰策略 | 采用LRU(Least Recently Used)缓存淘汰策略。LRU缓存淘汰策略用于确保经常被访问的数据得以保留,长时间不被访问的数据被优先移除,从而达到高效利用缓存空间的目的。 |
费用说明
OSS加速器目前处于公测阶段,公测期间免费提供最大100 GB的加速器配置容量。公测结束后,您需要根据加速器配置的实际容量按量付费。
通过加速器域名读写OSS数据时,即使未发生回源,也会产生OSS请求费用。
计费项 | 计费规则 | 计费周期 | 付费方式 |
OSS加速器(AcceleratorCacheSize) | 按照申请的加速器配置容量和使用时长计费。 重要 使用OSS加速器时,OSS会按照申请的加速器配置容量计费,与实际存储的数据量无关。 例如,您申请了100 GB的加速器容量,实际向加速器预热了50 GB 数据,OSS将按照100 GB计算。 | 按小时计费(账单出账时间通常在当前计费周期结束后,具体出账时间以系统为准)。 |
|
后续步骤
OSS加速器的创建,以及修改已有的OSS加速器容量。请参见创建加速器。