共享存储和后面将要介绍的工作台和训练任务紧密相关.
AVA 平台使用的所有数据都来源于云, 并以文件系统协议提供访问.
从存储的使用形式来讲, 有两种共享存储:
-
AVA 本地存储集群的共享存储
AVA 提供了一套内部用的存储集群, 大小在几十 TiB 范围. 一般情况下, 用户可以把经常修改的配置文件, 程序代码放在这个集群内部. 对于每个用户和组, AVA 以工作目录形式提供本地集群的部分空间供用户使用. 这部分存储空间和对象存储不互相共享. 建议把程序, log 和一些中间处理结果放在这里.
-
云上对象存储共享
AVA 训练数据基本来源于互联网, 大部分数据也存储于互联网, 目前基于对象存储, 可轻松扩展到 PiB 级别. 用户的不同训练任务可以同时以读写方式访问这些数据, 不同用户也可以互相共享这些数据.
根据不同的共享对象和范围, 可以从几个角度来理解共享存储:
-
用户存储在训练间的共享
对单个用户来说, 他可以访问他自己的所有存储, “共享” 的概念是指该用户启动的所有工作台和训练都能访问自己的数据, 并且是读写共享的. 也就意味着, 在一个训练中生成的文件在该用户其它训练中也可以看到, 包括工作台和训练任务 (下面将介绍). 同时, 用户对数据的改动都将反应到云端.
-
组用户共享
用户可以根据其关系划分为不同的组. 在 AVA 平台, 同组内的部分数据是可以共享的. 每个组有一个共享目录, 组内每个成员都有一个子目录, 组内所有成员可以访问该组共享目录.
-
七牛云存储 Bucket 共享
- 每个用户的对象存储 Bucket 缺省是不共享的, 如果不共享, 则只有该用户可以挂载并查看其中内容
- 如果用户选择共享 Bucket 给特定用户, 则该用户能看到 Bucket 的数据
-
数据集的共享
公开共享存储由 AVA 平台提供, 一般是常用的数据集, 并可以以格式化方式提供, 比如 RecordIO. 用户也可以选择把自己的数据集共享.