README.md

pg_expecto - статистический анализ производительности и ожиданий СУБД PostgreSQL.

Комплекс pg_expecto, предназначен для глубокого статистического анализа и тестирования производительности СУБД. Релиз знаменует собой появление мощного и свободно распространяемого инструмента для администраторов баз данных и разработчиков.

Основная задача pg_expecto — предоставить комплексный инструментарий для выявления узких мест и оптимизации работы PostgreSQL. В отличие от некоторых современных решений, pg_expecto сознательно сфокусирован на надежных и проверенных статистических методах, что обеспечивает полный контроль и прозрачность процесса анализа.

Ключевые особенности pg_expecto

  • Всесторонний статистический и корреляционный анализ: Выполнение глубокого анализа производительности PostgreSQL и событий ожидания (wait_event_type/wait_event), помогет установить корреляцию между внутренним состоянием СУБД и общей производительностью системы.
  • Мониторинг операционной системы: pg_expecto выходит за рамки самой СУБД и включает в себя инструменты для сбора и анализа метрик операционной системы с помощью утилит vmstat и iostat. Это позволяет напрямую увязать нагрузку на диск, память и процессор с поведением базы данных.
  • Встроенное нагрузочное тестирование: Пользователи могут проводить нагрузочные тесты непосредственно с помощью pg_expecto, оценивая, как база данных ведет себя под давлением, и определяя пределы ее производительности.
  • Построение отчетов для Excel: Развитые возможности построения отчетов позволяют легко экспортировать результаты анализа в форматы, совместимые с Microsoft Excel, что упрощает дальнейшую обработку, визуализацию и представление данных руководству.
  • Обширная база знаний: В распоряжение пользователей передан большой объем материалов по результатам экспериментов с проектом pg_hazel, служащий ценным источником знаний и практических примеров для проведения эффективного анализа.
  • Проактивный мониторинг: Формирование репрезентативных профилей производительности систем наблюдения посредством разработки стандартизированных файлов метрических данных. Регистрация события снижения производительности системы управления базами данных служит триггером инициирования стандартных и приоритетных инцидентов реагирования.
  • Интеграция с нейросетью: Автоматическое конструирование вводных инструкций для искусственной нейронной сети, предназначенных для осуществления семантического анализа рекомендаций относительно минимизации задержек обработки в системах управления базами данных и улучшения структуры сложных SQL-запросов, предварительно выявленных методами корреляционной аналитики событий ухудшения производительности СУБД.
  • Версия 4.0 обеспечивает возможность кастомизации сценариев тестирования и поддерживает использование выделенного экземпляра базы данных в качестве тестового полигона для проведения нагрузочного тестирования.

Контакты

Статус проекта

Текущая версия: 4

Установка (Installation)

ВАЖНО

Для работы pg_expecto требуются установленные библиотеки расширений pg_stat_statements и pg_wait_sampling

Значение параметра shared_preload_libraries должно быть:

shared_preload_libraries=‘pg_stat_statements , pg_wait_sampling’

Порядок библиотек ВАЖЕН

Инсталляция

  1. Распаковать zip-архив проекта(pg_expecto-main.zip) : в результате будет подготовлена папка: pg_expecto-main
  2. Скопировать содержимое на целевой сервер СУБД в папку: /tmp/pg_expecto
  3. Используя учетную запись postgres, на целевом сервере СУБД cоздать сервисную папку: mkdir /postgres/pg_expecto
  4. Скопировать инсталлятор: cp /tmp/pg_expecto/pg_expecto_install.sh /postgres/pg_expecto/
  5. Перейти в папку для начала инсталляции: cd /postgres/pg_expecto
  6. Подготовить скрипт инсталлятора: chmod 750 pg_expecto_install.sh
  7. Запустить инсталлятор: ./pg_expecto_install.sh

Мониторинг работоспособности pg_expecto

tail -f /postgres/pg_expecto/sh/pg_expecto.log

Использование pg_expecto

Исходные файлы

Исходные файлы проекта также доступны в репозитории GitHub:pg_expecto

Описание

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

Конвейеры
0 успешных
0 с ошибкой