计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
弹性伸缩 AS
镜像服务 IMS
专属主机 DeH
函数工作流 FunctionGraph
云手机服务器 CPH
Huawei Cloud EulerOS
网络
虚拟私有云 VPC
弹性公网IP EIP
虚拟专用网络 VPN
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
VPC终端节点 VPCEP
云连接 CC
企业路由器 ER
企业交换机 ESW
全球加速 GA
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
边缘安全 EdgeSec
威胁检测服务 MTD
CDN与智能边缘
内容分发网络 CDN
CloudPond云服务
智能边缘云 IEC
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
云搜索服务 CSS
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
数据可视化 DLV
数据湖工厂 DLF
湖仓构建 LakeFormation
企业应用
云桌面 Workspace
应用与数据集成平台 ROMA Connect
云解析服务 DNS
专属云
专属计算集群 DCC
IoT物联网
IoT物联网
设备接入 IoTDA
智能边缘平台 IEF
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
国际站常见问题
ICP备案
我的凭证
支持计划
客户运营能力
合作伙伴支持计划
专业服务
区块链
区块链服务 BCS
Web3节点引擎服务 NES
解决方案
SAP
高性能计算 HPC
视频
视频直播 Live
视频点播 VOD
媒体处理 MPC
实时音视频 SparkRTC
数字内容生产线 MetaStudio
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
存储容灾服务 SDRS
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属分布式存储服务 DSS
容器
云容器引擎 CCE
容器镜像服务 SWR
应用服务网格 ASM
华为云UCS
云容器实例 CCI
管理与监管
云监控服务 CES
统一身份认证服务 IAM
资源编排服务 RFS
云审计服务 CTS
标签管理服务 TMS
云日志服务 LTS
配置审计 Config
资源访问管理 RAM
消息通知服务 SMN
应用运维管理 AOM
应用性能管理 APM
组织 Organizations
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
应用身份管理服务 OneAccess
数据库
云数据库 RDS
文档数据库服务 DDS
数据管理服务 DAS
数据复制服务 DRS
云数据库 GeminiDB
云数据库 GaussDB
分布式数据库中间件 DDM
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
人脸识别服务 FRS
图引擎服务 GES
图像识别 Image
内容审核 Moderation
文字识别 OCR
AI开发平台ModelArts
图像搜索 ImageSearch
对话机器人服务 CBS
华为HiLens
视频智能分析服务 VIAS
语音交互服务 SIS
应用中间件
分布式缓存服务 DCS
API网关 APIG
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
多活高可用服务 MAS
事件网格 EG
企业协同
华为云会议 Meeting
云通信
消息&短信 MSGSMS
云生态
合作伙伴中心
云商店
开发者工具
SDK开发指南
API签名指南
Terraform
华为云命令行工具服务 KooCLI
其他
产品价格详情
系统权限
管理控制台
客户关联华为云合作伙伴须知
消息中心
公共问题
开发与运维
应用管理与运维平台 ServiceStage
软件开发生产线 CodeArts
需求管理 CodeArts Req
部署 CodeArts Deploy
性能测试 CodeArts PerfTest
编译构建 CodeArts Build
流水线 CodeArts Pipeline
制品仓库 CodeArts Artifact
测试计划 CodeArts TestPlan
代码检查 CodeArts Check
代码托管 CodeArts Repo
云应用引擎 CAE
开天aPaaS
云消息服务 KooMessage
云手机服务 KooPhone
云空间服务 KooDrive
文档首页/ 弹性文件服务 SFS/ 用户指南/ SFS Turbo文件系统/ 管理SFS Turbo文件系统与OBS桶的存储联动

管理SFS Turbo文件系统与OBS桶的存储联动

更新时间:2024-12-23 GMT+08:00

概述

AI训练和推理、高性能数据预处理、EDA、渲染、仿真等场景下,您可以通过SFS Turbo文件系统来加速OBS对象存储中的数据访问。SFS Turbo文件系统支持无缝访问存储在OBS对象存储桶中的对象。您可以指定SFS Turbo内的目录与OBS对象存储桶进行关联,然后通过创建导入导出任务实现数据同步。您可以在上层训练等任务开始前将OBS对象存储桶中的数据提前导入到SFS Turbo中,加速对OBS对象存储中的数据访问;上层任务产生的中间和结果等数据可以直接高速写入到SFS Turbo缓存中,中间缓存数据可被下游业务环节继续读取并处理,结果数据可以异步方式导出到关联的OBS对象存储中进行长期低成本存储。同时,您还可以配置缓存数据淘汰功能,及时将长期未访问的数据从SFS Turbo缓存中淘汰,释放SFS Turbo高性能缓存空间。

使用限制

  • 单个SFS Turbo文件系统最多可配置16个OBS联动目录。
  • 创建 OBS 后端存储库,依赖的服务是对象存储服务 OBS。用户需要额外配置OBS Adminstrator权限。
  • 同一层目录下不允许同样名称的文件和目录存在。
  • 不支持超长路径,数据流动支持的路径最大长度是1023字符。
  • 数据流动导入时,不支持长度大于255字节的文件名或子目录名。
  • 开启WORM策略的OBS桶,只能从OBS桶导入数据到SFS Turbo,无法从SFS Turbo导出数据到OBS桶。
  • 不支持绑定OBS并行文件系统和已配置服务端加密的OBS存储桶进行联动。

绑定OBS桶

  1. 登录高性能弹性文件服务管理控制台。
  2. 在文件系统列表中,单击创建的文件系统名称,进入文件系统详情页面。
  3. 进入“绑定后端存储”页签,单击“绑定OBS桶”。

    图1 绑定OBS桶

  4. 在右侧弹窗“绑定OBS桶”中,填写如下参数。

    表1 参数说明

    参数

    含义

    限制

    配置后可编辑

    联动目录名称

    SFS Turbo文件系统根目录下会以该名称创建一个子目录,该目录将绑定对应的OBS桶,且该目录名称不能和已有目录重名。

    • 子目录名称不能重复,子目录名称长度不能超过63个字符。
    • 子目录名称必须是文件系统根目录下不存在的目录名。
    • 子目录名称不能是“.”或“..”。

    不支持

    桶名

    OBS存储桶桶名。

    • 无法绑定不存在的存储桶。
    • 不支持绑定OBS并行文件系统和已配置服务端加密的OBS存储桶进行联动。

    不支持

    OBS区域域名

    OBS区域域名,即OBS的终端节点。

    OBS存储桶必须和SFS Turbo文件系统在同一个Region。

    不支持

    自动导出

    打开开关后,当文件系统发生数据更新时,将自动导出到OBS桶。

    -

    支持

    导出数据

    打开“自动导出”开关,则会出现该参数。

    选择导出到OBS桶的数据更新类型“新增数据”、“修改数据”或“删除数据”后,SFS Turbo会以异步方式导出到OBS。

    新增数据:SFS Turbo联动目录下创建的文件,及之后对这些文件进行的元数据和数据修改,会被自动同步到OBS桶里。

    修改数据:从OBS桶里导入到SFS Turbo联动目录下的文件,在SFS Turbo上对这些文件所进行的数据和元数据的修改,会被自动同步到OBS桶里。

    删除数据:在SFS Turbo联动目录下删除文件,OBS桶对应的对象也会被删除,只有被SFS Turbo写入的OBS对象才会被删除。

    -

    支持

  5. 勾选“将OBS桶的读写权限通过桶策略授权给SFS Turbo云服务”,并单击“确定”,完成绑定。
说明:
  • 如果您想指定导入目录和文件的权限,请参考《高性能弹性文件服务API参考》的“绑定后端存储”和“更新后端存储属性”执行操作。
  • 不支持绑定OBS并行文件系统和已配置服务端加密的OBS存储桶进行联动。
  • 绑定OBS桶时,会在OBS桶上添加Sid为PolicyAddedBySFSTurbo的桶策略,请不要修改或删除该桶策略,否则可能导致联动功能异常。
  • 如果您已将一个或多个SFS Turbo文件系统绑定了OBS存储桶,在删除文件系统或删除绑定之前,请不要删除该OBS存储桶,否则可能导致联动功能异常。

自动同步策略

SFS Turbo文件系统绑定OBS桶前后,都可以配置自动同步策略。

当您打开自动导出开关,使用自动同步策略,SFS Turbo会根据您选择的数据更新类型,以异步方式导出到OBS。

数据更新类型包含“新增数据”、“修改数据”和“删除数据”。

  • 新增数据:SFS Turbo联动目录下创建的文件,及之后对这些文件进行的元数据和数据修改,会被自动同步到OBS桶里。
  • 修改数据:从OBS桶里导入到SFS Turbo联动目录下的文件,在SFS Turbo上对这些文件所进行的数据和元数据的修改,会被自动同步到OBS桶里。
  • 删除数据:在SFS Turbo联动目录下删除文件,OBS桶对应的对象也会被删除,只有被SFS Turbo写入的OBS对象才会被删除。

绑定OBS桶时配置自动同步策略,请参见绑定OBS桶

绑定OBS桶后配置自动同步策略,操作步骤如下所示。

  1. 在绑定OBS桶之后,单击“自动同步策略”选项。

    图2 自动同步策略

  2. 配置“自动同步 > 自动导出”数据。

    图3 自动导出界面
    1. 打开或关闭自动导出开关。
    2. 关闭自动导出开关即不支持自动导出功能;打开自动导出开关后,请选择导出数据。数据更新类型支持选择“新增数据”、“修改数据”或“删除数据”。更多参数解释请参见表1

  3. 单击“确定”,提交自动同步任务。

元数据导入功能

SFS Turbo文件系统绑定OBS桶后,可以使用元数据导入功能。

当您使用SFS Turbo文件系统访问OBS桶的数据时,您需要使用元数据导入功能提前将OBS数据文件的元数据(名称、大小、最后修改时间)导入到SFS Turbo文件系统中。只有元数据导入之后,您才可以在文件系统的联动子目录中去访问OBS存储桶中的数据。元数据导入功能仅会导入文件元数据,文件内容会在首次访问时从OBS存储桶中加载并缓存在SFS Turbo中,后续重复访问会直接命中,无需再从OBS存储桶中加载。

SFS Turbo文件系统提供快速导入和附加元数据导入两种元数据导入方式。元数据导入之后,您可以在联动子目录下看到导入的目录和文件列表。

  • 快速导入:当您绑定的OBS桶中存储的数据不是来源于SFS Turbo导出时,可以选择快速导入方式,快速导入方式仅会导入OBS的元数据(名称、大小、最后修改时间),不会导入其它附加元数据(如uid、gid、mode),SFS Turbo会生成默认的附加元数据(uid、gid、目录权限、文件权限),如果您想指定导入目录和文件的权限,请参考《高性能弹性文件服务API参考》的创建数据导入导出任务”章节,该操作仅针对本次导入任务生效。快速导入能够提供更快的元数据导入性能,推荐您使用快速导入。
  • 附加元数据导入:当您绑定的OBS桶中存储的数据是来源于SFS Turbo导出时,可以使用附加元数据导入方式,附加元数据导入方式会导入OBS的元数据(名称、大小、最后修改时间)以及来源于SFS Turbo导出时的附加元数据(如uid、gid、mode)。如果没有来源于SFS Turbo的附加元数据则以指定导入目录和文件的权限为准。
  1. 在绑定OBS桶之后,单击“元数据导入”选项。
  2. “导入前缀”请填写绑定OBS桶内对象的前缀,可以具体到某个对象名。如果要导入整个OBS桶内的所有对象,则不用填写。
  3. 勾选“附加元数据导入”将会采用附加元数据导入方式,不勾选“附加元数据导入”将采用快速导入方式。
  4. 单击“确定”,提交导入任务。
说明:
  • 在OBS数据导入到SFS Turbo之后,如果OBS桶中的数据发生新增或修改,需要重新导入到SFS Turbo中。
  • 不支持长度大于255字节的文件名或子目录名。

数据导入功能

SFS Turbo文件系统绑定OBS桶后,可以使用数据导入功能。

默认情况下,元数据导入完成后,数据不会导入到SFS Turbo文件系统中,初次访问会按需从OBS中加载数据,对文件的第一次读取操作可能耗时较长。如果您的业务对时延比较敏感,并且您知道业务需要访问哪些目录和文件,比如AI训练等场景涉及海量小文件,对时延比较敏感,可以选择提前导入指定目录和文件。

数据导入功能会同时导入元数据和数据内容,元数据将会采用快速导入方式,不会导入其他附加元数据(如uid、gid、mode),如果您想指定导入目录和文件的权限,请参考《高性能弹性文件服务API参考》的创建数据导入导出任务”章节,该操作仅针对本次导入任务生效。

  1. 在绑定OBS桶之后,单击“数据导入”选项。
  2. “对象路径”请填写绑定OBS桶内对象的路径(不包含桶名)。

    说明:

    OBS桶中的对象路径(不包含桶名),目录需以“/”结尾。

    • 如果要导入OBS桶内所有对象,则不用填写对象路径。SFS Turbo会将数据导入到联动目录下,且联动目录下的文件路径和OBS桶里的对象路径保持一致。
    • 对象路径示例(“/mnt/sfs_turbo”为您的挂载目录,“output-1”为您的联动目录名称):
      • 如对象路径为dir/,则会导入到“/mnt/sfs_turbo/output-1/dir”
      • 如对象路径为dir/file, 则会导入到“/mnt/sfs_turbo/output-1/dir/file”
      • 如对象路径为空,则会直接导入到“/mnt/sfs_turbo/output-1”

  3. 单击“确定”,提交导入任务。
说明:
  • 在OBS数据导入到SFS Turbo之后,如果OBS桶中的数据发生新增或修改,需要重新导入到SFS Turbo中。
  • 通过API使用数据导入功能的具体操作请参考创建SFSTurbo 和 OBS 之间的联动任务
  • 不支持长度大于255字节的文件名或子目录名。

数据导出功能

SFS Turbo文件系统绑定OBS桶后,可以使用数据导出功能。

当您在联动目录创建一些文件,或者对从OBS导入的文件进行修改后,需要将这些文件存储到OBS桶里,可以使用数据导出功能。数据导出支持指定前缀,只有满足指定前缀的目录和文件才会被导出到OBS桶里。

  1. 在绑定OBS桶之后,单击“更多 > 导出”选项。
  2. “导出文件前缀”请填写需要导出的目录和文件前缀(路径不包含联动目录),可以具体到某个文件。如果要导出整个联动目录到OBS桶,则不用填写。
  3. 单击“确定”,提交导出任务。
说明:
  • 数据导出功能会启动异步任务对导出目录内的文件进行扫描并导出,如果扫描时发现文件10s内发生过更新,则本次任务不会导出该文件。
  • 对于一个文件的所有修改,导出到OBS桶之后,下次再提交该文件的导出任务时,如果该文件未发生过变化,则该文件不会被再次导出,即使OBS桶里已经将导出的对象删掉了,也不会再导出该文件。
  • 从SFS Turbo导出的对象,在OBS对象的自定义元数据里保存了一些SFS Turbo的元数据信息,名称以x-obs-meta-sfsturbo-st-开头。
  • 不支持超长路径,可导出文件路径的最大长度为1023个字符。
  • 文件系统内单个文件大小上限为320TB、可导出的单个文件大小上限为48.8TB。
  • 大文件导出时OBS桶内x-obs-upload-sfsturbo-temp-part目录会存储大文件导出过程中产生的临时文件,导出完成后会自动删除该目录及临时文件。
  • 导出数据时:

    导入到SFS Turbo的对象,当在SFS Turbo里修改了,再从SFS Turbo导出这个对象时,如果OBS桶里该对象没有发生过修改,则会覆盖OBS桶里的对象,如果OBS桶里该对象发生过修改,则不会覆盖。

    对象正在被导出时,上传同名对象可能会造成新上传的对象被覆盖。

  • 开启WORM策略的OBS桶,无法从SFS Turbo导出数据到OBS桶

数据淘汰功能

SFS Turbo文件系统绑定OBS桶之后,可以使用数据淘汰功能。淘汰时会释放数据内容,仅保留元数据,释放后不占用SFS Turbo文件系统上的存储空间。再次访问该文件时,将重新从OBS中加载文件数据内容。

按时间淘汰

SFS Turbo文件系统绑定OBS桶之后,支持数据按时间淘汰功能。设定时间内没有被访问过的文件会被淘汰。

按时间淘汰功能支持设置(冷)数据淘汰时间,设置步骤请参考以下操作。

  1. 登录高性能弹性文件服务管理控制台。
  2. 在文件系统列表中,单击创建的SFS Turbo文件系统名称,进入文件系统详情页面。
  3. 在“基本信息”页签,设置(冷)数据淘汰时间。

    图4 设置冷数据淘汰时间

按容量淘汰

SFS Turbo文件系统绑定OBS桶后,支持数据按容量淘汰功能。

容量达到95%及以上按照30分钟淘汰时间进行淘汰,淘汰至容量低于85%。

说明:
  • 淘汰规则:按时间淘汰和按容量淘汰哪个先达到就先按哪个淘汰。
  • 数据淘汰默认开启,淘汰时间默认为60小时。设置(冷)数据淘汰时间的API请参考更新文件系统
  • 如果SFS Turbo文件系统存储空间写满,会影响业务运行,建议在云监控服务CES上配置SFS Turbo已用容量的监控告警。
  • 当触发容量阈值告警时请手动缩短数据淘汰时间,例如从60小时配置成40小时,加速(冷)数据淘汰,或者对SFS Turbo存储空间进行扩容。

任务状态

当您执行导出数据时,会在任务状态生成一条任务记录,方便您查看任务进度和状态。

说明:

系统只会保留最近创建的1000条任务记录,之前的任务记录系统将会自动删除。

  1. 在绑定后端存储列表页,单击界面左上角的“任务状态”。
  2. 执行导出数据操作,可查看对应操作的任务记录。单击状态右边的可查看成功或失败的次数。
  3. 在右上角的搜索框,支持对状态、类型、创建时间进行过滤,找到您需要的任务。

FAQ

  • 什么情况下会发生数据淘汰?

    从OBS导入到SFS Turbo的文件,当文件在设定数据淘汰时间内没有被访问时,会自动对该文件进行淘汰。

    在SFS Turbo上创建的文件,只有已经导出到OBS并且满足数据淘汰时间,才会进行淘汰,如果还没有导出到OBS,则不会淘汰。

  • 数据淘汰之后,怎么重新将数据导入到SFS Turbo文件系统?
    1. 对文件进行读写操作时会重新从OBS桶加载文件数据到SFS Turbo文件系统;
    2. 使用数据导入功能重新将数据从OBS桶加载到SFS Turbo文件系统。
  • 什么场景下会发生数据导入失败?

    当只导入了文件元数据,或者SFS Turbo中发生了数据淘汰,SFS Turbo中只剩下文件元数据,但OBS桶中的对象又被删除时,进行数据导入或访问文件内容时会发生失败。

  • 导入/导出任务是同步的,还是异步的?

    是异步的,任务提交后马上返回,您可以通过任务id查询异步任务完成状态。

  • 删除SFS Turbo联动目录内的文件,OBS桶里对应的对象会删除吗?

    不会。如果没有开启自动同步策略,则不会。如果开启了自动同步策略,则会删除。

  • SFS Turbo绑定OBS桶时或者绑定之后可以指定导入目录和文件的权限吗?
    一般情况下,您可以指定导入目录和文件的权限。如果无法指定,请提交工单申请。指定权限详情如下所示:
    • 绑定OBS桶时或绑定OBS桶后,支持设置导入目录和文件的默认权限,请参考《高性能弹性文件服务API参考》的绑定后端存储”和“更新后端存储属性”章节。如果未设置,默认为750(目录权限)和640(文件权限)。
    • 元数据导入(快速导入)和数据导入时,支持指定导入目录和文件的权限,请参考《高性能弹性文件服务API参考》的“创建数据导入导出任务”章节。如果未指定,则以上述默认权限为准。
    说明:

    历史版本导入目录和文件的默认权限为755(目录权限)和644(文件权限),现逐步按区域切换为750(目录权限)和640(文件权限),如有疑问,请提交工单咨询。

    SFS Turbo绑定OBS桶时或者绑定之后,建议指定导入目录和文件的默认权限。如果您未指定,非root用户无权限访问对应的目录和文件。

我们使用cookie来确保您的高速浏览体验。继续浏览本站,即表示您同意我们使用cookie。 详情

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容