Чтобы оптимизировать запросы SELECT, я запускаю их как с индексом, так и без него и измеряя разницу. Я запускаю кучу разных похожих запросов и пытаюсь выбрать разные данные, чтобы убедиться, что кеширование не отбрасывает результаты. Однако на очень больших таблицах индексы занимают очень много времени для создания, и у меня есть несколько разных представлений о том, какие индексы будут уместны.Отключение индекса в Oracle
Возможно ли, что в Oracle (или любой другой базе данных) выполнить запрос, но сообщить базе данных не использовать определенный индекс при выполнении запроса? Или просто полностью отключите индекс, но сможете легко включить его обратно, не перепроверяя всю таблицу? Это упростит тестирование, так как я могу создать все индексы, о которых я сейчас думаю обо всем, а затем попробовать свои запросы, используя разные.
В качестве альтернативы, есть ли лучший способ оптимизировать запросы на больших таблицах и узнать, какие индексы лучше всего создавать?
Когда вы говорите «запрос», ссылаетесь ли вы на запросы SELECT, или на 'UPDATE' и' INSERT'? Обычно это «INSERT» имеет свою производительность, на которую негативно влияют индексы. «SELECT» обычно улучшает свою производительность. –
Хороший вопрос - я на самом деле говорю об оптимизации запросов SELECT, и я редактирую свой вопрос, чтобы прояснить это. Моя цель - оптимизировать мои запросы SELECT до приемлемого уровня с наименьшим количеством индексов, поскольку больше индексов повреждает мои обновления и удаляет. –