Стратегия оптимизации SQL

#sql #query-optimization

#sql #оптимизация запросов

Вопрос:

Я студент и выполняю задание для базы данных. Я хочу использовать индексацию и оптимизацию запросов для моей стратегии оптимизации базы данных. Проблема в том, как я могу доказать, что моя стратегия улучшена? в моей лекции говорилось об оптимизации запросов, которую я могу доказать вычислением, у кого-нибудь есть еще идеи? что вычислять? что касается индексации, мне нужны доказательства, чтобы доказать это. как??

Комментарии:

1. определите оптимизацию для вашего случая. что вы хотите оптимизировать? скорость? размер? расположение данных? и если это скорость, то какого рода? например, вы бы предпочли иметь быстрые вставки или быстрый выбор? можете ли вы предоставить свою текущую структуру данных и несколько примеров запросов или вариантов использования?

Ответ №1:

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

Вам также необходимо понимать для каждого тестового примера другие, более тонкие факторы:

  • Вы работаете с кэшем холодной процедуры / с кэшем теплой процедуры.
  • Вы работаете с холодным кэшем данных / с теплым кэшем данных.
  • Используете ли вы точно такую же таблицу для больших наборов данных, например, с тех пор не произошло разделения страниц.

Ответ №2:

Я бы подумал, что план объяснения до и после будет иметь большое значение для доказательства улучшения. введите описание изображения здесь

Смотрите Производительность SQL Server ЗДЕСЬ.

Ответ №3:

Какую СУБД вы используете?

Я предлагаю вам взглянуть на то, какие параметры трассировки предоставляет ваш продукт СУБД. Например, в Oracle вы можете использовать SQL Trace и проанализировать выходные данные с помощью tkprof, чтобы предоставить вам цифры, которые вам понадобятся, чтобы доказать, что ваша стратегия оптимизации базы данных показывает улучшение.