Найти в Дзене
Postgres DBA

_1.settings.txt

НАСТРОЙКИ СУБД и VM version ----------------------------------------------------------------------------------------------------------- PostgreSQL 17.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.4.1 20230605 (Red Soft 11.4.0-1), 64-bit (1 row) # Do not edit this file manually! # It will be overwritten by the ALTER SYSTEM command. track_io_timing = 'on' listen_addresses = '0.0.0.0' logging_collector = 'on' log_directory = '/log/pg_log' log_destination = 'stderr' log_rotation_size = '0' log_rotation_age = '1d' log_line_prefix = '%m| %d| %a| %u| %h| %p| %e| ' log_truncate_on_rotation = 'on' log_checkpoints = 'on' archive_mode = 'on' archive_command = 'true' archive_timeout = '30min' pg_stat_statements.track_utility = 'off' shared_preload_libraries = 'pg_stat_statements , pg_wait_sampling' log_autovacuum_min_duration = '0' wipe_file_on_delete = 'on' wipe_heaptuple_on_delete = 'on' wipe_mem_on_free = 'on' wipe_memctx_on_free = 'on' wipe_xlog_on_free = 'on' log_connections = 'on' log_d

НАСТРОЙКИ СУБД и VM

version

-----------------------------------------------------------------------------------------------------------

PostgreSQL 17.5 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 11.4.1 20230605 (Red Soft 11.4.0-1), 64-bit

(1 row)

# Do not edit this file manually!

# It will be overwritten by the ALTER SYSTEM command.

track_io_timing = 'on'

listen_addresses = '0.0.0.0'

logging_collector = 'on'

log_directory = '/log/pg_log'

log_destination = 'stderr'

log_rotation_size = '0'

log_rotation_age = '1d'

log_line_prefix = '%m| %d| %a| %u| %h| %p| %e| '

log_truncate_on_rotation = 'on'

log_checkpoints = 'on'

archive_mode = 'on'

archive_command = 'true'

archive_timeout = '30min'

pg_stat_statements.track_utility = 'off'

shared_preload_libraries = 'pg_stat_statements , pg_wait_sampling'

log_autovacuum_min_duration = '0'

wipe_file_on_delete = 'on'

wipe_heaptuple_on_delete = 'on'

wipe_mem_on_free = 'on'

wipe_memctx_on_free = 'on'

wipe_xlog_on_free = 'on'

log_connections = 'on'

log_disconnections = 'on'

pg_stat_statements.track = 'all'

wal_compression = 'lz4'

jit = 'on'

client_connection_check_interval = '3s'

default_toast_compression = 'pglz'

enable_async_append = 'on'

autovacuum_vacuum_insert_threshold = '1596'

autovacuum_vacuum_insert_scale_factor = '0.01'

logical_decoding_work_mem = '64MB'

maintenance_io_concurrency = '128'

wal_keep_size = '1506MB'

hash_mem_multiplier = '1.2'

max_parallel_maintenance_workers = '4'

max_parallel_workers = '4'

max_logical_replication_workers = '4'

max_sync_workers_per_subscription = '2'

autovacuum = 'on'

autovacuum_max_workers = '4'

autovacuum_work_mem = '189MB'

autovacuum_naptime = '15s'

autovacuum_vacuum_threshold = '1596'

autovacuum_analyze_threshold = '798'

autovacuum_vacuum_scale_factor = '0.001'

autovacuum_analyze_scale_factor = '0.0007'

autovacuum_vacuum_cost_limit = '2188'

vacuum_cost_limit = '8000'

autovacuum_vacuum_cost_delay = '10ms'

vacuum_cost_delay = '10ms'

autovacuum_freeze_max_age = '500000000'

autovacuum_multixact_freeze_max_age = '800000000'

shared_buffers = '1779MB'

max_connections = '91'

max_files_per_process = '1391'

superuser_reserved_connections = '4'

work_mem = '35MB'

temp_buffers = '3990kB'

maintenance_work_mem = '196MB'

huge_pages = 'try'

fsync = 'on'

wal_level = 'replica'

synchronous_commit = 'on'

full_page_writes = 'on'

wal_buffers = '23MB'

wal_writer_delay = '100ms'

wal_writer_flush_after = '3050kB'

min_wal_size = '1010MB'

max_wal_size = '2021MB'

max_replication_slots = '0'

max_wal_senders = '0'

wal_sender_timeout = '0'

wal_log_hints = 'off'

hot_standby = 'off'

wal_receiver_timeout = '0'

max_standby_streaming_delay = '-1'

wal_receiver_status_interval = '0'

hot_standby_feedback = 'off'

checkpoint_timeout = '15min'

checkpoint_warning = '30s'

checkpoint_completion_target = '0.8'

commit_delay = '0'

commit_siblings = '0'

bgwriter_delay = '54ms'

bgwriter_lru_maxpages = '515'

bgwriter_lru_multiplier = '7.0'

effective_cache_size = '5081MB'

cpu_operator_cost = '0.0025'

default_statistics_target = '500'

random_page_cost = '1.1'

seq_page_cost = '1'

join_collapse_limit = '8'

from_collapse_limit = '8'

geqo = 'on'

geqo_threshold = '12'

effective_io_concurrency = '128'

max_worker_processes = '8'

max_parallel_workers_per_gather = '2'

max_locks_per_transaction = '190'

max_pred_locks_per_transaction = '190'

statement_timeout = '86400000'

idle_in_transaction_session_timeout = '86400000'

Architecture: x86_64

CPU op-mode(s): 32-bit, 64-bit

Address sizes: 40 bits physical, 48 bits virtual

Byte Order: Little Endian

CPU(s): 8

On-line CPU(s) list: 0-7

Vendor ID: GenuineIntel

Model name: Intel Xeon Processor (Skylake, IBRS, no TSX)

CPU family: 6

Model: 85

Thread(s) per core: 1

Core(s) per socket: 1

Socket(s): 8

Stepping: 4

BogoMIPS: 5387.32

Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl xtopology cpuid tsc_known_freq pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single pti ibrs ibpb fsgsbase bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap clwb avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat pku ospke

Hypervisor vendor: KVM

Virtualization type: full

L1d cache: 256 KiB (8 instances)

L1i cache: 256 KiB (8 instances)

L2 cache: 32 MiB (8 instances)

L3 cache: 128 MiB (8 instances)

NUMA node(s): 1

NUMA node0 CPU(s): 0-7

Vulnerability Gather data sampling: Unknown: Dependent on hypervisor status

Vulnerability Itlb multihit: KVM: Mitigation: VMX unsupported

Vulnerability L1tf: Mitigation; PTE Inversion

Vulnerability Mds: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown

Vulnerability Meltdown: Mitigation; PTI

Vulnerability Mmio stale data: Vulnerable: Clear CPU buffers attempted, no microcode; SMT Host state unknown

Vulnerability Reg file data sampling: Not affected

Vulnerability Retbleed: Mitigation; IBRS

Vulnerability Spec rstack overflow: Not affected

Vulnerability Spec store bypass: Vulnerable

Vulnerability Spectre v1: Mitigation; usercopy/swapgs barriers and __user pointer sanitization

Vulnerability Spectre v2: Mitigation; IBRS; IBPB conditional; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI SW loop, KVM SW loop

Vulnerability Srbds: Not affected

Vulnerability Tsx async abort: Not affected

RAM = 7.50 GB

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS

vda 252:0 0 70G 0 disk

├─vda1 252:1 0 1G 0 part /boot

└─vda2 252:2 0 69G 0 part

├─rootvg-root 253:0 0 20G 0 lvm /

├─rootvg-swap 253:1 0 1G 0 lvm [SWAP]

├─rootvg-tmp 253:2 0 5G 0 lvm /tmp

├─rootvg-opt 253:3 0 5G 0 lvm /opt

├─rootvg-home 253:4 0 5G 0 lvm /home

└─rootvg-var 253:5 0 15G 0 lvm /var

vdb 252:16 0 30G 0 disk

└─vg_log-LG_log 253:6 0 29G 0 lvm /log

vdc 252:32 0 50G 0 disk

└─vg_wal-LG_wal 253:7 0 49G 0 lvm /wal

vdd 252:48 0 100G 0 disk

└─vg_data-LG_data 253:8 0 99G 0 lvm /data

devices = vdd vdc

ТЕКУЩИЕ НАСТРОЙКИ УПРАВЛЕНИЯ VM и RAM

1.ПОРОГИ ДЛЯ ЗАПУСКА ФОНОВОЙ ЗАПИСИ НА ДИСК:|

vm.dirty_background_ratio |

процент от общей оперативной памяти,|

по достижении которого система начинает фоновую запись "грязных" данных на диск. | 10|

vm.dirty_background_bytes |

абсолютный объем "грязных" данных в байтах |

для запуска фоновой записи (имеет приоритет над ratio). | 0|

2.ПОРОГИ ДЛЯ ПРИНУДИТЕЛЬНОЙ СИНХРОННОЙ ЗАПИСИ:|

vm.dirty_ratio |

процент памяти, по превышении которого процессы блокируются |

и вынуждены синхронно записывать данные на диск. | 30|

vm.dirty_bytes |

абсолютный лимит "грязных" данных в байтах|

для блокировки процессов (имеет приоритет над ratio). | 0|

3.ТАЙМИНГИ ЗАПИСИ:|

vm.dirty_expire_centisecs |

время (в сотых долях секунды)|

по истечении которого "грязные" данные считаются устаревшими и подлежат записи. | 1000|

vm.dirty_writeback_centisecs |

частота (в сотых долях секунды), |

с которой фоновый процесс проверяет и записывает устаревшие данные. | 500|

4.НАСТРОЙКИ УПРАВЛЕНИЯ ПАМЯТЬЮ:|

vm.vfs_cache_pressure|

тенденция ядра к освобождению памяти, |

занятой кэшем файловой системы (чем выше значение, тем агрессивнее). | 100|

vm.swappiness |

склонность системы к использованию подкачки на диск (swap)|

вместо освобождения кэша страниц в RAM (диапазон от 0 до 100). | 1|

-------------------------------------------------------------------------

МЕТОДОЛОГИЯ СТАТИСТИЧЕСКОГО АНАЛИЗА PG_EXPECTO

МЕТОДИКА 3-Х ЭТАПНОГО СТАТИСТИЧЕСКОГО АНАЛИЗА ОЖИДАНИЙ СУБД

Этап-1.СТАТИСТИЧЕСКАЯ ЗНАЧИМОСТЬ КОЭФФИЦИЕНТА КОРРЕЛЯЦИИ:

p-value < 0.05 — корреляция считается статистически значимой. Анализ целесообразен.

p-value >= 0.05 — связь нестабильна и может быть случайной. Интерпретация силы корреляции неприменима.

Этап-2.ВЗВЕШЕННАЯ КОРРЕЛЯЦИЯ ОЖИДАНИЙ (ВКО)

Аналитическая метрика, предназначенная для ранжирования типов событий ожидания.

по степени их влияния на общую нагрузку системы.

Чем выше значение ВКО, тем критичнее проблема.

>= 0.2 КРИТИЧЕСКОЕ ЗНАЧЕНИЕ : Немедленный анализ и действие.

[0.1 ; 0.2[ ВЫСОКОЕ ЗНАЧЕНИЕ : Глубокий анализ и планирование оптимизации.

[0.04 ; 0.1[ СРЕДНЕЕ ЗНАЧЕНИЕ : Контекстный анализ и наблюдение.

[0.01 ; 0.04[ НИЗКОЕ ЗНАЧЕНИЕ : Наблюдение и документирование.

< 0.01 Игнорировать в текущем анализе.

Этап-3.ИНТЕРПРЕТАЦИЯ КОЭФФИЦИЕНТА ДЕТЕРМИНАЦИИ R2

>= 0.8 — Исключительно сильная модель.

[0.6 ; 0.8[ — Качественная модель.

[0.4 ; 0.6[ — Приемлемая модель (средняя).

[0.2 ; 0.4[ — Слабая модель.

< 0.2 — Непригодная модель.

АНАЛИЗ ОЖИДАНИЙ(wait_event_type)

Этап-1. Интерпретация корреляций.

Отбросить невалидные значения (p-value > 0.05) : связь нестабильна и может быть случайной.

Этап-2. Интерпретация ВКО.

Отбросить значения, если ВКО < 0.01 : Игнорировать в текущем анализе.

Этап-3. Интерпретация коэффициента детерминации R2.

Отбросить значения, если R2 < 0.2 :Непригодная модель

-------------------------------------------------------------------------

МЕТОДИКА 2-Х ЭТАПНОГО СТАТИСТИЧЕСКОГО АНАЛИЗА МЕТРИК

Этап-1.СТАТИСТИЧЕСКАЯ ЗНАЧИМОСТЬ КОЭФФИЦИЕНТА КОРРЕЛЯЦИИ:

p-value < 0.05 — корреляция считается статистически значимой. Анализ целесообразен.

p-value >= 0.05 — связь нестабильна и может быть случайной. Интерпретация силы корреляции неприменима.

Этап-2.ИНТЕРПРЕТАЦИЯ КОЭФФИЦИЕНТА ДЕТЕРМИНАЦИИ R2

>= 0.8 — Исключительно сильная модель.

[0.6 ; 0.8[ — Качественная модель.

[0.4 ; 0.6[ — Приемлемая модель (средняя).

[0.2 ; 0.4[ — Слабая модель.

< 0.2 — Непригодная модель.

АНАЛИЗ КОРРЕЛЯЦИ МЕЖДУ МЕТРИКАМИ

Этап-1. Интерпретация корреляций.

Отбросить невалидные значения (p-value > 0.05) : связь нестабильна и может быть случайной.

Этап-2. Интерпретация коэффициента детерминации R2.

Отбросить значения, если R2 < 0.2 :Непригодная модель

-------------------------------------------------------------------------