繁体   English   中英

对于 Azure Blob Storage .NET 客户端,“Microsoft.Azure.Storage.DataMovement”和“Azure.Storage.Blob”有什么区别?

[英]For Azure Blob Storage .NET Client, what is the difference between “Microsoft.Azure.Storage.DataMovement” and “Azure.Storage.Blobs”?

所以我们开始在我们的 ASP.NET Core 3.1 web 应用程序中使用 blob 存储,我注意到有两个 .NET Microsoft 库用于处理 blob 存储上传和操作。

  1. Azure.Storage.Blobs .NET 的存储 Blobs 客户端库:这是两个 repos 中更活跃的一个,在文档中有所提及。
  2. Microsoft.Azure.Storage.DataMovement Microsoft Azure Storage Data Movement Library : Which has a dependency on the older version of Azure.Storage.Blobs and have this vague description The Microsoft Azure Storage Data Movement Library designed for high-performance uploading, downloading and copying Azure Storage Blob and File

唯一明显的区别是Microsoft.Azure.Storage.DataMovement支持 .NET 4.5.2 和一些调用的一些区别。

我想知道这两个库之间的区别是什么?

除了普通的Azure.Storage.Blobs客户端之外, Microsoft.Azure.Storage.DataMovement还提供哪些功能?

最后,如果将项目从Azure.Storage.Blobs切换到Microsoft.Azure.Storage.DataMovement可以提高 blob 上传的性能。

正如 GitHub 描述中所说, DataMovement package 主要代表您也可以使用命令行工具AzCopy执行的所有操作。

此库基于为AzCopy提供支持的核心数据移动框架。

您可以在此处找到一些常见DataMovement用例的示例: https://docs.microsoft.com/en-us/azure/storage/common/storage-use-data-movement-library

对我来说,最常见的用例是在 blob 存储帐户之间传输文件或将文件上传到帐户,而无需通过您的客户端进行传输。 基础Azure.Storage.Blobs库不支持任何这些。 还有更多功能,但这些是我的亮点。

因此,在您的情况下,如果您的数据可以直接传输到存储帐户而无需通过您的 web 应用程序,那么绝对可以提高上传速度。 对于其他情况,它可能仍然比您当前正在执行的操作要快一些,但是根据给定的信息很难说。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM