路径: 主页 > GB/T > 第212页 > GB/T 31916.3-2018
| 标准编号 | GB/T 31916.3-2018 (GB/T31916.3-2018) | | 中文名称 | 信息技术 云数据存储和管理 第3部分:分布式文件存储应用接口 | | 英文名称 | Information Technology - Cloud Data Storage and Management - Part 3: Distributed File Storage Application Interface | | 行业 | 国家标准 (推荐) | | 中标分类 | L79 | | 国际标准分类 | 35.100.05 | | 字数估计 | 111,178 | | 发布日期 | 2018-06-07 | | 实施日期 | 2019-01-01 | | 标准依据 | 国家标准公告2018年第9号 | | 发布机构 | 国家市场监督管理总局、中国国家标准化管理委员会 |
GB/T 31916.3-2018
Information technology--Cloud data storage and management--Part 3: Distributed file storage application interface
ICS 35.100.05
L79
中华人民共和国国家标准
信息技术 云数据存储和管理
第3部分:分布式文件存储应用接口
2018-06-07发布
2019-01-01实施
国 家 市 场 监 督 管 理 总 局
中国国家标准化管理委员会 发 布
目次
前言 Ⅲ
1 范围 1
2 符合性 1
3 规范性引用文件 1
4 术语、定义和缩略语 1
4.1 术语和定义 1
4.2 缩略语 2
5 分布式文件存储接口定位和系统结构 2
5.1 分布式文件存储接口定位 2
5.2 分布式文件存储系统结构 2
6 应用接口通用要求 3
6.1 概述 3
6.2 命名规则 3
6.3 补充出错信息 3
6.4 公共请求头 4
6.5 公共响应头 4
7 文件接口要求 4
7.1 概述 4
7.2 创建文件 4
7.3 删除文件 7
7.4 上传文件 9
7.5 下载文件 11
7.6 追加写文件 13
7.7 复制文件 16
7.8 重命名文件 18
7.9 查看文件状态 20
7.10 修改文件属性 22
7.11 文件搜索 24
7.12 读文件 26
7.13 写文件 28
8 文件夹接口要求 30
8.1 概述 30
8.2 创建文件夹 31
8.3 删除文件夹 33
8.4 上传文件夹 35
8.5 下载文件夹 37
8.6 复制文件夹 39
8.7 重命名文件夹 41
8.8 查看文件夹状态 43
8.9 修改文件夹属性 45
8.10 文件夹搜索 47
8.11 列出文件夹内容 49
9 回收站接口要求 51
9.1 概述 51
9.2 还原回收站文件 51
9.3 查询回收站文件 53
9.4 彻底删除回收站文件 56
9.5 清空回收站 57
9.6 全部还原 59
10 扩展属性接口要求 60
10.1 概述 60
10.2 设置扩展属性 61
10.3 删除扩展属性 63
10.4 读取扩展属性 64
10.5 列出扩展属性 67
11 快照接口要求 69
11.1 概述 69
11.2 创建快照 69
11.3 删除快照 71
11.4 列出快照 73
11.5 重命名快照 75
12 访问控制列表接口要求 77
12.1 概述 77
12.2 添加ACL规则 77
12.3 读取ACL 79
12.4 修改ACL规则 82
12.5 删除ACL 84
12.6 删除ACL规则 86
12.7 删除默认ACL规则 87
附录A(规范性附录) 分布式文件存储管理接口 90
附录B(规范性附录) 补充出错信息 106
前言
GB/T 31916《信息技术 云数据存储和管理》分为六个部分:
---第1部分:总则;
---第2部分:基于对象的云存储应用接口;
---第3部分:分布式文件存储应用接口;
---第4部分:基于块的云存储应用接口;
---第5部分:基于键值(Key-Value)的云数据管理应用接口;
---第6部分:分布式关系数据库应用接口。
本部分为GB/T 31916的第3部分。
本部分按照GB/T 1.1-2009给出的规则起草。
本部分由全国信息技术标准化技术委员会(SAC/TC28)提出并归口。
本部分起草单位:上海计算机软件技术开发中心、中国电子技术标准化研究院、浪潮(北京)电子信
息产业有限公司、华为技术有限公司、华中科技大学、阿里云计算有限公司、中国科学院深圳先进技术研
究院、深圳赛西信息技术有限公司。
本部分主要起草人:蔡立志、陈志峰、陈文捷、颜秉珩、胡芸、王志鹏、吴涛、杨丽蕴、王洁萍、周景才、
刘振宇、赵江、周可、喻之斌、贝振东、易晶晶、王学英。
信息技术 云数据存储和管理
第3部分:分布式文件存储应用接口
1 范围
GB/T 31916的本部分给出了分布式文件存储的体系结构,规定了分布式文件存储的应用接口通
用要求和应用接口。
本部分适用于分布式文件存储的设计、开发、测试和使用。
2 符合性
本部分所定义的接口分为必选项和可选项,其中文件接口、文件夹接口和回收站接口为必选接口,
其他接口为可选接口,每一个接口命令的参数可能包含必选参数和可选参数。符合性包含以下几种
情况:
a) 一个系统实现了所有的接口(包含必选接口和可选接口),可声称为完全符合本部分。
b) 一个系统实现了所有的必选接口,可声称为符合本部分。
c) 一个系统没有完全实现所有的必选接口,则不符合本部分。
3 规范性引用文件
下列文件对于本文件的应用是必不可少的。凡是注日期的引用文件,仅注日期的版本适用于本文
件。凡是不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。
GB/T 7408-2005 数据元和交换格式 信息交换 日期和时间表示法
GB/T 31916.1-2015 信息技术 云数据存储和管理 第1部分:总则
Messages)
4 术语、定义和缩略语
4.1 术语和定义
GB/T 31916.1-2015界定的以及下列术语和定义适用于本文件。
4.1.1
一种作为应用安装在操作系统之上的文件系统,其存储资源分布在不同的计算机节点上,并通过计
算机网络相连。
4.2 缩略语
下列缩略语适用于本文件。
ACL 访问控制列表(AccessControlList)
5 分布式文件存储接口定位和系统结构
5.1 分布式文件存储接口定位
应用层的分布式文件存储接口的定位,如图1所示。从操作系统的视角看,应用层分布式文件存储
作为一个传统操作系统的应用,不涉及操作系统内核相关的操作,避免了分布式文件存储对于操作系统
的依赖和约束。同时,应用层分布式文件存储提供了各类接口,其中文件接口、文件夹接口、回收站接
口、扩展属性接口、快照接口、ACL接口为上层的各类应用系统提供必要的功能支撑。除应用接口外,
分布式文件存储也提供一些管理功能的接口供管理员使用,见附录A。
图1 分布式文件存储接口定位
5.2 分布式文件存储系统结构
分布式文件存储的系统结构包括:元数据服务器、数据存储服务器、监控服务器和客户端。图2展
示了这种分布式文件存储的一般体系结构。
图2 分布式文件存储的一般体系结构
元数据服务器:提供整个文件系统的目录信息,并且管理各个存储服务器,是整个文件系统的核心。
元数据服务器维护着一张表,其中记录了文件系统中所有的文件名与该文件存储地址的对应关系。元
数据服务器还有管理各个存储服务器的功能。元数据服务器可以有一个或多个。
数据存储服务器:用于存放实际的文件数据。所有的分布式文件存储都需要有至少一个存储服务
器。客户端查询到某个文件的实际存放地址后就直接和存储服务器通信以获取文件。
监控服务器:提供整个分布式文件存储的服务监控、日志记录等管理功能,可为整个服务运行提供
管理支持。在某些分布式文件存储中监控服务器的功能整合到了元数据服务器中。
客户端:使用分布式文件存储来存储和访问的主机称为分布式文件存储的客户端,成功连接文件系
统以后,就可以通过应用接口对文件系统进行操作。
6 应用接口通用要求
6.1 概述
分布式文件存储应用接口通用要求包括接口协议、身份安全管理、命名规则、状态码信息描述、补充
出错信息、公共请求头、公共响应头和出错信息描述要求8项内容。其中,接口协议、身份安全管理、状
态码信息描述和出错信息描述要求4项内容见GB/T 31916.1-2015中相应部分。
6.2 命名规则
所有文件、文件夹、路径的命名规则如下:
---名称可用字母、数字、下划线(_)、短横线(-)和中文字符。
---名称应以字母、数字或者中文字符开头。
---名称最长可允许256个字符。
所有响应中需要命名的部分见RFC7159。
6.3 补充出错信息
分布式文件存储发生的出错响应较为复杂,需要对HTTP状态码补充出错信息描述。出错信息格
式符合GB/T 31916.1-2015中5.4的要求。补充出错信息描述见附录B。
6.4 公共请求头
公共请求头应包括信息见表1(见RFC2616)。
表1 公共请求头信息
名称 描述 选择状态
Host 主机信息,如:example.distfs.cn 必选
Accept application/json 可选
Content-Type application/json或 */* 可选
Authorization 用户授权信息 必选
6.5 公共响应头
公共响应头应包括信息见表2。
表2 公共响应头信息
名称 描述 选择状态
Content-Length 响应消息内容长度(不含消息头)
取决响应消息内容,对于有内容的响应,本参
数必选;无内容的响应,可选
Content-Type 表示响应文档属于什么 MIME类型 可选
Date
消息响应的时间,时间的描述格式由 RFC
822 定 义,如:Sun,18 Nov 2006 06:
12:00GMT
必选
Server 处理请求的原始服务器的信息 可选
7 文件接口要求
7.1 概述
分布式文件存储的文件接口是对系统中的文件进行操作的接口,包括创建文件、删除文件、上传文
件、下载文件、追加写文件、复制文件、重命名文件、查看文件状态、修改文件属性、文件搜索、读文件和写
文件。文件接口是必选接口。
7.2 创建文件
7.2.1 功能描述
创建文件的操作参数为:CreateFile,用于在分布式文件存储中创建文件。创建的文件名应在文件
夹中唯一。
7.2.2 请求定义
PUT/< Account >/< Path >? op=createfile&name=xxx[&overwrite=true/false][&permission=
xxx][&replication=< short >][&trashtime=< time >]HTTP/1.1
Host:[HostName]
Accept:application/json
Content-Type:application/json
Authorization:[SignatureValue]
7.2.3 请求URL
http://example.distfs.cn/< Account >/< Path >/
其中:< Account >表示账户ID,< Path >表示创建文件的位置。
7.2.4 请求消息头
按公共请求头定义。
7.2.5 请求消息参数
请求消息参数见表3。
表3 请求消息参数
参数 名称 类型 描述 选择状态
name 文件名称 String 文件名称应符合6.2中所述的文件命名规则 必选
overwrite
文 件 重 名 覆 盖
标记
Boolean true表示可覆盖,false表示不允许覆盖,默认值为false 可选
permission 文件权限 String r表示可读,w表示可写,x表示可执行,默认值为rwx 可选
replication 副本数 Short
0~512之间的正整数,应大于或等于系统最低文件副
本数,默认值为系统最低文件副本数
可选
trashtime 回收站保存时间 String
正整数+单位,格式如12min。单位包括秒(s)、分
(min)、小时(h)、天(d)、月(M)。最大值为24个月。默
认值为1天
可选
7.2.6 请求消息体
无。
7.2.7 响应状态码
响应状态码及其描述见表4。
表4 响应状态码
状态码 描述
200 OK,创建成功
400 InvalidFileName,文件名不符合命名规则
表4(续)
状态码 描述
400 InvalidFileSize,用户请求创建文件大小大于系统设定的最大文件大小值
400
副本数
400 InvalidTrashTime,文件保存时间不符合格式或超过24个月
401 Unauthorized,用户没有传入验证信息或验证信息不正确
403 Forbidden,用户没有创建文件的权限
404 NoSuchFolder,用户请求的文件路径不存在
409 FileAlreadyExists,用户创建的文件名与已有文件重名,并且重名覆盖标记为false
501 NotImplemented,服务器不支持此功能接口
7.2.8 响应定义
HTTP/1.1200OK
Date:date
Content-Type:application/json
Content-Length:length
Server:server
"ctime":"xxxxxxxx"
7.2.9 响应消息头
按公共响应头定义。
7.2.10 响应消息体
响应消息体中各参数描述见表5。
表5 响应消息体
参数 名称 类型 描述 选择状态
ctime 文件的创建时间戳 string 时间的格式由GB/T 7408-2005定义,如:2006-11-18T06:12:00 必选
7.2.11 请求和响应示例
请求消息和响应消息见示例。
示例:
请求消息:
PUT/MyAccount/temp? op=createfile&name=temp.txt
&overwrite=true&permission=rwx&replication=5&trashtime=12M HTTP/1.1
Host:example.distfs.cn
Content-Type:application/json
Authorization:15IUYRRTY876OIU4D
响应消息:
HTTP/1.1200OK
Date:Sun,6Feb201118:10:00GMT
Content-Type:application/json
Content-Length:length
Server:example.distfs.cn
"ctime":"2006-11-18T06:12:00"
7.3 删除文件
7.3.1 功能描述
删除文件的操作参数为:DeleteFile,用于删除文件。删除文件时系统应将之放入回收站。
7.3.2 请求定义
DELETE/< Account >/< Path >? op=deletefile&name=xxx[&trashtime=< time >]HTTP/1.1
Host:[HostName]
Accept:application/json
Content-Type:application/json
Authorization:[SignatureValue]
7.3.3 请求URL
http://example.distfs.cn/< Account >/< Path >/
其中:< Account >表示账户ID,< Path >表示文件的位置。
7.3.4 请求消息头
按公共请求头定义。
7.3.5 请求消息参数
请求消息参数见表6。
表6 请求消息参数
参数 名称 类型 描述 选择状态
name 文件名称 string 文件名称应符合6.2中所述的文件命名规则 必选
trashtime 回收站保存时间 string
正整数+单位,格式如12min。单位包括秒(s)、分
(min)、小时(h)、天(d)、月(M)。最大值为24个月。默
认值为文件原来的trashtime
可选
7.3.6 请求消息体
无。
7.3.7 响应状态码
响应状态码及其描述见表7。
表7 响应状态码
状态码 描述
200 OK,删除成功
400 InvalidFileName,用户请求的文件名称或位置不符合命名规则
400 InvalidTrashTime,文件保存时间不符合格式或超过24个月
401 Unauthorized,用户没有传入验证信息或验证信息不正确
403 Forbidden,用户没有删除文件的权限
404 NoSuchFile,用户请求的文件不存在
501 NotImplemented,服务器不支持此功能接口
7.3.8 响应定义
HTTP/1.1200OK
Date:date
Content-Type:application/json
Server:server
7.3.9 响应消息头
按公共响应头定义。
7.3.10 响应消息体
无。
7.3.11 请求和响应示例
请求消息和响应消息见示例。
示例:
请求消息:
DELETE/MyAccount/temp? op=deletefile&name=tmp
HTTP/1.1
Host:example.distfs.cn
Content-Type:application/json
Authorization:15IUYRRTY876OIU4D
响应消息:
HTTP/1.1200OK
Date:Sun,6Feb201118:10:00GMT
Content-Type:application/json
Server:example.distfs.cn
7.4 上传文件
7.4.1 功能描述
上传文件的操作参数为:UploadFile,用于上传本地的文件到分布式文件存储。
7.4.2 请求定义
PUT/< Account >/< Path >? op=uploadfile&[&overwrite=0|1|2][&permission=xxx]
[&replication=< short >][&trashtime=< time >]HTTP/1.1
Host:[HostName]
Accept:application/json
Content-Type:application/json
Authorization:[SignatureValue]
"localfilepath":"xxxxxx"
7.4.3 请求URL
http://example.distfs.cn/< Account >/< Path >/
其中:< Account >表示账户ID,< Path >表示上传到的文件夹的位置。
7.4.4 请求消息头
按公共请求头定义。
7.4.5 请求消息参数
请求消息参数见表8。
表8 请求消息参数
参数 名称 类型 描述 选择状态
overwrite
文 件 重 名 覆 盖
标记
int
0表示可覆盖,1表示不允许覆盖,2表示自动重命名为
FileName-1、FileName-2以此类推。默认值为1
可选
permission 文件夹权限 string r表示可读,w表示可写,x表示可执行,默认值为rwx 可选
replication 副本数 short
0~512之间的正整数,应大于或等于系统最低文件副
本数,默认值为系统最低文件副本数
可选
trashtime 回收站保存时间 string
正整数+单位,格式如12min。单位包括秒(s)、分
(min)、小时(h)、天(d)、月(M)。最大值为6个月。默
认值为1天
可选
7.4.6 请求消息体
请求消息体中各参数描述见表9。
表9 请求消息体
参数 名称 类型 描述 选择状态
localfilepath 本地文件位置 string 文件名称应符合6.2中所述的文件命名规则 必选
7.4.7 响应状态码
响应状态码及其描述见表10。
表10 响应状态码
状态码 描述
200 OK,上传成功
400 InvalidFileName,文件名称不符合命名规则
400 InvalidPermission,文件权限参数不正确
400 InvalidFileSize,用户请求上传的文件大于系统设定的最大文件大小值
400
本数
400 InvalidTrashTime,文件保存时间不符合格式或超过6个月
401 Unauthorized,用户没有传入验证信息或验证信息不正确
403 Forbidden,用户没有在文件夹中创建文件的权限
404 NoSuchFolder,用户请求的文件路径不存在
409 FileAlreadyExists,用户请求上传文件名与已有文件夹重名,并且重名覆盖标记为1
501 NotImplemente......
|