26.4. ÐÑÑлеживание вÑполнениÑ
Ð Postgres Pro имееÑÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑÑ Ð¾ÑÑлеживаÑÑ Ð²Ñполнение опÑеделÑннÑÑ
команд. РнаÑÑоÑÑее вÑÐµÐ¼Ñ Ñакое оÑÑлеживание поддеÑживаеÑÑÑ ÑолÑко Ð´Ð»Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´ CREATE INDEX, VACUUM и CLUSTER. РбÑдÑÑем ÑÑа поддеÑжка Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ ÑаÑÑиÑена.
26.4.1. ÐÑÑлеживание вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ CREATE INDEX
Ðо вÑÐµÐ¼Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ CREATE INDEX или REINDEX пÑедÑÑавление pg_stat_progress_create_index бÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð¿Ð¾ одной ÑÑÑоке Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ обÑлÑживаÑÑего пÑоÑеÑÑа, ÑоздаÑÑего индекÑÑ Ð² ÑÑÐ¾Ñ Ð¼Ð¾Ð¼ÐµÐ½Ñ. ТаблиÑÑ Ð½Ð¸Ð¶Ðµ показÑваÑÑ, ÐºÐ°ÐºÐ°Ñ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð±ÑÐ´ÐµÑ Ð¾ÑÑлеживаÑÑÑÑ, и поÑÑнÑÑÑ, как ÐµÑ Ð¸Ð½ÑеÑпÑеÑиÑоваÑÑ.
ТаблиÑа 26.22. ÐÑедÑÑавление pg_stat_progress_create_index
| СÑÐ¾Ð»Ð±ÐµÑ | Тип | ÐпиÑание |
|---|---|---|
pid | integer | ÐденÑиÑикаÑÐ¾Ñ (PID) обÑлÑживаÑÑего пÑоÑеÑÑа |
datid | oid | OID Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
datname | name | ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
relid | oid | OID ÑаблиÑÑ, в коÑоÑой ÑоздаÑÑÑÑ Ð¸Ð½Ð´ÐµÐºÑ. |
index_relid | oid | OID Ñоздаваемого или пеÑеÑÑÑаиваемого индекÑа. ÐÑи вÑполнении CREATE INDEX в неблокиÑÑÑÑем Ñежиме ÑодеÑÐ¶Ð¸Ñ 0. |
command | text | ÐÑполнÑÐµÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°: CREATE INDEX, CREATE INDEX CONCURRENTLY, REINDEX или REINDEX CONCURRENTLY. |
phase | text | ТекÑÑÐ°Ñ Ñаза ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа. См. ТаблиÑÑ 26.23. |
lockers_total | bigint | ÐбÑее ÑиÑло пÑоÑеÑÑов, поÑÑебовавÑÐ¸Ñ Ð¾Ð¶Ð¸Ð´Ð°Ð½Ð¸Ñ, еÑли ÑаковÑе имеÑÑÑÑ. |
lockers_done | bigint | ЧиÑло пÑоÑеÑÑов, ожидание коÑоÑÑÑ Ñже завеÑÑено. |
current_locker_pid | bigint | ÐденÑиÑикаÑÐ¾Ñ Ð¿ÑоÑеÑÑа, ÑдеÑживаÑÑего конÑликÑÑÑÑÑÑ Ð±Ð»Ð¾ÐºÐ¸ÑÐ¾Ð²ÐºÑ Ð² даннÑй моменÑ. |
blocks_total | bigint | ÐбÑее ÑиÑло блоков, коÑоÑÑе Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¾Ð±ÑабоÑÐ°Ð½Ñ Ð² ÑекÑÑей Ñазе. |
blocks_done | bigint | ЧиÑло блоков, Ñже обÑабоÑаннÑÑ Ð² ÑекÑÑей Ñазе. |
tuples_total | bigint | ÐбÑее ÑиÑло коÑÑежей, коÑоÑÑе Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ð¾Ð±ÑабоÑÐ°Ð½Ñ Ð² ÑекÑÑей Ñазе. |
tuples_done | bigint | ЧиÑло коÑÑежей, Ñже обÑабоÑаннÑÑ Ð² ÑекÑÑей Ñазе. |
partitions_total | bigint | ÐÑи Ñоздании индекÑа в ÑекÑиониÑованной ÑаблиÑе ÑÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ ÑодеÑÐ¶Ð¸Ñ Ð¾Ð±Ñее ÑиÑло ÑекÑий, в коÑоÑÑÑ ÑоздаÑÑÑÑ Ð¸Ð½Ð´ÐµÐºÑ. |
partitions_done | bigint | ÐÑи Ñоздании индекÑа в ÑекÑиониÑованной ÑаблиÑе ÑÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ ÑодеÑÐ¶Ð¸Ñ ÑиÑло ÑекÑий, в коÑоÑÑÑ Ð¸Ð½Ð´ÐµÐºÑ Ñже поÑÑÑоен. |
ТаблиÑа 26.23. Ð¤Ð°Ð·Ñ CREATE INDEX
| Фаза | ÐпиÑание |
|---|---|
initializing | ÐниÑиализаÑÐ¸Ñ â пÑоÑедÑÑа CREATE INDEX или REINDEX подгоÑавливаеÑÑÑ Ðº ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа. ÐÑа Ñаза должна бÑÑÑ Ð¾ÑÐµÐ½Ñ Ð±ÑÑÑÑой. |
waiting for writers before build | Ðжидание оконÑÐ°Ð½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñи пеÑед поÑÑÑоением â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY или REINDEX CONCURRENTLY Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑанзакÑий, коÑоÑÑе ÑдеÑживаÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовки запиÑи и могÑÑ ÑиÑаÑÑ ÑаблиÑÑ. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
lockers_total, lockers_done и current_locker_pid. |
building index | ÐоÑÑÑоение индекÑа â код, ÑеализÑÑÑий меÑод доÑÑÑпа, ÑÑÑÐ¾Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑ. Ð ÑÑой Ñазе меÑÐ¾Ð´Ñ Ð´Ð¾ÑÑÑпа, поддеÑживаÑÑие оÑÑлеживание пÑоÑеÑÑа, пеÑедаÑÑ Ñвои даннÑе о ÑекÑÑем ÑоÑÑоÑнии, и в ÑÑом ÑÑолбÑе видна внÑÑÑеннÑÑ Ñаза. ÐбÑÑно Ñ
од поÑÑÑÐ¾ÐµÐ½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
blocks_total и blocks_done, но Ñакже могÑÑ Ð¼ÐµÐ½ÑÑÑÑÑ Ð¸ ÑÑолбÑÑ tuples_total и tuples_done. |
waiting for writers before validation | Ðжидание оконÑÐ°Ð½Ð¸Ñ Ð·Ð°Ð¿Ð¸Ñи пеÑед пÑовеÑкой â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY или REINDEX CONCURRENTLY Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑанзакÑий, коÑоÑÑе ÑдеÑживаÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовки запиÑи и могÑÑ Ð·Ð°Ð¿Ð¸ÑÑваÑÑ Ð² ÑаблиÑÑ. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
lockers_total, lockers_done и current_locker_pid. |
index validation: scanning index | ÐÑовеÑка индекÑа: ÑканиÑование â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY ÑканиÑÑÐµÑ Ð¸Ð½Ð´ÐµÐºÑ, наÑ
Ð¾Ð´Ñ ÐºÐ¾ÑÑежи, ÑÑебÑÑÑие пÑовеÑки. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
blocks_total (показÑваÑÑем обÑий ÑÐ°Ð·Ð¼ÐµÑ Ð¸Ð½Ð´ÐµÐºÑа) и blocks_done. |
index validation: sorting tuples | ÐÑовеÑка индекÑа: ÑоÑÑиÑовка коÑÑежей â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY ÑоÑÑиÑÑÐµÑ ÑезÑлÑÑÐ°Ñ ÑÐ°Ð·Ñ ÑканиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¸Ð½Ð´ÐµÐºÑа. |
index validation: scanning table | ÐÑовеÑка индекÑа: ÑканиÑование ÑаблиÑÑ â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY ÑканиÑÑÐµÑ ÑаблиÑÑ, ÑÑÐ¾Ð±Ñ Ð¿ÑовеÑиÑÑ ÐºÐ¾ÑÑежи индекÑа, ÑобÑаннÑе в пÑедÑдÑÑиÑ
двÑÑ
ÑазаÑ
. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
blocks_total (показÑваÑÑем обÑий ÑÐ°Ð·Ð¼ÐµÑ ÑаблиÑÑ) и blocks_done. |
waiting for old snapshots | Ðжидание ÑÑаÑÑÑ
Ñнимков â пÑоÑедÑÑа CREATE INDEX CONCURRENTLY или REINDEX CONCURRENTLY Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ Ð¾ÑÐ²Ð¾Ð±Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñнимков Ñеми ÑÑанзакÑиÑми, коÑоÑÑе могÑÑ Ð²Ð¸Ð´ÐµÑÑ ÑодеÑжимое ÑаблиÑÑ. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
lockers_total, lockers_done и current_locker_pid. |
waiting for readers before marking dead | Ðжидание завеÑÑÐµÐ½Ð¸Ñ ÑÑÐµÐ½Ð¸Ñ Ð¿ÐµÑед оÑклÑÑением ÑÑаÑого индекÑа â пÑоÑедÑÑа REINDEX CONCURRENTLY Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑанзакÑий, коÑоÑÑе ÑдеÑживаÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовки ÑÑениÑ, пÑежде Ñем помеÑиÑÑ ÑÑаÑÑй Ð¸Ð½Ð´ÐµÐºÑ ÐºÐ°Ðº неÑабоÑий. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
lockers_total, lockers_done и current_locker_pid. |
waiting for readers before dropping | Ðжидание завеÑÑÐµÐ½Ð¸Ñ ÑÑÐµÐ½Ð¸Ñ Ð¿ÐµÑед Ñдалением ÑÑаÑого индекÑа â пÑоÑедÑÑа REINDEX CONCURRENTLY Ð¾Ð¶Ð¸Ð´Ð°ÐµÑ Ð·Ð°Ð²ÐµÑÑÐµÐ½Ð¸Ñ ÑÑанзакÑий, коÑоÑÑе ÑдеÑживаÑÑ Ð±Ð»Ð¾ÐºÐ¸Ñовки ÑÑениÑ, пÑежде Ñем ÑдалиÑÑ ÑÑаÑÑй индекÑ. ÐÑа Ñаза пÑопÑÑкаеÑÑÑ Ð¿Ñи вÑполнении опеÑаÑии в неблокиÑÑÑÑем Ñежиме. ÐÑполнение пÑоÑедÑÑÑ Ð² ÑÑой Ñазе оÑÑажаеÑÑÑ Ð² ÑÑолбÑаÑ
lockers_total, lockers_done и current_locker_pid. |
26.4.2. ÐÑÑлеживание вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ VACUUM
РпÑоÑеÑÑе вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ VACUUM пÑедÑÑавление pg_stat_progress_vacuum бÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð¿Ð¾ одной ÑÑÑоке Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ обÑлÑживаÑÑего пÑоÑеÑÑа (вклÑÑÐ°Ñ ÑабоÑие пÑоÑеÑÑÑ Ð°Ð²ÑооÑиÑÑки), пÑоизводÑÑего оÑиÑÑÐºÑ Ð² даннÑй моменÑ. ТаблиÑÑ Ð½Ð¸Ð¶Ðµ показÑваÑÑ, ÐºÐ°ÐºÐ°Ñ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð±ÑÐ´ÐµÑ Ð¾ÑÑлеживаÑÑÑÑ, и поÑÑнÑÑÑ, как ÐµÑ Ð¸Ð½ÑеÑпÑеÑиÑоваÑÑ. ÐÑполнение команд VACUUM FULL оÑÑлеживаеÑÑÑ ÑеÑез pg_stat_progress_cluster, Ñак как и VACUUM FULL, и CLUSTER пеÑезапиÑÑваÑÑ ÑаблиÑÑ, Ñогда как обÑÑÐ½Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° VACUUM модиÑиÑиÑÑÐµÑ ÐµÑ ÑамÑ. См. ÐодÑаздел 26.4.3.
ТаблиÑа 26.24. ÐÑедÑÑавление pg_stat_progress_vacuum
| СÑÐ¾Ð»Ð±ÐµÑ | Тип | ÐпиÑание |
|---|---|---|
pid | integer | ÐденÑиÑикаÑÐ¾Ñ (PID) обÑлÑживаÑÑего пÑоÑеÑÑа |
datid | oid | OID Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
datname | name | ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
relid | oid | OID оÑиÑаемой ÑаблиÑÑ. |
phase | text | ТекÑÑÐ°Ñ Ñаза оÑиÑÑки. См. ТаблиÑÑ 26.25. |
heap_blks_total | bigint | ÐбÑее ÑиÑло блоков кÑÑи в ÑаблиÑе. ÐÑо ÑиÑло оÑÑÐ°Ð¶Ð°ÐµÑ ÑоÑÑоÑние в наÑале ÑканиÑованиÑ; блоки, добавленнÑе позже, не бÑдÑÑ (и не должнÑ) обÑабаÑÑваÑÑÑÑ ÑекÑÑей командой VACUUM. |
heap_blks_scanned | bigint | ЧиÑло пÑоÑканиÑованнÑÑ
блоков кÑÑи. Так как Ð´Ð»Ñ Ð¾Ð¿ÑимизаÑии ÑканиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¿ÑименÑеÑÑÑ ÐºÐ°ÑÑа видимоÑÑи, некоÑоÑÑе блоки могÑÑ Ð¿ÑопÑÑкаÑÑÑÑ Ð±ÐµÐ· оÑмоÑÑа; пÑопÑÑеннÑе блоки вÑ
одÑÑ Ð² ÑÑо обÑее ÑиÑло, Ñак ÑÑо по завеÑÑении оÑиÑÑки ÑÑо ÑиÑло ÑÑÐ°Ð½ÐµÑ Ñавно heap_blks_total. ÐÑÐ¾Ñ ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе scanning heap. |
heap_blks_vacuumed | bigint | ЧиÑло оÑиÑеннÑÑ
блоков кÑÑи. ÐÑли в ÑаблиÑе Ð½ÐµÑ Ð¸Ð½Ð´ÐµÐºÑов, ÑÑÐ¾Ñ ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе vacuuming heap (оÑиÑÑка кÑÑи). Ðлоки, не ÑодеÑжаÑие «мÑÑÑвÑÑ
» коÑÑежей, пÑи ÑÑом пÑопÑÑкаÑÑÑÑ, Ñак ÑÑо ÑÑÐ¾Ñ ÑÑÑÑÑик иногда Ð¼Ð¾Ð¶ÐµÑ ÑвелиÑиваÑÑÑÑ Ñезкими ÑÑвками. |
index_vacuum_count | bigint | ÐолиÑеÑÑво завеÑÑÑннÑÑ Ñиклов оÑиÑÑки индекÑа. |
max_dead_tuples | bigint | ЧиÑло «мÑÑÑвÑÑ Â» коÑÑежей, коÑоÑое Ð¼Ñ Ð¼Ð¾Ð¶ÐµÐ¼ ÑÐ¾Ñ ÑаниÑÑ, пÑежде Ñем поÑÑебÑеÑÑÑ Ð²ÑполниÑÑ Ñикл оÑиÑÑки индекÑа, в завиÑимоÑÑи Ð¾Ñ maintenance_work_mem. |
num_dead_tuples | bigint | ЧиÑло «мÑÑÑвÑÑ Â» коÑÑежей, ÑобÑаннÑÑ Ñо вÑемени поÑледнего Ñикла оÑиÑÑки индекÑа. |
ТаблиÑа 26.25. Ð¤Ð°Ð·Ñ VACUUM
| Фаза | ÐпиÑание |
|---|---|
initializing | ÐниÑиализаÑÐ¸Ñ â VACUUM гоÑовиÑÑÑ Ð½Ð°ÑаÑÑ ÑканиÑование кÑÑи. ÐÑа Ñаза должна бÑÑÑ Ð¾ÑÐµÐ½Ñ Ð±ÑÑÑÑой. |
scanning heap | СканиÑование кÑÑи â VACUUM в наÑÑоÑÑее вÑÐµÐ¼Ñ ÑканиÑÑÐµÑ ÐºÑÑÑ. ÐÑи ÑÑом бÑÐ´ÐµÑ Ð¾ÑиÑена и, еÑли ÑÑебÑеÑÑÑ, деÑÑагменÑиÑована ÐºÐ°Ð¶Ð´Ð°Ñ ÑÑÑаниÑа, а возможно, Ñакже бÑÐ´ÐµÑ Ð¿Ñоизведена замоÑозка. ÐÑÑлеживаÑÑ Ð¿ÑоÑеÑÑ ÑканиÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð¼Ð¾Ð¶Ð½Ð¾, ÑÐ»ÐµÐ´Ñ Ð·Ð° ÑодеÑжимÑм ÑÑолбÑа heap_blks_scanned. |
vacuuming indexes | ÐÑиÑÑка индекÑов â VACUUM в наÑÑоÑÑее вÑÐµÐ¼Ñ Ð¾ÑиÑÐ°ÐµÑ Ð¸Ð½Ð´ÐµÐºÑÑ. ÐÑли Ñ ÑаблиÑÑ ÐµÑÑÑ ÐºÐ°ÐºÐ¸Ðµ-либо индекÑÑ, ÑÑа Ñаза бÑÐ´ÐµÑ Ð½Ð°Ð±Ð»ÑдаÑÑÑÑ Ð¼Ð¸Ð½Ð¸Ð¼Ñм ÐµÐ´Ð¸Ð½Ð¾Ð¶Ð´Ñ Ð² пÑоÑеÑÑе оÑиÑÑки, поÑле Ñого, как кÑÑа бÑÐ´ÐµÑ Ð¿ÑоÑканиÑована полноÑÑÑÑ. Ðна Ð¼Ð¾Ð¶ÐµÑ Ð¿Ð¾Ð²ÑоÑÑÑÑÑÑ Ð½ÐµÑколÑко Ñаз в пÑоÑеÑÑе оÑиÑÑки, еÑли обÑÑма maintenance_work_mem (или, в ÑлÑÑае авÑооÑиÑÑки, autovacuum_work_mem, еÑли он задан) оказÑваеÑÑÑ Ð½ÐµÐ´Ð¾ÑÑаÑоÑно Ð´Ð»Ñ ÑоÑ
ÑÐ°Ð½ÐµÐ½Ð¸Ñ Ð²ÑеÑ
найденнÑÑ
«мÑÑÑвÑÑ
» коÑÑежей. |
vacuuming heap | ÐÑиÑÑка кÑÑи â VACUUM в наÑÑоÑÑее вÑÐµÐ¼Ñ Ð¾ÑиÑÐ°ÐµÑ ÐºÑÑÑ. ÐÑиÑÑка кÑÑи оÑлиÑаеÑÑÑ Ð¾Ñ ÑканиÑованиÑ, Ñак как она пÑоиÑÑ
Ð¾Ð´Ð¸Ñ Ð¿Ð¾Ñле каждой опеÑаÑии оÑиÑÑки индекÑов. ÐÑли heap_blks_scanned менÑÑе Ñем heap_blks_total, ÑиÑÑема веÑнÑÑÑÑ Ðº ÑканиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÑÑи поÑле завеÑÑÐµÐ½Ð¸Ñ ÑÑой ÑазÑ; в пÑоÑивном ÑлÑÑае она наÑнÑÑ ÑбоÑÐºÑ Ð¸Ð½Ð´ÐµÐºÑов. |
cleaning up indexes | УбоÑка индекÑов â VACUUM в наÑÑоÑÑее вÑÐµÐ¼Ñ Ð¿ÑÐ¾Ð¸Ð·Ð²Ð¾Ð´Ð¸Ñ ÑбоÑÐºÑ Ð² индекÑаÑ
. ÐÑо пÑоиÑÑ
Ð¾Ð´Ð¸Ñ Ð¿Ð¾Ñле завеÑÑÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»Ð½Ð¾Ð³Ð¾ ÑканиÑÐ¾Ð²Ð°Ð½Ð¸Ñ ÐºÑÑи и оÑиÑÑки индекÑов и кÑÑи. |
truncating heap | УÑеÑение кÑÑи â VACUUM в наÑÑоÑÑее вÑÐµÐ¼Ñ ÑÑÐµÐºÐ°ÐµÑ ÐºÑÑÑ, ÑÑÐ¾Ð±Ñ Ð²Ð¾Ð·Ð²ÑаÑиÑÑ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑеме обÑÑм пÑÑÑÑÑ
ÑÑÑÐ°Ð½Ð¸Ñ Ð² конÑе оÑноÑениÑ. ÐÑо пÑоиÑÑ
Ð¾Ð´Ð¸Ñ Ð¿Ð¾Ñле ÑбоÑки индекÑов. |
performing final cleanup | ÐÑполнение оконÑаÑелÑной оÑиÑÑки â VACUUM вÑполнÑÐµÑ Ð¾ÐºÐ¾Ð½ÑаÑелÑнÑÑ Ð¾ÑиÑÑкÑ. Ðа ÑÑой ÑÑадии VACUUM оÑиÑÐ°ÐµÑ ÐºÐ°ÑÑÑ Ñвободного пÑоÑÑÑанÑÑва, обновлÑÐµÑ ÑÑаÑиÑÑÐ¸ÐºÑ Ð² pg_class и пеÑедаÑÑ ÑÑаÑиÑÑÐ¸ÐºÑ ÑбоÑÑÐ¸ÐºÑ ÑÑаÑиÑÑики, ÐоÑле ÑÑой ÑÐ°Ð·Ñ VACUUM завеÑÑÐ¸Ñ ÑÐ²Ð¾Ñ ÑабоÑÑ. |
26.4.3. ÐÑÑлеживание вÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ CLUSTER
Ðо вÑÐµÐ¼Ñ Ð²ÑÐ¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ CLUSTER или VACUUM FULL пÑедÑÑавление pg_stat_progress_cluster бÑÐ´ÐµÑ ÑодеÑжаÑÑ Ð¿Ð¾ одной ÑÑÑоке Ð´Ð»Ñ ÐºÐ°Ð¶Ð´Ð¾Ð³Ð¾ обÑлÑживаÑÑего пÑоÑеÑÑа, вÑполнÑÑÑего лÑбÑÑ Ð¸Ð· ÑÑиÑ
команд. ТаблиÑÑ Ð½Ð¸Ð¶Ðµ показÑваÑÑ, ÐºÐ°ÐºÐ°Ñ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð±ÑÐ´ÐµÑ Ð¾ÑÑлеживаÑÑÑÑ, и поÑÑнÑÑÑ, как ÐµÑ Ð¸Ð½ÑеÑпÑеÑиÑоваÑÑ.
ТаблиÑа 26.26. ÐÑедÑÑавление pg_stat_progress_cluster
| СÑÐ¾Ð»Ð±ÐµÑ | Тип | ÐпиÑание |
|---|---|---|
pid | integer | ÐденÑиÑикаÑÐ¾Ñ (PID) обÑлÑживаÑÑего пÑоÑеÑÑа |
datid | oid | OID Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
datname | name | ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , к коÑоÑой подклÑÑÑн ÑÑÐ¾Ñ Ð¾Ð±ÑлÑживаÑÑий пÑоÑеÑÑ. |
relid | oid | OID обÑабаÑÑваемой ÑаблиÑÑ. |
command | text | ÐÑполнÑÐµÐ¼Ð°Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð°: CLUSTER или VACUUM FULL. |
phase | text | ТекÑÑÐ°Ñ Ñаза обÑабоÑки. См. ТаблиÑÑ 26.27. |
cluster_index_relid | oid | ÐÑли ÑаблиÑа ÑканиÑÑеÑÑÑ Ð¿Ð¾ индекÑÑ, ÑÑо поле ÑодеÑÐ¶Ð¸Ñ OID данного индекÑа, а инаÑе â 0. |
heap_tuples_scanned | bigint | ЧиÑло пÑоÑканиÑованнÑÑ
коÑÑежей кÑÑи. ÐÑÐ¾Ñ ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе seq scanning heap, index scanning heap или writing new heap. |
heap_tuples_written | bigint | ЧиÑло запиÑаннÑÑ
коÑÑежей кÑÑи. ÐÑÐ¾Ñ ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе seq scanning heap, index scanning heap или writing new heap. |
heap_blks_total | bigint | ÐбÑее ÑиÑло блоков кÑÑи в ÑаблиÑе. ÐÑо ÑиÑло оÑÑÐ°Ð¶Ð°ÐµÑ ÑоÑÑоÑние в наÑале ÑÐ°Ð·Ñ seq scanning heap. |
heap_blks_scanned | bigint | ЧиÑло пÑоÑканиÑованнÑÑ
блоков кÑÑи. ÐÑÐ¾Ñ ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе seq scanning heap. |
index_rebuild_count | bigint | ЧиÑло пеÑеÑÑÑоеннÑÑ
индекÑов. ÐÑо ÑÑÑÑÑик ÑвелиÑиваеÑÑÑ ÑолÑко в Ñазе rebuilding index. |
ТаблиÑа 26.27. Ð¤Ð°Ð·Ñ CLUSTER и VACUUM FULL
| Фаза | ÐпиÑание |
|---|---|
initializing | Ðоманда гоÑовиÑÑÑ Ð½Ð°ÑаÑÑ ÑканиÑование кÑÑи. ÐÑа Ñаза должна бÑÑÑ Ð¾ÑÐµÐ½Ñ Ð±ÑÑÑÑой. |
seq scanning heap | Ðоманда в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ ÑканиÑÑÐµÑ ÑаблиÑÑ Ð¿Ð¾ÑледоваÑелÑнÑм обÑазом. |
index scanning heap | CLUSTER в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ ÑканиÑÑÐµÑ ÑаблиÑÑ Ð¿Ð¾ индекÑÑ. |
sorting tuples | CLUSTER в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ ÑоÑÑиÑÑÐµÑ ÐºÐ¾ÑÑежи. |
writing new heap | CLUSTER в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð·Ð°Ð¿Ð¸ÑÑÐ²Ð°ÐµÑ Ð½Ð¾Ð²ÑÑ ÐºÑÑÑ. |
swapping relation files | Ðоманда в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð¿ÐµÑеÑÑавлÑÐµÑ ÑолÑко ÑÑо поÑÑÑоеннÑе ÑÐ°Ð¹Ð»Ñ Ð½Ð° меÑÑо. |
rebuilding index | Ðоманда в даннÑй Ð¼Ð¾Ð¼ÐµÐ½Ñ Ð¿ÐµÑеÑÑÑÐ°Ð¸Ð²Ð°ÐµÑ Ð¸Ð½Ð´ÐµÐºÑ. |
performing final cleanup | Ðоманда вÑполнÑÐµÑ Ð¾ÐºÐ¾Ð½ÑаÑелÑнÑÑ Ð¾ÑиÑÑкÑ. ÐоÑле ÑÑой ÑÐ°Ð·Ñ CLUSTER или VACUUM FULL завеÑÑÐ¸Ñ ÑабоÑÑ. |