PostgreSQL: использование диска колонки - PullRequest
0 голосов
/ 24 февраля 2020

В моей базе данных есть большая таблица, но в каждом столбце много пустых полей, и я хотел бы знать, сколько использует каждый столбец.

Есть ли способ узнать сколько дискового пространства использует каждый столбец таблицы?

Ответы [ 2 ]

1 голос
/ 24 февраля 2020

Как указано в документации , значения NULL указываются в нулевом битовом массиве каждого кортежа, который всегда присутствует, если в таблице есть столбцы, допускающие значения NULL.

значение NULL не требует дополнительного места на диске.

Если вы разрабатываете таблицы с очень большим количеством столбцов, переосмыслите свой дизайн.

1 голос
/ 24 февраля 2020

Попробуйте использовать pg_column_size(), он вернет размер столбца в байтах:

SELECT sum(pg_column_size(column)) FROM yourtable
...