计算行的存储大小?

sim*_*imo 1 postgresql

在多租户只有一个DB中,使用一列来隔离客户数据,即customer_id。

是否可以在所有表​​中获取某个客户的存储大小?

a_h*_*ame 6

您可以使用pg_column_size()获取完整行的大小,而不仅仅是单列。

因此,要查找特定客户的所有行的大小,您可以使用以下内容:

select sum(pg_column_size(t) + 24) 
from the_table t
where customer_id = 42;
Run Code Online (Sandbox Code Playgroud)

(24 是表中每行的存储开销)

您需要对所有感兴趣的表执行此操作。

但是,这不包括索引中这些行的大小。


归档时间:

查看次数:

6203 次

最近记录:

9 年,1 月 前