挂载存储
解释说明
资源规格选择“专属资源池”时,支持添加多种存储挂载方式,以提高数据的访问效率。
在ModelArts中创建训练作业时,可以选择以下两种存储挂载选项。以下是它们的详细对比,帮助您根据需求选择合适的存储方案。
| 存储类型 | 性能 | 容量 | 适用场景 | 价格 | 备注 |
|---|---|---|---|---|---|
| SFS Turbo | 高 | 大 | 适用于多种应用场景,包括AI训练、AIGC、自动驾驶、渲染、EDA仿真、企业NAS应用等。 | 较高 | 通用 |
| OBS | 中 | 大 | 基于对象存储服务作为统一数据存储的大数据场景。 | 适中 | 高频读取,低频写入。 |
OBS挂载使用与注意事项
- “添加拓展存储SFS Turbo”:
当ModelArts和SFS Turbo间网络直通时,训练作业支持挂载多个SFS Turbo存放训练数据。文件系统支持重复挂载,但是挂载路径不可重复。最多可以挂载15个盘。配置ModelArts和SFS Turbo间网络直通,具体操作请参见配置ModelArts和SFS Turbo间网络直通。
图1 SFS Turbo
- “文件系统”:选择一个可用的SFS Turbo。
- “文件系统目录”:选择SFS Turbo的存储位置。如果用户配置了文件夹控制权限,请选择存储位置;如果用户未配置文件夹控制权限,可以保持默认值“/”或者自定义位置。
- “挂载路径”:输入SFS Turbo对应在训练容器内的云上挂载路径。不能为“/”目录,不能为“/cache”、“/home/ma-user/modelarts”等系统已经默认挂载的路径。
- “挂载方式”:显示挂载SFS Turbo的权限。根据SFS Turbo存储位置的权限显示“读写”或“只读”,如果用户未配置文件夹控制权限,则该参数不可见。如果需要设置SFS Turbo的文件夹权限,请参考权限管理文档配置。
- “挂载参数”:支持配置SFS挂载参数实现训练加速优化,具体参数说明请参见设置训练存储加速。不设置时,默认配置如下参数:
mountOptions: - vers=3 - timeo=600 - nolock - hard
-
训练作业支持挂载一个OBS桶用于存放训练数据。添加桶参数配置如下:
“存储地址”:选择OBS拓展存储的存储位置。如果用户配置了文件夹控制权限,请选择存储位置;如果用户未配置文件夹控制权限,可以保持默认值“/”或者自定义位置。用户自己的OBS桶可以在界面选择,也可以手动输入路径,路径格式以“obs://”开头并以“/”结尾,例如“obs://bucketname/path/”。其他人的共享桶路径仅支持手动输入地址。
“挂载路径”:输入OBS对应在训练容器内的云上挂载路径。不能为“/”目录,不能为“/cache”、“/home/ma-user/modelarts”等系统已经默认挂载的路径。
由于对象存储(OBS)的对象语义与POSIX文件系统不同,rclone通过FUSE方式提供“类文件系统”访问,存在以下限制:
- 写入语义限制:不支持随机写入和追加写入,不支持对已有文件进行原地修改,包括随机写(seek write)和追加写(append)。例如,以r+、w+、a或a+模式打开并修改同一文件,或不断追加写入日志文件(如bash while true; do echo "$(date) line" >> app.log; sleep 1; done)。
- 权限限制:挂载显示的权限多为rclone伪造(或统一映射),不能作为真实的多用户权限系统使用,因此无法使用chmod或chown修改文件权限。
- 并发写入限制:并发写入同一路径的行为不可控,多个进程写入同一文件时无法确认最终内容。
- 链接限制:不支持硬链接,符号链接可能被当作普通文件存储(保存链接文本)。例如,ln -s target.txt link.txt可能会导致直接失败,或者link.txt被当成普通文件上传,内容是字符串target.txt。
