在 GitHub 上编辑
数据注册表
DVC 仓库 的主要用途之一是 对数据和模型文件进行版本管理。DVC 还支持这些 数据产物 在项目之间的 复用。这意味着你的项目可以依赖于其他仓库中的数据——就像一个用于数据科学的包管理系统。
我们可以构建一个专门用于版本化 数据集(或数据特征、机器学习模型等)的 DVC 项目。该仓库包含必要的元数据以及完整的变更历史,而实际的数据则存储在一个或多个 DVC 远程存储 中。我们称这种结构为数据注册表——即连接机器学习项目与云存储之间的数据管理中间件。其优势包括:
- 可复用性:通过简单的命令行工具(使用
dvc get
和dvc import
命令,类似于软件包管理工具如pip
),即可复现和组织特征存储。 - 持久性:将元数据与存储分离,并分别存放于可靠的平台(如 Git、云存储位置),从而提升数据的长期可用性和可靠性。
- 存储优化:将多个项目共享的数据集中存放在单一位置(也支持分布式副本),简化数据管理并优化空间占用。
- 数据即代码:充分利用 Git 工作流的优势,例如提交历史、分支、拉取请求、代码审查,甚至实现数据与模型生命周期的 CI/CD。可理解为“用于云存储的 Git”。
- 安全性:可通过 DVC 管理的远程存储(例如 Amazon S3)配置访问权限,限制数据访问。例如,你可以设置只读端点(如 HTTP 服务器),防止数据被删除或篡改。
👩💻 感兴趣吗?尝试我们的 注册表示范教程,亲身体验 DVC 的使用感受。
另请参阅 模型注册表。