【问题标题】:DVC connect to Min.IO to access S3DVC 连接 Min.IO 访问 S3
【发布时间】:2021-07-28 10:52:37
【问题描述】:

将 DVC 连接到连接到 S3 上某些存储桶的 Min.IO 的正确方法是什么。

AWS-S3(My_Bucket) > Min.io(MY_Bucket aliased as S3)

现在我正在使用 mc 访问我的存储桶,例如 mc cp s3/my_bucket/datasets datasets 从那里复制东西。但我需要设置我的 DVC 以使用 min.io 作为 AWS.S3 和 DVC 之间的集线器,以便我可以使用例如 "DVC mc-S3 pull""DVC AWS-S3 pull"

我是怎么得到它的,因为在谷歌搜索时我找不到任何可以轻松跟踪的内容。

【问题讨论】:

  • 为什么需要访问 Minio?下载数据?存储数据?用作 DVC 项目缓存?请暂时查看dvc.org/doc/command-reference/remote/… 中的S3 兼容存储
  • 我需要通过将 min.io 视为集线器来完成在 s3 上完成的所有事情以及在 min.io 上完成的事情

标签: amazon-s3 minio dvc


【解决方案1】:

看起来您正在寻找多种事物的组合。

首先,Jorge 提到您可以设置 endpointurl 来访问 Minio,就像访问常规 S3 一样:

dvc remote add -d minio-remote s3://mybucket/path
dvc remote modify minio-remote endpointurl https://minio.example.com                          

其次,您似乎可以创建 两个 遥控器 - 一个用于 S3,一个用于 Minio,并使用可用于许多数据管理相关命令的-r 选项:

dvc pull -r minio-remote
dvc pull -r s3-remote
dvc push -r minio-remote
...

这样您就可以push/pull 将数据传入/传出特定存储。

但我需要设置我的 DVC 以使用 min.io 作为 AWS.S3 和 DVC 之间的集线器

还有其他可能的方式,我认为可以组织这个。这确实取决于您对DVC mc-S3 pull 的期望语义。如果-r 还不够,请告诉我们并澄清问题——这将对我们有所帮助。

【讨论】:

  • dvc pull -r X/Y etc 绰绰有余,但我仍然不明白一件事。因此,如果我有一台服务器,那么我会按照您提到的那样添加 min.io,这很好,但是对于我来说要通过 min.io 访问我的 S3 存储桶,我必须为 min.io 安装客户端,将其设置为添加 s3 存储,然后我可以将它与“mc cp S3/my_bucket/dataset /dataset”之类的命令一起使用,但我不确定如何通过 dvc 来完成它?
  • access my S3 bucket over min.io ... add s3 storage - 你能澄清一下吗?给我一些文档链接,可能我对 Minio 可以做的所有事情都不太熟悉。
  • 所以链接将是问题,因为我找不到它们所以我创建了这个主题。所以我有一个托管在 min.io 上的服务器和托管在 s3 上的服务器。在另一台 PC 上,我有一个可以访问 S3 和我的 min.io 服务器的 min.io 客户端。所以多亏了它,我可以例如做 mc copy s3-server/dataset dataset 所以它从 S3 复制数据集,然后我也可以用 mc copy min-io-server/dataset dataset 为我的 min.io 服务器做这件事。现在,由于我没有其他访问 min.io 服务器和 s3 服务器的权限,我认为可以将 mc 客户端用作 DVC 的集线器。也许现在更清楚了?
  • 谢谢!我想我有一个更好的主意,但我仍然迷失在这个as a hub for DVC 上:( 集线器是什么意思?你能举一些应该/会为你工作的 DVC 命令的例子吗?感觉你正在尝试什么要做的就是让 DVC 使用mc 或其在pullpush 中的配置。DVC 仅依赖 AWS CLI 通用配置并支持常规 S3 env vars 等。
  • 是的,这是我的错误,我尝试使用 DVC 使用 mc 出于某种原因我认为这应该是可能的,但我想它不是,但我仍然遇到 dvc pull -r X/Y 的问题所以我在我的 dvc 中添加了两个存储 X(s3 存储),Y(min.io 存储)。我在文件夹数据集中上传了两个不同的文件夹 X_folder 和 Y_folder 。因此,当我尝试执行 dvc pull -r X 时,我得到了一个文件夹 dataset/X_folder,而当我尝试执行 dvc pull -r Y 时,我将得到一个文件夹 dataset/Y_folder,但我又得到了 X_folder。有没有机会告诉我如何获得它?
猜你喜欢
  • 2021-08-14
  • 2020-09-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-27
  • 1970-01-01
相关资源
最近更新 更多