本文总结3种常见的方法,指导开发者如何查看maxcompute数据表的存储空间。
方法1:利用dataworks数据地图功能
公有云maxcompute的元数据存储在元数据仓内部,运维人员可以能够通过maxcompute元仓获取到数据表的元数据信息。作为普通开发者可以通过dataworks的“数据地图”模块,进入到“数据总览”菜单栏获取到元数据信息。如下图所示:
数据总览菜单栏只能看到排名靠前的数据表存储空间大小,如果需要查看具体某张表的信息,需要进入到“全部数据”菜单栏进行搜索:
点击表名,还能看到数据表更加详细的信息。
方法2:通过desc 数据表查看存储空间
通过desc 数据表,可以查看到数据表的一些元数据信息,其中就包括数据表的存储空间大小。如下图所示:
方法3:sql语句计算数据表存储空间
通过书写sql语句:
具体计算的sql可以参考截图里面的sql语句,上述sql中,nvl函数里面的BRADNO、SHOPNO等字段表示的是数据表ods_sma_sa_last15_2020new 的字段,需要将数据表的全部字段都列举出来。
方法3实际上是利用lengthb函数获取到数据表的每个字段的byte大小,然后将所有字段相加得到每一行数据的字节大小。对每一行的字节大小再进行求和,就可以得到整个数据表的存储大小。因此,该方法计算得到的total_mb,实际上是数据表的实际逻辑存储空间大小(未经压缩、未经处理的逻辑存储空间大小)。