java - 如何获取Azure存储中文件、表和队列的所有服务的大小?在JAVA中

标签 java azure azure-storage azure-storage-queues azure-storage-files

尝试获取 azure 存储 blob、文件、队列和表的大小/长度。

我可以通过下面的代码获取 blob 的大小,但无法获取文件、队列和表等其他内容的大小。

for (CloudBlobContainer cloudBlobContainer : cloudBlobContainers) {

                               Iterable<ListBlobItem> blobItems = cloudBlobContainer.listBlobs();

                                   for (ListBlobItem blobItem : blobItems) {
                                        if (blobItem instanceof CloudBlob) {
                                            CloudBlob blob = (CloudBlob) blobItem;
                                            size += blob.getProperties().getLength();
                                            logger.info("Size : "+blob.getProperties().getLength());
                                        }

                                    } 

如果有人可以帮助解决代码片段,我们将不胜感激。

谢谢

最佳答案

不幸的是,没有一种简单的方法可以做到这一点。

对于文件,您可以执行与 blob 相同的操作 - 列出和聚合文件大小。

对于表,需要扫描整个表并一一估计实体大小。 https://blogs.msdn.microsoft.com/avkashchauhan/2011/11/30/how-the-size-of-an-entity-is-caclulated-in-windows-azure-table-storage/

据我了解,这对于队列来说是不可行的。

关于java - 如何获取Azure存储中文件、表和队列的所有服务的大小?在JAVA中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58437866/

相关文章:

java - 在 java gradle android 项目中调用 setContentView 时出现 OOM 问题

azure - 如何将 Azure 函数应用程序的检测关联到 Azure 逻辑应用程序

azure - Databricks - 从文件夹中读取 CSV 文件

python - 当我尝试使用 LockTocken 删除队列消息时,为什么会收到 "The lock supplied is invalid."错误

azure - Windows Azure Blob 存储模拟器文件存储位置

oracle - 数据迁移 - Oracle 到 Azure

java - 如何使用最后一个输入行转发 Hive UDTF 输出

java - Lambda 表达式,如何在自定义方法中将方法作为参数传递

java - Maven 问题 - 依赖关系(未找到类异常)

python - 如何使用Python构建共享访问签名URL?