【问题标题】:Getting CloudBlobDirectory size without doing a listBlob在不执行 listBlob 的情况下获取 CloudBlobDirectory 大小
【发布时间】:2015-10-29 06:56:52
【问题描述】:

我正在尝试查看是否有更有效的方法来获取 CloudBlobDirectory 的大小(包括其中的 CloudBlob)。我看到 listBlobs() 以及每个 blob 的“blob.downloadAttributes()”需要 10-15 分钟才能处理约 10,000 个 blob。这就是我目前正在做的事情:

        for (ListBlobItem blobItem : azAccount.getContainer().listBlobs(path)) {
            if (blobItem instanceof CloudBlob) {
                CloudBlob blob = (CloudBlob) blobItem;
                blob.downloadAttributes();
                totalSize += blob.getProperties().getLength();
            }
        }

有更快的方法吗?

【问题讨论】:

    标签: azure azure-blob-storage


    【解决方案1】:

    您不需要执行额外的 downloadAttributes。如果您只是删除该行,我想您会看到它有效。 ListBlobs 为其返回的 blob 填充内容长度属性。

    【讨论】:

    • 是的,艾米丽是对的。而且我认为没有更有效的方法来获取 CloudBlobDirectory/CloudBlobContainer 的大小。 (请注意,CloudBlobDirectory 是一个实际上并不存在的虚拟概念。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-02-03
    • 2019-06-26
    • 2015-10-19
    • 1970-01-01
    • 2011-10-18
    • 2016-11-27
    • 1970-01-01
    相关资源
    最近更新 更多