Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam

Топ прошлой недели

  • CharlotteLink CharlotteLink 1 пост
  • Syslikagronom Syslikagronom 7 постов
  • BydniKydrashki BydniKydrashki 7 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Новости Пикабу Помощь Кодекс Пикабу Реклама О компании
Команда Пикабу Награды Контакты О проекте Зал славы
Промокоды Скидки Работа Курсы Блоги
Купоны Biggeek Купоны AliExpress Купоны М.Видео Купоны YandexTravel Купоны Lamoda
Мобильное приложение

Postgresql

С этим тегом используют

Субд Производительность Мониторинг Тестирование Программирование IT SQL Все
163 поста сначала свежее
kznalp
kznalp
1 месяц назад
Postgres DBA
Серия СУБД PostgreSQL

PG_HAZEL - оперативно-тактический комплекс мониторинга и анализа производительности СУБД PostgreSQL⁠⁠

Взято с основного технического канала Postgres DBA ( возможны правки и дополнения в исходной статье ).

PG_HAZEL - оперативно-тактический комплекс мониторинга и анализа производительности СУБД PostgreSQL Субд, Postgresql, Производительность, Инженер, Исследования, Тестирование, Мониторинг

Скоро орешник даст плоды.

Начало

Эскизный проект

ℹ️Текущие возможности

✅Снимки pg_stat_activity , pg_locks , PostgreSQL RAM utilization.

✅Сбор статистических данных для оценки производительности на уровне СУБД.

✅Сбор статистических данных для оценки производительности на уровне SQL выражения.

✅История инцидентов снижения операционной скорости СУБД.

✅Связь между инцидентами и SQL выражениями.

✅Оперативная и сводная отчётность по инцидентам и нагрузочному тестированию.

✅Метрики оценки и мониторинга производительности СУБД.

✅Методология анализа инцидентов.

Показать полностью 1
[моё] Субд Postgresql Производительность Инженер Исследования Тестирование Мониторинг
0
kznalp
kznalp
1 месяц назад
Серия ITшное

Реактивный или проактивный мониторинг по мнению ИИ . 1:0 в пользу DeepSeek⁠⁠

Итого - счет сравнялся .
Текущий общий счет в серии "Какой ИИ полезнее для PostgreSQL DBA" - ничья 1:1

Реактивный или проактивный мониторинг по мнению YandexGPT

Реактивный или проактивный мониторинг по мнению DeepSeek

YandeхGPT vs. DeepSeek. У DeepSeek - большие проблемы

DeepSeek Яндекс Нейронные сети Субд Postgresql Текст
1
kznalp
kznalp
1 месяц назад
Серия ITшное

Реактивный или проактивный мониторинг по мнению YandexGPT⁠⁠

Вопрос : какой мониторинг выгоднее использовать для оптимизации производительности субд postgresql - реактивный или проактивный ?

Ответ YandexGPT

Нельзя однозначно сказать, какой мониторинг выгоднее для оптимизации производительности СУБД PostgreSQL — реактивный или проактивный. Выбор зависит от конкретных задач и требований к системе.

Для исследования проблем с производительностью PostgreSQL важен систематический мониторинг. Некоторые инструменты позволяют получать информацию в режиме реального времени. Например, htop, iostat и vmstat.  3

Также для мониторинга PostgreSQL можно использовать внутренний сбор статистики. Например, pg_stat_activity помогает определить активные запросы к базе и кто их выполняет, а pg_stat_statements отображает популярные запросы с наибольшим временем выполнения.  3

Ещё для мониторинга можно применять системы, такие как Percona. Она позволяет быстро оценить динамику нагрузки на сервер и показывает главные показатели работы сервера. 

Яндекс Нейронные сети Субд Postgresql Мониторинг Текст
0
kznalp
kznalp
1 месяц назад
Серия ITшное

Реактивный или проактивный мониторинг по мнению DeepSeek⁠⁠

Вопрос: Какой мониторинг выгоднее использовать для оптимизации производительности СУБД PostgreSQL - реактивный или проактивный ?

Ответ DeepSeek

Для оптимизации производительности PostgreSQL **проактивный мониторинг** предпочтительнее, так как он позволяет предотвращать проблемы до их возникновения, минимизируя простои и улучшая стабильность системы. Однако оптимальный результат достигается при **комбинации обоих подходов**.

### Почему проактивный мониторинг выгоднее:
1. **Предупреждение проблем**:
- Отслеживание метрик (CPU, память, I/O, индексы, блокировки) помогает выявить узкие места до их критического влияния.
- Пример: мониторинг роста таблиц или замедления запросов через `pg_stat_statements` позволяет заранее оптимизировать индексы или переписать запросы.

2. **Снижение простоев**:
- Анализ трендов (например, заполнение диска или увеличение времени ответа) позволяет планировать масштабирование и обновления.

3. **Экономия ресурсов**:
- Проактивное устранение проблем дешевле, чем аварийное восстановление после сбоев.

4. **Инструменты**:
- Prometheus + Grafana для сбора метрик.
- Настройка алертов на аномалии (например, через Alertmanager).
- Использование расширений PostgreSQL: `pg_stat_activity`, `pg_stat_bgwriter`, `pg_stat_statements`.

### Когда полезен реактивный мониторинг:
- Для анализа уже возникших инцидентов (например, внезапные блокировки или деградация запросов).
- Использование логов и инструментов вроде `pgBadger` для постфактум-анализа.
- Оптимизация запросов, которые не были выявлены проактивно.

### Итог:
- **Проактивный мониторинг** — основа для долгосрочной стабильности и оптимизации.
- **Реактивный** — дополнение для работы с непредвиденными сценариями.
- Для максимальной эффективности объедините оба подхода, но фокусируйтесь на проактивных методах.

Показать полностью
DeepSeek Субд Мониторинг Нейронные сети Postgresql Текст
1
6
user5274919
1 месяц назад

Опыт перехода на PostgresPro Enterprice: Подводные камни и уроки⁠⁠

В начале 2024 года, в условиях активного импортозамещения и опасений возможных принудительных мер со стороны властей по переходу на отечественное ПО, мы начали искать альтернативные решения. Основываясь на опыте использования 1С, которое активно применяется в России, и после изучения материалов Гилева, мы решили рассмотреть PostgresPro Ent.

Проведя базовые тесты, нас устроила его функциональность, встроенная кластеризация BiHa PostgresPro Ent и административная панель PPEM. Все выглядело красиво и удобно. В итоге было принято решение закупить лицензии на PostgresPro Ent для двух серверов и развернуть на них часть баз 1С.

Развертывание прошло быстро и без значительных затруднений. Мы создали несколько инстансов для удобства восстановления, так как в отличие от MSSQL, в Postgres нельзя работать с резервными копиями отдельных баз данных без риска потери данных, а только с инстансом целиком.

В процессе эксплуатации выявились некоторые неприятные особенности. В частности, очень долгое резервное копирование с использованием pg_probackup. База 1С на MS SQL, объемом около 100 ГБ, копируется на сервер резервного копирования за 5-10 минут, в то время как аналогичная база на PostgresPro Enterprise требует более 2 часов. Многие могут предложить использовать более мощное оборудование или смотреть в сторону инкрементальных бэкапов (в плане обслуживания MSSQL мы используем как полные таки и инкрементальные). Но проблема заключается в самой логике работы pg_probackup, которая не позволяет сразу архивировать все файлы в один архив и далее работать уже с ними, а фактически учитывая структуру базы 1С там не одна тысяча мелких файлов которые очень "замечательно" копируются по сети, даже 10GBps не изменяет ситуацию. Также возникло множество мелких вопросов, требующих дополнительных компетенций, но пути решения были найдены, хотя и не всегда оптимальные. Вывод: PostgresPro требуется значительного много времени что бы догнать MS SQL в удобстве использования и обслуживания.

Однако главная особенность PostgresPro Enterprise заключается в следующем: при покупке бессрочной лицензии PostgresPro Enterprise, после окончания базовой подписки на техническую поддержку, вы не можете использовать ПО как вам хочется. Вы становитесь привязанными к тому оборудованию, на которое было установлено ПО (вспомним OEM лицензии от MicroSoft), и ваша бессрочная лицензия фактически превращается в лицензию по подписке. Этот факт выяснился через год после покупки, когда мы решили заменить серверы на более новые. Доступ к репозиторию уже был закрыт, так как закончился срок базовой техподдержки. Обращения в техническую поддержку не дали результатов: ответ сводился к предложению купить подписку на техническую поддержку или отказаться от использования ПО.

Таким образом, могу посоветовать: тщательно взвесить все за и против перед переходом на отечественное ПО, чтобы избежать подобных проблем.

p.s. Если у администрации ресурса возникнут сомнения в правдивости этого поста, могу предоставить номера обращений и даже предоставить скрины ответов PostgresPro Enterprise.

Показать полностью
[моё] 1С Субд Системное администрирование Postgresql Программное обеспечение Импортозамещение Текст
13
1
kznalp
kznalp
1 месяц назад
Postgres DBA
Серия СУБД PostgreSQL

Сценарий №4 "HeavyWeight": CPU utilization⁠⁠

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Ослик не справится , если его перегрузить

Взято с основного технического канала Postgres DBA ( возможны правки и дополнения в исходной статье ).

Начало

https://dzen.ru/a/Z_ZU4LQXlnxVJEBt

Постановка задачи

Корреляционный анализ ожиданий при проведении тестового нагрузочного тестирование по сценарию "HeavyWeight" - повышенная утилизация CPU.

Уточнить характерные признаки возникающие при нехватке вычислительной мощности CPU , при минимальном использовании IO.

Реализация теста

Виртуальная машина

cat /proc/cpuinfoprocessor  : 0model name  : Intel Xeon Processor (Skylake, IBRS, no TSX)cpu MHz  : 2693.670processor  : 1model name  : Intel Xeon Processor (Skylake, IBRS, no TSX)cpu MHz  : 2693.670

Тестовый запрос

FOR counter IN 1..10000LOOPSELECTgcd( ((random()*100.0) * (random()*100.0))::numeric , ((random()*100.0) * (random()*100.0))::numeric ) *lcm( ((random()*100.0) * (random()*100.0))::numeric , ((random()*100.0) * (random()*100.0))::numeric )*power(gcd( ((random()*100.0) * (random()*100.0))::numeric , ((random()*100.0) * (random()*100.0))::numeric ) ,lcm( ((random()*100.0) * (random()*100.0))::numeric , ((random()*100.0) * (random()*100.0))::numeric ))END LOOP;

План выполнения тестового запроса

explain ( analyze , buffers , summary ) select custom_test4();QUERY PLAN----------------------------------------------------------------------------------------Result  (cost=0.00..0.26 rows=1 width=4) (actual time=459.522..459.522 rows=1 loops=1)Buffers: shared hit=160Planning Time: 0.066 msExecution Time: 461.071 ms(4 rows)

Нагрузка на чтение с диска - отсутствует.

Операционная скорость и ожидания СУБД в ходе выполнения теста

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Ось X - точка времени. Ось Y - значение операционной скорости СУБД.

Ожидания СУБД

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Ось X - точка времени. Ось Y - ожидания СУБД.

Коэффициенты корреляции

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Коэффициенты корреляции между операционной скоростью и ожиданиями.

Сильная корреляция между ожиданиями и ожиданиями типа LWLock свидетельствует о том, что все ожидания вызваны типом LWLock.

Ожидания типа LWLock

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Ось X - точка времени. Ось Y - ожидания типа LWLock

События ожиданий (wait_event) по тестовому запросу

Сценарий №4 "HeavyWeight": CPU utilization Субд, Postgresql, Производительность, Тестирование, Длиннопост

Фрагмент истории выполнения и ожиданий тестового запроса

Столбцы таблицы:

  • timestamp : точка времени сбора статистических данных уровня SQL.

  • datname : База данных, в которой выполнялся SQL запрос.

  • rolname : Роль, под которой выполнялся SQL запрос.

  • CALLS : Количество выполнений запроса .

  • WAITINGS : Количество ожиданий типа IO , LWLock .

  • WAITINGS TO CALLS : количество ожиданий на одно выполнение.

  • WAIT_EVENTS : события ожидания wait_event , возникающие при выполнении SQL запроса .

  • SQL : текст SQL запроса (не приведен).

События ожидания возникающие при выполнении SQL запроса:

  • ProcArray : Ожидание при обращении к общим структурам данных в рамках процесса (например, при получении снимка или чтении идентификатора транзакции в сеансе).

  • LockManager : Ожидание при чтении или изменении информации о «тяжёлых» блокировках.

Итог

Характерным признаком недостатка вычислительных ресурсов CPU является корреляция между снижением операционной скорости и ростом ожиданий ProcArray .

Показать полностью 5
[моё] Субд Postgresql Производительность Тестирование Длиннопост
0
2
kznalp
kznalp
1 месяц назад
Серия IMHO

Главное по жизни - делать, то, что хочешь и что интересно⁠⁠

В продолжении Performance engineering нужен ли ? Вообще то, основной массе юзеров - нет

Ну, что ж, если тема статистического анализа производительности PostgreSQL и PostgreSQL performance engineering никому не интересна - буду выступать на осенних конференциях в тихом полупустом зале .
Зато в Питер съездить прогуляться по местам молодости . Это хорошо.

Главное по жизни - делать, то, что хочешь и что интересно Субд, Postgresql, Производительность, Конференция, Текст, Санкт-Петербург

А то, что никому тема неинтересна это и к лучшему - меньше глупых вопросов и реплик .

да, один запрос или транзакция убивает производительность и это актуально. Интересно, в графических системах мониторинга (zabbixы, PPEM) график с горизонтом баз данных расположен на самом видном месте

Что это и как это понять ? А фиг знает, мне не интересно.

Показать полностью 1
[моё] Субд Postgresql Производительность Конференция Текст Санкт-Петербург
0
3
kznalp
kznalp
1 месяц назад
Серия ITшное

Performance engineering нужен ли ? Вообще то, основной массе юзеров - нет⁠⁠

Надысь , в процессе сёрфинга наткнулся на интересную реплику из зала под лозунгом "вся это ваша оптимизация производительности это шарлатанство "

Performance engineering нужен ли ? Вообще то, основной массе юзеров - нет ИМХО, Ламер, Пользователи, Длиннопост, Субд, Postgresql, Производительность

Дабы не запутаться в потоке чужого мнения , выделил своё IMHO курсивом .

Начало цитаты
Ну как бы "производительность БД" "по факту" не интересна никому...
Это интересное замечание , потому как использует стандартное обобщение "непонятно и неинтересно мне , а значить никому".
Всех "по факту" интересует "производительность прикладного приложения".
При этом никто(и это факт по крайней мере в окружающей реальности ) не знает и не умеет считать "производительность приложения".
Да есть связи между ними, но они "совсем не простые"... :-)
Астрология , магия и алхимия в начале 21го века . "Связи есть, но они не простые" Меркурий в третьем доме , блин , связан с Венерой в зодиаке 🤪
К примеру БД нагружается (выразимся так) "различными прикладными задачами".
Это очень интересный термин "нагружается". Ну , а что взяли тачку нагрузили чернозёмом . С БД также - "нагружается".
И у прикладных "задач" есть различные "требования" по времени ответа (от БД в том числе).
Требования есть только в волшебном лесу эльфов. В реальном мире нагрузочное тестирование проводят, чтобы подписать этап договора. Нет никаких требований, правило простое - закрыть этап, получить бабки , как то работает и ладно.
Если в БД нет "встроенных" средств "приотеризации" - это уже "не есть хорошо".
А зачем ?
Вот и получаем ситуацию когда один (для приложения не приоритетный) запрос в БД (который БД обрабатывает как бы быстро и оптимально) "убивает" производительность других приоритетных для приложения запросов.
И тут Остапа понесло. Понять это невозможно . Остаётся - простить.
Для PG это достаточно актуально.
Да уж.
Конец цитаты.

С одной стороны смешно и прикольно .

С другой стороны , вспоминается талантливый фильм "Такси-блюз":
- "Вань, да тебе радио хватит - во! (выше лба)".

Какой вам performance engineering и корреляционный анализ, мат.статистика и линия регрессии , вам Zabbixа воооо, с запасом, с головой, надолго хватит.
На дворе 21й век, а основная масса DBA как были ремесленниками так и остались

Performance engineering нужен ли ? Вообще то, основной массе юзеров - нет ИМХО, Ламер, Пользователи, Длиннопост, Субд, Postgresql, Производительность

Вспомнилось из недавнего, на эту же тему

Мысли вслух - DBA ремесло или наука ?

Показать полностью 2
[моё] ИМХО Ламер Пользователи Длиннопост Субд Postgresql Производительность
2
Посты не найдены
О Нас
О Пикабу
Контакты
Реклама
Сообщить об ошибке
Сообщить о нарушении законодательства
Отзывы и предложения
Новости Пикабу
RSS
Информация
Помощь
Кодекс Пикабу
Награды
Команда Пикабу
Бан-лист
Конфиденциальность
Правила соцсети
О рекомендациях
Наши проекты
Блоги
Работа
Промокоды
Игры
Скидки
Курсы
Зал славы
Mobile
Мобильное приложение
Партнёры
Промокоды Biggeek
Промокоды Маркет Деливери
Промокоды Яндекс Путешествия
Промокоды М.Видео
Промокоды в Ленте Онлайн
Промокоды Тефаль
Промокоды Сбермаркет
Промокоды Спортмастер
Постила
Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии