跳到主要内容

冷热分层与存储

随着数据集和模型越积越多,本地磁盘迟早吃不消。VortLab 用「冷热分层」解决这个问题,把不常用的数据挪到对象存储,常用的留在本地。对用户来说,整个过程基本无感,只是偶尔会在数据集卡片上看到一个「已存档」徽章。这一页讲清楚分层是怎么回事,以及它和业务归档的区别。

什么是冷热分层

存储层级概念

VortLab 使用两级存储:

  • 热数据(hot):存在本地磁盘,访问速度快,日常操作直接读写。
  • 冷数据(cold):本地文件已被清理以节省空间,原始数据保存在对象存储里,访问时系统会自动把它恢复回本地。

一个数据集处在哪一级,由系统按访问频率自动决定,用 storage_tier 字段标记。

冷热分层是自动的

冷热分层是自动的
  • 系统会根据访问频率,自动把不常用的数据集从热存储转为冷存储。
  • 这个过程对用户透明,不需要手动操作,也没有额外开关。
  • 当你访问一个冷存储的数据集时,系统会自动触发恢复(ensure_hot),把它重新拉回本地。
  • 恢复过程中数据集会短暂处于「恢复中」(recovering)状态,完成后回到正常可用状态。

冷存储与业务归档的区别

这两个概念字面接近,但说的完全是两回事,别混在一起。

冷存储与业务归档的区别
  • 冷存储(cold tier)存储层面的概念:本地文件被清理来省空间,数据仍完整保存在对象存储中,访问时自动恢复,数据集依旧可用。
  • 业务归档业务层面的操作,比如数据集版本归档、项目归档。归档后的实体进入不可用状态,需要手动取消归档才能继续使用。
  • 一句话区分:冷存储的数据集仍可用(访问时自动恢复),业务归档的实体不可用

冷存储状态的表现

数据集被转入冷存储后,你会看到这些现象:

  • 数据集卡片或列表项上出现「已存档」徽章。
  • 打开这个数据集时,系统自动在后台触发恢复流程。
  • 恢复需要一些时间,具体取决于数据量和当时的网络与磁盘速度。
  • 恢复进行中可能显示「恢复中」状态,图标会旋转提示正在处理。
  • 恢复完成后,数据集回到热存储,一切操作恢复正常。
数据集卡片上的已存档徽章
图1:数据集卡片上的「已存档」徽章

如何判断数据集在冷存储

如何判断数据集在冷存储
  • 留意数据集卡片或列表项:如果出现「已存档」徽章,说明它在冷存储。
  • 这只代表本地副本被清理了,不影响数据完整性,对象存储里的数据始终完好。
  • 访问时稍微等一下恢复即可,无需任何额外操作。

对象存储后端

对象存储后端
  • 生产环境使用 RustFS,一套 S3 兼容的对象存储服务。
  • 数据集版本文件、模型备份、封面图等大体积资源都存放在对象存储中。
  • 冷热分层把「本地磁盘空间」和「访问性能」做了一次平衡:常用的留本地求快,不常用的挪到对象存储求省。
  • 数据集版本发布时,文件会以内容寻址(按文件 SHA256)上传到对象存储,相同文件跨版本共享,不重复占用空间。

接下来

  • 想了解数据集版本发布、归档、恢复的完整流程,看「数据集与版本」分类下的版本说明。
  • 模型文件的备份与恢复机制类似,看「训练」分类下的相关说明。