Запрос размеров объектов базы данных
На этом этапе вы подключитесь к базе данных PostgreSQL и запросите размеры таблицы и ее индекса. Понимание размера объектов вашей базы данных имеет решающее значение для настройки производительности и планирования мощностей.
Сначала откройте терминал. Чтобы подключиться к серверу PostgreSQL от имени пользователя postgres и получить доступ к базе данных mydatabase, выполните следующую команду:
sudo -u postgres psql mydatabase
Вы должны увидеть приглашение psql (mydatabase=#), указывающее на то, что вы подключены к базе данных mydatabase. Все последующие SQL-запросы в этой лабораторной работе должны выполняться в этой оболочке psql, если не указано иное.
Теперь определим размер mytable. Мы будем использовать функции pg_size_pretty и pg_relation_size. pg_relation_size возвращает размер таблицы в байтах, а pg_size_pretty форматирует его в удобочитаемый формат (например, KB, MB).
Выполните следующий SQL-запрос, чтобы получить размер mytable:
SELECT pg_size_pretty(pg_relation_size('mytable'));
Вы должны увидеть вывод, похожий на этот, показывающий дисковое пространство, используемое данными таблицы:
pg_size_pretty
----------------
56 kB
(1 row)
Далее проверьте размер индекса idx_mytable_name, который был создан для столбца name:
SELECT pg_size_pretty(pg_relation_size('idx_mytable_name'));
Вывод покажет пространство, занимаемое индексом:
pg_size_pretty
----------------
48 kB
(1 row)
Наконец, чтобы получить общий размер таблицы, включая все ее индексы, используйте функцию pg_total_relation_size:
SELECT pg_size_pretty(pg_total_relation_size('mytable'));
Этот вывод показывает комбинированный размер таблицы и ее индекса:
pg_size_pretty
----------------
176 kB
(1 row)