当前位置: 首页 > article >正文

为您的人工智能数据提供类似 Git 的版本管理功能

您过去肯定有过版本控制代码。但是,您是否对数据进行了版本控制?您是否曾经想过与不同的团队协作处理大量数据,而无需提交大量数据?想象一下,使用类似 git 的命令来运行类似存储库的生态系统,在该生态系统中,您可以提交数据、创建分支、检查历史记录并在整个数据生命周期中跟踪更改,那将是多么酷。最终,这可确保大型组织中的团队以与协作处理代码相同的方式协作处理数据。Pachyderm 的支柱是其文件系统 PFS。它本质上构建在 Postgres 和 Object Store 之上,例如 MinIO。这可确保数据在所有请求中都是安全和一致的。这可确保用户可以使用分支和提交对其数据进行版本控制,以管理和跟踪随时间的变化。

我们来看看如何以 MinIO Enterprise Store 作为主干来设置 Pachyderm。

MinIO Enterprise Store 和 Pachyderm

您应该已经有一个 Kubernetes 集群,并使用 Kubernetes 的支持版本运行。完成后,请继续下载并解压缩 MinIO Enterprise Store 的 Kubernetes YAML 文件。

wget https://dl.min.io/enterprise/console.tar.gz


tar xvf console.tar.gz

启动 MinIO Enterprise 控制台


kubectl apply -k console

接下来让我们安装 Pachyderm。

添加 Helm Chart 仓库和更新

helm repo add pachyderm https://helm.pachyderm.com

helm repo update

使用以下步骤创建 MinIO 存储桶

<div>

  <script async src="https://js.storylane.io/js/v2/storylane.js"></script>

  <div class="sl-embed" style="position:relative;padding-bottom:calc(79.17% + 25px);width:100%;height:0;transform:scale(1)">

	<iframe loading="lazy" class="sl-demo" src="https://app.storylane.io/demo/cesgrcyf9wnq?embed=inline" name="sl-embed" allow="fullscreen" allowfullscreen style="position:absolute;top:0;left:0;width:100%!important;height:100%!important;border:1px solid rgba(63,95,172,0.35);box-shadow: 0px 0px 18px rgba(26, 19, 72, 0.15);border-radius:10px;box-sizing:border-box;"></iframe>

  </div>

</div>

使用 MinIO 终端节点、存储桶名称、访问密钥 ID 和私有密钥更新 Pachyderm Helm 值文件。

pachd:

  storage:

	backend: "AMAZON"

	storageURL: "s3://pachyderm-test?endpoint=minio.default.svc.cluster.local:9000&disableSSL=true&region=dummy-region"


部署 Pachyderm

helm install pachyderm -f values.yaml pachyderm/pachyderm --version <your_chart_version>

添加和检索数据

有两种方法可以添加和检索数据。

MC

MC 是最好和最简单的方法。您可以像添加任何其他 S3 终端节点一样添加 Pachyderm 终端节点

mc alias set pachyderm_minio <pachyderm-address> <YOUR-PACHYDERM-AUTH-TOKEN> <YOUR-PACHYDERM-AUTH-TOKEN>

列出 Pachyderm 存储库和项目的内容

mc ls local/master.<repo>.<project>

命令行界面

您还可以使用 aws cli 将数据放入 MinIO 中

aws --endpoint-url <pachyderm-address> s3 cp myfile.csv s3://minio.default.svc.cluster.local:9000

从 MinIO Enterprise Store 检索数据同样简单

aws --endpoint-url <pachyderm-address> s3 cp s3://minio.default.svc.cluster.local:9000/myfile.csv

如果您在 Kubernetes 集群之外,则可以使用端口转发,但我建议将其限制为测试用例。

AI 数据的版本控制

我们发布代码,现在很明显我们为什么要这样做。我们将基础设施版本化为代码,这在过去并不是常态,但慢慢地,即使对于小型设置,对基础设施代码进行版本控制也与应用程序代码一样重要。从根本上说,我们这样做的原因是为了合作。了解大数据和 AI/ML 是同一枚硬币的两面非常重要,你不能缺一不可,随着模型的发展,它们都会相互影响。因此,您希望能够确保其他团队可以以有意义的方式处理您生成的数据,而无需再次重做整个数据,想象一下每次有人在没有适当的 git commit/merge 的情况下覆盖您的代码。在 MinIO,我们不仅注重简单性,还注重管理基础设施的最佳实践。


http://www.kler.cn/news/343777.html

相关文章:

  • springboot+mybatis plus 数据源真动态切换
  • nn.Embedding
  • 《Linux从小白到高手》综合应用篇:详解Linux系统调优之深入理解Huge Pages和Transparent Huge Pages
  • C++设计模式学习详解(23种)
  • C++ 类(1)
  • leetcode 22.括号生成
  • 力扣题31~40
  • 服务器开启SSL?
  • Android Framework AMS(04)startActivity分析-1(am启动到ActivityThread启动)
  • 基于 CAN 总线通信的应用层是否需要应答机制?
  • 专业模拟训练头显,Varjo XR-4 如何开启虚拟仿真新模拟时代
  • Android常用组件
  • mac下docker的详细安装和配置
  • SpringSecirity(四)——用户退出
  • 春日技术问答:Spring Boot课程解答
  • [MyBatis-Plus]快速入门
  • 【加密】【计算机网络】网络传输加密协议 CA 签名
  • 分组相关 -- VPLS
  • 浙大数据结构:08-图9 关键活动
  • 信息安全数学基础(29) x^2 + y^2 = p