Мне нравится думать, что я знаю достаточно теории, но у меня мало опыта по оптимизации БД в реальном мире.
Я хотел бы знать точки зрения, мысли или опыт.
Давайте представим сценарий, подобный:
Таблица А
Ключ: с1, с2, с3, с4
Индекс: с7, с3, с2
Таблица B
Ключ: с1, с2, с3, с4
Индекс: с1, с5
Все не сгруппированы.
Таблицы имеют более 40 полей.
Они кормятся ежедневно ночью и имеют некоторые обновления в течение дня.
Таблица A, если больше ключей получают выгоду от ключа, чем от индекса, может ли индекс оказать негативное влияние?
Потому что вставка / удаление должно обновлять 2 индекса вместо 1.
Таблица B содержит дополнительное поле в индексе, отсутствующее в ключе.
Может запрос с использованием c1, c5
Польза от этого Ключа ?:
Ключ: с1, с2, с3, с4, с5
Чтобы индекс можно было отбросить.
Как влияет порядок полей?
Ключ: с1, с2, с3
Ключ: c3, c1, c2
Типичным сценарием для меня является process_date, client_number, operation.
И каждый день он передает кучу данных (process_date).