【问题标题】:Differences between Azure Block Blob and Page Blob?Azure 块 Blob 和页面 Blob 之间的区别?
【发布时间】:2017-01-27 04:05:51
【问题描述】:

当我最近开始与Windows Azure 混在一起时,我想到了一种情况,即在Block BlobPage Blob 之间选择哪个。我目前正在将一些文本、csv 或 dat 文件上传到 blob 存储,然后使用我的 C# 程序为它执行MapReduce 程序。是的,我通过了article

但无法从他们那里得到明确的想法。简而言之,Block Blob vs Page Blob。任何帮助将不胜感激。

【问题讨论】:

    标签: azure azure-storage azure-blob-storage azure-hdinsight


    【解决方案1】:

    这些差异在 msdn here 上有很好的记录。 TL;DR:

    • blob 用于您的离散存储对象,例如 jpg、日志文件等,您通常会在本地操作系统中将其视为文件。最大限度。大小 200GB 4.77TB。仅限常规(非高级)存储。
    • 页面 blob 用于随机读/写存储,例如 VHD(实际上,页面 blob 用于 Azure 虚拟机磁盘)。最大限度。大小 8TB。常规存储和高级存储均支持。

    注意:高级页面 blob 具有特定的大小(与常规页面 blob 不同,它可以是最大 8TB 的任何大小)。

    • 32GB
    • 64GB
    • 128GB
    • 512GB
    • 1024GB
    • 2048GB
    • 4096GB

    高级存储提供有保证的 IOPS 和吞吐量,具体取决于所选的页 blob 大小(从 120 IOPS+25MB/s @ 32GB 到 7500 IOPS+250MB/s @ 2048GB 和 4096GB)。有关 IOPS+吞吐量详细信息的具体细节记录在 here

    【讨论】:

    • 另一个小澄清@David,我如何查看 Blob 容器中的文件?我尝试使用 Azure Explorer,但找不到查看其中文件的方法。是的,我可以看到内容,但看不到文件。
    • @Kulasangar 请提出一个单独的问题,而不是作为评论,因为它与原始问题(和答案)无关。
    • 页面 blob 不限于高级存储。我知道这不是您所说的必然,但您的回答很容易被这样解释。
    • @DavidMakogon 谢谢你的 tl;dr。我阅读了整个链接,但其中没有任何地方说明你所说的关于 blob 类型的东西可以被视为类似于文件系统上的对象的离散对象。整篇文章都致力于描述 Azure 如何管理块 blob 类型,这很好,但与 Azure 的大多数事情一样,它这样做并没有像您所做的那样真正识别简单的常见用例。
    【解决方案2】:

    Davids answer 指出页和块 blob 之间的区别。但是也有追加 Blob。简而言之:

    • 块 Blob:对于使用随机读写操作的大型对象。 e. G。图片
    • Page Blob:针对随机读写操作进行了优化。 e. G。 VHD
    • 追加 Blob:针对追加操作进行了优化。 e. G。日志

    延伸阅读:Understanding block blobs, append blobs, and page blobs

    【讨论】:

      【解决方案3】:

      阻止 blob 块 blob 用于保存大小高达约 5 TB(50,000 个 100 MB 的块)的文本或二进制文件。块 blob 的主要用例是存储从头到尾读取的文件,例如用于网站的媒体文件或图像文件。它们被命名为block blobs,因为大于 100 MB 的文件必须作为小块上传,然后合并(或提交)到最终的 blob。

      页面 blob
      页 blob 用于保存最大 8 TB 的随机访问文件。页 blob 主要用作 VHD 的后备存储,用于为 Azure 虚拟机 (Azure VM) 提供持久磁盘。它们被命名为page blobs,因为它们提供对 512 字节页面的随机读/写访问。

      附加 blob
      追加 blob 由类似于块 blob 的块组成,但它们针对追加操作进行了优化。这些经常用于将来自一个或多个来源的信息记录到同一个 blob 中。例如,您可能会将所有跟踪日志记录写入在多个 VM 上运行的应用程序的同一个附加 blob。单个附加 blob 最大可达 195 GB

      参考: https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/Understanding-Block-Blobs--Append-Blobs--and-Page-Blobs

      https://docs.microsoft.com/en-us/learn/modules/connect-an-app-to-azure-storage/2-explore-azure-storage

      【讨论】:

        【解决方案4】:

        块 blob 可让您高效地上传大型 blob。块 blob 由块组成,每个块都由块 ID 标识。您可以通过编写一组块并通过其块 ID 提交它们来创建或修改块 blob。每个块的大小可以不同,最大为 100 MB(使用 2016 年 5 月 31 日之前的 REST 版本的请求为 4 MB),一个块 blob 最多可包含 50,000 个块。因此,块 blob 的最大大小略大于 4.75 TB(100 MB X 50,000 个块)。对于 2016 年 5 月 31 日之前的 REST 版本,块 blob 的最大大小略高于 195 GB(4 MB X 50,000 个块)。

        页面 blob 是针对随机读写操作优化的 512 字节页面的集合。若要创建页 Blob,请初始化页 Blob 并指定页 Blob 将增长的最大大小。要添加或更新页 Blob 的内容,您可以通过指定偏移量和与 512 字节页边界对齐的范围来写入一个或多个页。对页 Blob 的写入只能覆盖一页、一些页或最多 4 MB 的页 Blob。对页 blob 的写入发生在原地并立即提交到 blob。页 blob 的最大大小为 1 TB。

        参考:https://docs.microsoft.com/en-us/rest/api/storageservices/fileservices/Understanding-Block-Blobs--Append-Blobs--and-Page-Blobs

        【讨论】:

          【解决方案5】:

          来自微软 块 blob 包含可帮助您通过网络管理大型文件的功能。使用块 blob,您可以并行上传多个块以减少上传时间。每个区块都可以包含一个 MD5 哈希来验证传输,因此您可以跟踪上传进度并根据需要重新发送区块。

          什么时候使用

          Azure 文件 提供 SMB 接口、客户端库和 REST 接口,允许从任何地方访问存储的文件。您希望将应用程序“提升并转移”到已使用本机文件系统 API 在其与 Azure 中运行的其他应用程序之间共享数据的云中。

          Azure Blob 提供客户端库和 REST 接口,允许在块 Blob 中大规模存储和访问非结构化数据。

          Azure Disks 提供客户端库和 REST 接口,允许从附加的虚拟硬盘永久存储和访问数据。您希望提升和转移使用本机文件系统 API 来读取数据并将数据写入永久性磁盘的应用程序。

          【讨论】:

            【解决方案6】:

            从我的角度来看,另一个答案是,

            块 Blob​

            • 由块列表定义
            • 主要用于存储“对象”​
            • 50K 块,每个块高达 100 MB = 4.75 TB ​
            • 大部分对象存储场景文档、图片、视频等

            追加 Blob​

            • 为 Azure 数据湖添加
            • 一次操作最多可添加 4 MB 的块​
            • 使用量显着增加 – 云日志记录、物联网数据、分布式系统同步等​

            页面 Blob​

            • 针对随机读写操作优化的 512 字节页面的集合
            • 页面对齐的随机读写 IaaS 磁盘、事件中心、块级备份

            【讨论】:

            • 块 Blob 和块级存储是两个完全不同的东西。正确的?一个用于小型存储,另一个用于磁盘。只是想得到你的确认。
            猜你喜欢
            • 2022-10-24
            • 1970-01-01
            • 2015-03-18
            • 1970-01-01
            • 2018-08-23
            • 2021-11-06
            • 2019-07-01
            • 2020-11-19
            • 2020-03-29
            相关资源
            最近更新 更多