Быстрый старт
Развертывание
Моделирование данных
Подключение
Запись данных
Миграция
Запросы
Операции и обслуживание
Типовое обслуживание
Секционирование
Резервное копирование и восстановление
Масштабирование
Зеркалирование
Управление ресурсами
Безопасность
Мониторинг
Настройка производительности
Устранение неполадок
Справочник
Руководство по инструментам
Типы данных
Хранилище данных
Выполняющая система
Потоковая передача
Восстановление после сбоев
Конфигурация
Индексы
Расширения
Справочник по SQL
Часто задаваемые вопросы
Данный документ представляет методологии настройки производительности в YMatrix, охватывая оптимизацию системных ресурсов, настройку ресурсов базы данных и оптимизацию SQL-запросов.
Настройка производительности — это комплексная и критически важная задача.
Обычно существуют две причины для настройки производительности:
Предварительное условие:

Используйте данные мониторинга производительности и другую информацию о требованиях для описания текущего узкого места или потребностей в производительности.
Хорошее описание проблемы должно включать контекст и чётко формулировать наблюдаемую проблему. Оно должно быть лаконичным и, как правило, содержать, но не ограничиваться следующей информацией:
Лучший пример: Использование встроенного инструмента ввода данных в GUI YMatrix 5.0 для загрузки 2,8 миллиона строк; после 30 тестовых запусков задержка увеличилась с 30 секунд до 1 минуты — почти двукратное снижение производительности.
Худший пример: Генерация тестовых данных через GUI становится медленнее.
Цели оптимизации различаются в зависимости от бизнес-сценариев. Например, в сценарии временных рядов, таком как подключённые транспортные средства, целями могут быть повышение производительности агрегирующих запросов и операций соединения при детализированных запросах. В противоположность этому, для финансовой ядерной OLTP-системы целью может быть снижение задержки длинных хвостов транзакций.
Эффективная цель оптимизации должна быть измеримой, например:
Неприемлемо:
YMatrix рекомендует собирать, но не ограничиваться следующей информацией для анализа:
На основе собранной информации определите или выдвиньте гипотезу о корневой причине узкого места производительности. Для точного выявления проблемы может потребоваться несколько циклов сбора данных. Подробную методологию см. в разделе Настройка производительности.
Примечание!
Эффективная коммуникация и сотрудничество являются ключевыми для быстрого выявления корневых причин.
После выявления узкого места производительности предложите план оптимизации, который является низкозатратным, низкорисковым и обеспечивает максимальную выгоду.
Даже если решение предлагает наибольший потенциальный эффект для самого значимого узкого места, всегда оценивайте связанные с ним риски и стоимость реализации. Как правило, YMatrix рекомендует следующий порядок настройки, от наименьшей к наибольшей стоимости/риску:
ANALYZE для обновления статистики таблиц; или проанализируйте планы выполнения и перепишите SQL-запросы для снижения логической сложности и затрат на выполнение.Примечание!
Чтобы избежать необратимых узких мест при эксплуатации в продакшене, уделяйте большее внимание первоначальному проектированию. Научно планируйте, анализируйте и тестируйте модель данных для вашего сценария, чтобы обеспечить её корректность.
Процесс реализации настройки обычно включает, но не ограничивается следующими шагами:
Настройка производительности редко является однократной задачей. Для конкретной проблемы производительности может потребоваться несколько повторений шагов 2.3–2.7 до достижения удовлетворительных результатов.
Поэтому крайне важно чётко оценивать результаты настройки и предпринимать следующие действия: