You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查询Data Lake Analytics/USQL数据库的大小?

查询Azure Data Lake Analytics/USQL数据库大小的方法

好问题!确实Azure Data Lake Analytics(ADLA)的USQL数据库没法直接在门户或者默认目录视图里查看总大小,不过我们可以通过编写USQL查询来计算出数据库的实际存储占用,下面是两种实用的方法:

方法1:计算内部表总大小(最常用)

USQL提供了系统视图sys.table_storage,它包含了数据库中所有内部表的存储大小信息。你可以通过求和这些表的大小来得到整个数据库的总大小,具体查询语句如下:

USE DATABASE YourDatabaseName; -- 替换成你的数据库名称

SELECT 
    SUM(storage_size) AS TotalBytes,
    SUM(storage_size)/1024 AS TotalKB,
    SUM(storage_size)/1024/1024 AS TotalMB,
    SUM(storage_size)/1024/1024/1024 AS TotalGB
FROM 
    sys.table_storage;

说明:

  • storage_size字段以字节为单位存储每个表的占用空间,我们通过换算得到更易读的KB/MB/GB单位;
  • 这个视图会自动汇总分区表的所有分区大小,无需额外处理分区数据;
  • 执行查询前记得替换YourDatabaseName为你要查询的目标数据库名。

方法2:包含外部表的大小(可选)

如果你的数据库中使用了外部表,上面的方法不会统计外部表的存储(因为外部表的数据实际存储在Azure Data Lake Storage或Blob Storage中,不属于USQL数据库本身的管理范围)。如果需要统计这部分大小,你需要直接在对应的存储账户中查看容器或文件夹的占用空间,不过这部分不属于USQL数据库的“内部大小”范畴,通常按需查看即可。

注意事项:

  • 对于包含大量表的大型数据库,这个查询可能需要几秒到几分钟的时间,请耐心等待;
  • 如果你的ADLA账户有多个数据库,需要切换到对应数据库执行查询(就是上面的USE DATABASE语句)。

内容的提问来源于stack exchange,提问作者user7232539

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:35:19