我知道有几种方法可以将容器从一个订阅存储帐户复制到另一个存储帐户。
- 使用 azcopy 工具,但我无权访问 SAS 来生成并用于上述事件
- 通过存储资源管理器,无法手动复制,因为有 100 个容器。
- 尝试通过 ADF,在文件路径的浏览选项中找不到多个容器选项:
任何人都可以帮助我了解如何选择多个容器或选择存储帐户中的所有容器并使用 ADF 或任何其他技术复制到另一个订阅存储帐户吗?
注意:
- 我发现类似的question在 SO 中,但相同的 UI 不在我的 ADF 管道中,并且没有完成该过程的完整步骤。
- 容器内的文件为 Excel 格式
最佳答案
如果您有多个容器要复制,您可以添加多个复制事件或利用动态内容和参数来迭代容器。
定义管道参数:
定义将保存有关源容器和目标容器信息的管道参数。例如,您可以创建诸如 SourceContainerName 和 DestinationContainerName
之类的参数。在复制事件中使用动态内容:
在复制事件中,使用引用管道参数的动态内容指定源容器和目标容器。例如,您可以使用
@pipeline().parameters.SourceContainerName
表示源容器,
@pipeline().parameters.DestinationContainerName
表示目标容器。
遍历容器:
将 ForEach 事件添加到管道。配置 ForEach 事件以迭代容器名称列表或用于动态获取容器名称的任何其他合适的机制。例如,您可以使用数组变量或从 SQL 表等数据源检索容器名称。
参数中设置项目:
在 ForEach 事件内,为每次迭代设置 SourceContainerName 和 DestinationContainerName 参数的值。您可以使用动态内容设置参数值,例如 @item()
或 @{item().ContainerName}。
item() 函数或 item ().ContainerName
表示当前正在迭代的容器。
关于azure - 无法将多个容器从一个订阅存储帐户复制到另一个订阅另一个存储帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76586353/