powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Мониторинг производительности
2 сообщений из 2, страница 1 из 1
Мониторинг производительности
    #32554621
Wireless
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто какие выборки делает из pg_statio_user_indexes, pg_statio_user_tables .

Я для себя, например, иногда делаю выборку

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
 -- показывает частоиспользуемые индексы, в порядке убывания
 
 -- эффективности (отношение hit/read)
 

select indexrelname, idx_blks_read, idx_blks_hit,
        (idx_blks_hit::numeric/idx_blks_read)::numeric( 10 , 3 ) as K

from pg_statio_user_indexes

where idx_blks_read> 1000 

order by  4  desc;

В представлении pg_statio_user_tables оч.много столбцов...
В документации есть только это:
pgsql_docspg_statio_user_tables
For each table in the current database, the total
number of disk blocks read from that table, the number of buffer hits,
the numbers of disk blocks read and buffer hits in all the indexes of
that table, the numbers of disk blocks read and buffer hits from the
table's auxiliary TOAST table (if any), and the numbers of disk blocks
read and buffer hits for the TOAST table's index.

Собственно, что есть heap_blks_read / heap_blks_hit ,
idx_blks_read/idx_blks_hit,
toast_blks_read/toast_blks_hit,
tidx_blks_read/tidx_blks_hit ?

TOAST насколько я помню используется в PG для хранения
"больших" столбцов в отдельной таблице. Как я понимаю,
в большинстве случаев нет смысла смотреть отдельно статистику
по TOAST и не-TOAST подтаблицам, так??? Если нет, то нужно
будет просто просуммировать данные из pg_statio_user_tables
соотв-ие toast+не-toast?
...
Рейтинг: 0 / 0
Мониторинг производительности
    #32554638
Wireless
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
.... В продолжение темы производительности и TOAST в частности.

В PG в одной из последних версий (не помню в 7.2 или 7.3) появилась
возможность явно указывать где будут храниться данные - в основной
таблице или в toast:
Код: plaintext
ALTER TABLE ALTER column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }

Описание SET STORAGE
This form sets the storage mode for a column. This controls
whether this column is held inline or in a supplementary table,
and whether the data should be compressed or not. PLAIN must be
used for fixed-length values such as integer and is inline,
uncompressed. MAIN is for inline, compressible data. EXTERNAL
is for external, uncompressed data, and EXTENDED is for
external, compressed data. EXTENDED is the default for all data
types that support it. The use of EXTERNAL will, for example,
make substring operations on a text column faster, at the
penalty of increased storage space.

Есть у кого-нибудь реальный опыт изменения формата хранения?
Что означает компрессия, кто-нибудь пробовал ее изменять?
Вообще, насколько сильно SET STORAGE может повлиять на производительность (интересует в первую очередь практический опыт) .
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Мониторинг производительности
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]