Azure Blob 存储

Azure Blob 存储是用于大量存储非结构化数据(例如文本数据或二进制数据)的 Microsoft 应用程序存储解决方案。Azure Blob 存储适用于存储任何类型的文本或二进制数据,例如:

  • 图片和视频文件
  • Web 应用程序生成的日志文件
  • 传感器生成的数据流
  • 静态网站的内容(例如 HTML 和 JavaScript 文件)

一、Azure Blob 存储连接

1、获取 Azure Blob 存储连接字符串

要在代码中访问 Azure Blob 存储,需要使用连接字符串。可以通过以下步骤来获取连接字符串:

  1. 在 Azure 门户中,转到存储帐户。
  2. 单击“访问密钥”,然后复制“连接字符串”。

using Microsoft.WindowsAzure.Storage;
using Microsoft.WindowsAzure.Storage.Blob;
CloudStorageAccount storageAccount = CloudStorageAccount.Parse("连接字符串");

2、创建 Blob 客户端对象

要访问 Blob 存储,需要使用 CloudBlobClient 对象。可以使用以下代码创建 CloudBlobClient 对象:


CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

3、获取 Blob 容器引用

Blob 容器是 Blob 存储中的逻辑容器,可用于组织 Blob。可以使用以下代码获取 Blob 容器的引用:


CloudBlobContainer container = blobClient.GetContainerReference("mycontainer");

二、Azure Blob 存储操作

1、上传 Blob

可以使用 CloudBlockBlob 对象的 UploadFromStreamAsync 方法将文件上传到 Blob 存储中:


CloudBlockBlob blob = container.GetBlockBlobReference("myblob");
using (var stream = new MemoryStream(Encoding.UTF8.GetBytes("blob 理论大小")))
{
    await blob.UploadFromStreamAsync(stream);
}

2、下载 Blob

可以使用 CloudBlockBlob 对象的 DownloadToStreamAsync 方法将文件从 Blob 存储下载到流中:


CloudBlockBlob blob = container.GetBlockBlobReference("myblob");
using (var stream = new MemoryStream())
{
    await blob.DownloadToStreamAsync(stream);
    var content = Encoding.UTF8.GetString(stream.ToArray());
}

3、删除 Blob

可以使用 CloudBlockBlob 对象的 DeleteIfExistsAsync 方法删除 Blob:


CloudBlockBlob blob = container.GetBlockBlobReference("myblob");
await blob.DeleteIfExistsAsync();

4、列举 Blob

可以使用 CloudBlobContainer 对象的 ListBlobsSegmentedAsync 方法列举 Blob 容器中的所有 Blob:


BlobContinuationToken continuationToken = null;
do
{
    var resultSegment = await container.ListBlobsSegmentedAsync(null, continuationToken);
    continuationToken = resultSegment.ContinuationToken;
    foreach (IListBlobItem item in resultSegment.Results)
    {
        if (item is CloudBlockBlob blob)
        {
            // Process the block blob.
        }
    }
} while (continuationToken != null);

三、Azure Blob 存储时长

1、上传 Blob 时间

上传 Blob 的时间取决于文件的大小和上传的带宽。

2、下载 Blob 时间

下载 Blob 的时间取决于 Blob 的大小和下载的带宽。

3、删除 Blob 时间

删除 Blob 的时间取决于容器中 Blob 的数量和删除操作的时间。

原创文章,作者:XLABA,如若转载,请注明出处:https://www.506064.com/n/315879.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
XLABAXLABA
上一篇 2025-01-09 12:14
下一篇 2025-01-09 12:14

相关推荐

  • 探究Blob链接

    一、什么是Blob链接 Blob链接是一种基于URL.createObjectURL(blob)生成的链接,可以将文件或数据的内容转换为URL的形式,方便进行下载或者展示。Blob…

    编程 2025-04-20
  • Blob数据详解

    一、Blob数据类型 Blob数据类型是一种二进制大型对象,是用来存储大型二进制数据的容器。在JavaScript中,Blob对象表示了不可变的原始数据的类文件对象。 Blob对象…

    编程 2025-04-02
  • Blob数据详解

    一、Blob数据类型 Blob数据类型是一种二进制大型对象,是用来存储大型二进制数据的容器。在JavaScript中,Blob对象表示了不可变的原始数据的类文件对象。 Blob对象…

    编程 2025-04-02
  • Blob MySQL详解

    一、什么是Blob MySQL Blob MySQL是指在MySQL数据库中使用二进制大对象(Binary Large Object)数据类型存储数据的方式。Blob类型可以用来存…

    编程 2025-03-12
  • python读取blob数据,python blob

    本文目录一览: 1、python如何保存从oracle数据库中读取的BLOB文件 2、python往mysql的blob字段写入二进制数据,怎么做 3、怎么用Python脚本怎么从…

    编程 2025-01-07
  • Blob下载详解

    一、blob下载是什么意思 Blob(Binary Large Object)是一种可以保存大量二进制数据的数据类型,包括图像、音频、视频、文档等。Blob下载就是从服务器获取Bl…

    编程 2025-01-02
  • 深入了解Blob视频

    一、Blob视频是什么? Blob是一个JavaScript对象,用于存储二进制数据。Blob的全称是Binary Large Object,翻译过来就是二进制大对象。Blob视频…

    编程 2024-12-31
  • java批量下载,java批量下载blob视频

    本文目录一览: 1、java完成批量下载时,压缩文件怎么命名? 2、Java 批量大文件上传下载如何实现? 3、java ftp批量下载异常 4、JAVA 批量下载.zip jav…

    编程 2024-12-27
  • Blob文件下载指南

    一、Blob文件下载概述 在 Web 开发工作中,Blob 对象是处理二进制数据的重要工具,它与 File 对象类似,表示一个不可改变的、原始数据的类文件对象。Blob 常用于文件…

    编程 2024-12-22
  • –hex-blob详解

    一、–hex-blob的介绍 –hex-blob是MySQL数据库中的一个命令行参数,可以将二进制文件的内容转换为HEX格式并进行输出。这个参数主要用于在调…

    编程 2024-12-16

发表回复

登录后才能评论