Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
Есть код Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И есть индекс ~70ГБ Код: plsql 1. 2. 3. 4. Решил сделать оптимизацию. Так как @InVarId1 принимает ограниченный набор значений (4848), (4849), (4873), (4874), (8326), (8327), (8495), (8496) Решил создать фильтрованный индекс И есть индекс ~200МБ Код: plsql 1. 2. 3. 4. 5. Но запрос не хочет его использовать. Отключаю [TestHistory_IX_VarIdResultOn] и поиск начинается по кластерному индексу. Когда добавляю к запросу подсказку Код: plsql 1. Выдает ошибку Код: sql 1. То есть [TestHistory1_IX_VarIdResultOn] вообще индекс не хочет использовать. Нужно чтобы без подсказки все заработало, код переписывать не могу. могу ток индексы создавать, удалять. Для чего нужно, индекс [TestHistory_IX_VarIdResultOn] используется только этим запросом, весит много, хотелось бы сократить объем да и быстрее будет по второму, ток вот понять не могу почему не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 07:23 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
Забыл указать Microsoft SQL Server Standard (64-bit) 11.0.7001.0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 07:39 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOНужно чтобы без подсказки все заработало, код переписывать не могу. могу ток индексы создавать, удалять.Даже не представляю, как сделать, что бы заработало без изменения запросов... Чтоб можно было option(recompile) добавить (тогда можно не указывать индекус, он сам подцепит) Тут же смысл в том, что сервер не строит план для конкретного значения, он строит план для типового варианта, и сохраняет, а типовой вариант не может использовать ваш фильтрованный индекс, потому что значение переменной в условии не фиксировано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:03 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
alexeyvg, когда делаю Код: plsql 1. 2. 3. 4. 5. 6. все равно не берет, но правда подсказка начинает работать. И тогда нужный индекс берет, но тут я явно его задал. а без явного задания его можно чтобы его брал? Получается сократить объем индекса не получится, так как фильтр будет работать ток по явно заданному значению и при условии задания подсказки какой индекс использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:23 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSO[/src] Решил сделать оптимизацию. Так как @InVarId1 принимает ограниченный набор значений (4848), (4849), (4873), (4874), (8326), (8327), (8495), (8496) Решил создать фильтрованный индекс И есть индекс ~200МБ Код: plsql 1. 2. 3. 4. 5. Чтобы оптимизатор применил фильтрованный индекс, надо в условии запроса ЯВНО повторить условие фильтрации индекса Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:26 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, то есть я не правильно сделал индекс? Код: plsql 1. 2. 3. 4. 5. и так для каждого значения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:30 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, то есть я не правильно сделал индекс? Код: plsql 1. 2. 3. 4. 5. и так для каждого значения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:37 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOaleks222, то есть я не правильно сделал индекс? Код: plsql 1. 2. 3. 4. 5. и так для каждого значения? Чем тебя не устраивает список? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:41 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, но я не могу повторить Код: plsql 1. 2. 3. 4. 5. а так создается Код: plsql 1. 2. 3. 4. 5. Но при выполнении Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Индекс все равно не используется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:42 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:42 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOкогда делаю Код: plsql 1. 2. 3. 4. 5. 6. все равно не берет, но правда подсказка начинает работать. И тогда нужный индекс берет, но тут я явно его задал. а без явного задания его можно чтобы его брал?У меня берёт без подсказки с явным указанием индекса При этом у меня нет большого индекса. У вас он есть, или нет? Если есть, то сервер его и использует, он ведь не хуже, по большому счёту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:50 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, А разве в индекс фильтр такой можно добавлять (у меня ругается)? или вы предлагаете его в select добавить? все равно не использует данный индекс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 08:57 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
alexeyvg, Да есть, то есть SQL считает что время поиска в обоих случаях одинаковое будет и берет что нравится (на данный момент большой индекс) То есть не получится про анализировать, что большой индекс больше не востребован и его можно удалить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 09:00 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOaleks222, А разве в индекс фильтр такой можно добавлять (у меня ругается)? или вы предлагаете его в select добавить? все равно не использует данный индекс. В запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 09:26 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, А вот тут и проблема что я не могу менять процедуры :( в MSSSQL есть типа такого что если встречает Код: plsql 1. 2. 3. 4. 5. 6. подменяет на Код: plsql 1. 2. 3. 4. 5. 6. 7. Если есть то статью или где почитать можно (если возможность есть такая то буду искать). А если нету такой возможности то жаль. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 10:13 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOИ есть индекс ~70ГБ Код: plsql 1. 2. 3. 4. И вы уверены, что данный индекс используется исключительно для показанного запроса? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 10:45 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
Фильтрованный индекс не используется для оптимизации, если включена принудительная параметризация в настройках базы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 11:44 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSO, Сделайте принудительное обновление статистики ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 15:34 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOДа есть, то есть SQL считает что время поиска в обоих случаях одинаковое будет и берет что нравится (на данный момент большой индекс) То есть не получится про анализировать, что большой индекс больше не востребован и его можно удалить.Если с подсказкой использует, то и без подсказки будет, если большой индекс удалить. Другое дело, что большой индекс может использоваться где то ещё, в других запросах. VicSOв MSSSQL есть типа такого что если встречает ... подменяет наНет, такого нет. Если вы не можете менять процедуры (запросы), то задача не решаема, придётся оставить большой индекс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.05.2019, 17:01 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
invm, на 90%, так как провожу на тестовом, а он как известно на все 100% не может быть объективным. Хотел создать на боевой базе и потом проанализировать есть обращения к большому индексу и если нету то и грохнуть его. А по факту так не получится, надо быть уверенным на 100% что он не нужен и грохать, а как это сделать не понятно. Владислав Колосов, Так без разнице что стоять будет в базе так как он уже с параметром запрос a_voronin, Первое что и делаю после создания удаления индексов. alexeyvg, Понятно, изменить можно, но это долгий и нудный процесс. Быстрее было если возможность была подмены. Кстати может знаете есть ли какие-то интересные статьи как по оптимизации, создания индексов без вмешательство в сам код? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2019, 05:27 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOКстати может знаете есть ли какие-то интересные статьи как по оптимизации, создания индексов без вмешательство в сам код? Опять кнопку [Сделать фсе как я хачу] ищем? Мозги надо включать, а не херней маяться. Если подумать, в описанном контексте, польза от фильтрованного индекса равна нулю. Если не меньше. 1. Обычный сработает с той же скоростью. 2. Великой экономии памяти тоже не ожидается. Нафига? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2019, 06:06 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
aleks222, Дисковое пространство экономия 100 кратное. Жмотятся на пространство, я как пришло тут постоянно шринт делали что логов что баз. Сначала ребиллд, а потом шринк, и толк от этого? вот путаюсь поменять ситуацию. Пытаюсь как-то выиграть пространство, уже один индекс нашел на 100гб :) не кому на хрен не нужный удалили. Теперь хоть куда-то расти есть базе. но боюсь это не на долго прирост где-то 1,2ГБ/в день, сейчас в лучшем случае хватит на 200-300 дней :) и все приплыли. Раз больше дельных советов нету, будем пробовать другой подход выбивания пространства. Не хотите чтобы все встало нужно увеличить объем диска :) Я пока исчерпал свои ресурсы (раз фильтрованный индексом не получилось, то все) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2019, 08:57 |
|
||
|
Фильтрованный индекс не используется в запросе.
|
|||
|---|---|---|---|
|
#18+
VicSOaleks222, Дисковое пространство экономия 100 кратное. Жмотятся на пространство, я как пришло тут постоянно шринт делали что логов что баз. Сначала ребиллд, а потом шринк, и толк от этого? вот путаюсь поменять ситуацию. Пытаюсь как-то выиграть пространство, уже один индекс нашел на 100гб :) не кому на хрен не нужный удалили. Теперь хоть куда-то расти есть базе. но боюсь это не на долго прирост где-то 1,2ГБ/в день, сейчас в лучшем случае хватит на 200-300 дней :) и все приплыли. Раз больше дельных советов нету, будем пробовать другой подход выбивания пространства. Не хотите чтобы все встало нужно увеличить объем диска :) Я пока исчерпал свои ресурсы (раз фильтрованный индексом не получилось, то все) Ну, мне ваших запросов не видать - хрустальный шар чего-то треснул. Рассмотрите модификацию кластерного индекса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.05.2019, 09:53 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1687748]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 250ms |
| total: | 364ms |

| 0 / 0 |
