Вы также можете использовать индексы для предотвращения дублирования данных, то есть вы можете создавать уникальные индексы. Это полезно, когда у вас есть столбец, который не является частью первичного ключа, но все равно должен быть уникальным. Хорошим примером является случай, когда вы используете суррогатный ключ в качестве первичного ключа в вашей таблице, но некоторые другие столбцы также должны быть уникальными.
Что касается того, как индексирование влияет на базу данных в целом, индексы используются в первую очередь для обеспечения целостности данных и производительности. Индексы могут вызывать проблемы при загрузке большого количества данных (то есть с помощью массовой загрузки или другими способами), поскольку при каждой загрузке записи индексы должны обновляться. Есть способы отключить это, что часто делается, когда загружаются большие объемы данных, но компромисс заключается в том, что вы должны убедиться, что данные верны, потому что если это не так, и вы пытаетесь повторно включить По индексам операция не удастся.
Относительно того, влияет ли добавление дополнительных индексов на производительность, это зависит от того, сколько индексов у вас уже есть. Чем больше у вас индексов, тем больше работы оптимизатор должен решить, какой индекс использовать. А также, это зависит от размера таблицы, количества столбцов и т. Д.
Одна вещь, которую я настоятельно рекомендую при определении влияния индекса, - это посмотреть на план запроса, чтобы определить, какой индекс используется. Если вы пытаетесь ускорить выполнение заданного запроса, это скажет вам, помог ли индекс.