Я чувствую, что это преждевременная оптимизация, потому что наше приложение еще даже не выпущено. Я предложил отслеживать медленные запросы, как только мы запустим их, а затем добавить индексы соответственно.
Вы не можете относиться к своим конечным пользователям и производственной среде как к обеспечению качества. Другими словами, вы говорите, что разберетесь в производстве. Я не думаю, что это правильный путь, и я вижу, что этот подход идет ужасно неправильно каждый день .
Вы должны помнить одну вещь, поскольку вы не можете нарисовать это широкой кистью.
Какова ваша общая нагрузка ?
Это может показаться очевидным или скучным, но на практике это важно. Если у вас есть 10 запросов, которые составляют 98% вашей рабочей нагрузки (довольно часто, хотите верьте, хотите нет), я бы рекомендовал провести тщательный анализ перед производством . Имея реалистичные и репрезентативные данные, убедитесь, что эти 10 запросов настолько хороши, насколько это возможно ( безупречная трата драгоценного времени и почти не достижимая).
Для остальных 200 запросов, которые составляют 2% рабочей нагрузки , это те, которые, скорее всего, не стоят тонны усилий, и будут создавать странные проблемы при устранении неполадок в производстве. Это тоже реальность, а не ужасно плохая вещь. Но это не означает, что следует игнорировать рекомендации по индексированию или делать предположения относительно извлечения данных.
Распространенной и хорошей практикой является определение производительности базы данных до начала производства. На самом деле, для такого типа вещей, называемых администратором разработки , существует довольно распространенная позиция .
Но...
Некоторые заходят слишком далеко и сходят с ума, добавляя индексы «на всякий случай». Кто-то рекомендует это пропущенный индекс? Добавьте его и четыре других варианта. Также плохая идея. Вам нужно не только подумать о поиске данных, но и об изменении данных? Чем больше индексов у вас в таблице, вообще говоря, тем больше накладных расходов у вас при изменении данных.
Как и большинство вещей, есть здоровый баланс.
В качестве забавного небольшого примечания стороны ... Множественное число "Индекса"
«Индексы» для финансовых людей
«Индексы» для нас