GB、TB级大文件能快速上传吗?能!
网络卡顿、中断,文件能续传吗?能!!
关闭程序、关闭电脑,文件能续传吗?能!!!
当需要上传的本地文件很大,或者网络状况不够理想,一般会出现文件上传到中途就失败的情况。此时,如果对已经上传的数据重新上传,既浪费时间,又占用了网络资源。ZOS对象存储断点续传功能为解决这类场景应运而生,为您的文件上传保驾护航。
ZOS对象存储断点续传功能依托于ZOS对象存储的分段上传机制,轻松解决以上异常上传情况。所谓分段上传就是在文件上传时,将大文件根据一定规则进行切割,比如按照每5M大小切割成段,将上传一个大文件转化为上传多个小文件,同时可以实现多个小文件的并行上传,充分利用可用的带宽资源,从而实现了GB、TB级大文件的快速上传。
ZOS对象存储分段上传的设计是用来更加高效的上传大文件,通过分段上传,对象的每个分段都可以无序的独立上传,而且可以并发上传。ZOS对象存储分段上传机制为方便用户和开发者使用,分为以下三个步骤:
- 初始化分段上传
当用户请求开始使用分段上传机制时,ZOS对象存储将返回唯一的Upload ID,用于唯一标识此次上传。后续用户上传具体的每一个对象分段时,都需要携带该Upload ID。
- 上传对象分段
上传分段时,除了指定Upload ID,还必须指定分段编号,可以选择1到10000之间的任意分段编号,分段编号用来在分段上传的对象中唯一地标识分段及其位置。用户选择的分段编号不必是连续的序列(例如可以是1,3和7)。如果用户使用之前上传的分段的同一分段编号上传新分段,则之前上传的分段将被覆盖。在每一个分段的响应中,ZOS对象存储都会返回ETag响应头。对于每个分段上传,用户都必须记录分段编号和ETag值,用户需要在随后的完成请求中包括这些值以完成分段上传。
- 完成分段上传
调用ZOS对象存储完成分段上传API,该API指定用户请求时必须携带Upload ID、分段编号和相应的 ETag 值的列表。调用结束后,第二步中上传的所有分段便会整合成一个大文件,并对文件的完整性进行校验,保证数据的一致性,从而实现大文件的分段上传。
以上步骤在ZOS对象存储API接口中都有详细介绍,方便开发者实现各种相关需求,具体流程如下图:
ZOS对象存储断点续传就是基于以上分段上传机制来实现的,用户上传文件时,控制台会自动对用户文件进行分段,并对分段进行编号,然后上传这些分段。ZOS对象存储维护所有已经上传成功的分段列表,当用户上传的文件因网络中断等各种意外情况导致上传失败时,再次点击上传该文件,ZOS对象存储会比较已经上传成功的分段列表,重新上传失败的分段,并从断点处继续上传,从而实现了断点续传功能。开发者使用ZOS对象存储提供的API接口,可以更为精细的控制分段上传,从而实现更为丰富的断点续传功能。
ZOS对象存储断点续传功能针对用户上传大文件的场景,节省了用户的带宽资源,简化了用户的使用。天翼云赋能千行百业,ZOS对象存储欢迎您的使用。