分片上传功能支持将一个文件切割为一系列特定大小的小数据片,分别将这些小数据片分别上传到服务端,全部上传完后再在服务端将这些小数据片合并成为一个资源。[上传模型](http://developer.qiniu.com/docs/v6/api/overview/up/upload-models.html "上传模型")中对分片上传的特点进行了完整的阐述。
## 关键概念
分片上传引入了两个概念:**块**(block)和**片**(chunk)。每个**块**由一到多个**片**组成,而一个资源则由一到多个**块**组成。他们之间的关系可以用下图表述:
![资源、块、片的关系](http://developer.qiniu.com/docs/v6/api/overview/up/img/chunk-concept.png "资源、块、片的关系")
**块**是服务端的永久数据存储单位,**片**则只在分片上传过程中作为临时存储的单位。服务端会以约一个月为单位周期性的清除上传后未被合并为块的数据片。
## 基本流程
与分片上传相关的API有这几个:[创建块(mkblk)](http://developer.qiniu.com/docs/v6/api/reference/up/mkblk.html)、[上传片(bput)](http://developer.qiniu.com/docs/v6/api/reference/up/bput.html)、[创建资源(mkfile)](http://developer.qiniu.com/docs/v6/api/reference/up/mkfile.html)。一个完整的分片上传流程可用下图表示:
![分片上传流程](http://developer.qiniu.com/docs/v6/api/overview/up/img/chunked-upload-workflow.png)
<