Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Ускорение запроса
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, коллеги! Есть база данных сайта объявлений. Медленно выполняется запрос поиска по всей базе с минимальным набором фильтров. Разбирая и упрощая запрос, обнаружил что наибольшее торможение происходит на основной таблице. Когда выбираются фильтры и добавляются условия, то дело обстоит достаточно благополучно. Используются остальные созданные индексы, происходит отсев строк по условию и т.д. В таблице ad примерно 125 тыс. строк. Можно ли каким-то образом ускорить выполнение подобного запроса? Итак, запрос: Код: sql 1. 2. 3. 4. 5. 6. Время выполнения примерно 3 сек. Структура таблицы: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. План запроса во вложении. Версия сервера: 5.5.57-MariaDB-1~wheezy. Версия MySQL-клиента: mysqlnd 5.0.12-dev - 20150407 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 14:10 |
|
||
|
Ускорение запроса
|
|||
|---|---|---|---|
|
#18+
перейти на версию 8 сделать индекс IDX_STATUS_UPDATE_RAISED с DESC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 14:12 |
|
||
|
Ускорение запроса
|
|||
|---|---|---|---|
|
#18+
Попробовал свой запрос, изменив сортировку на сортировку по возрастанию. Результат примерно такой же. Где-то попадалась информация, что MYSQL может по индексу в обе стороны ходить (могу заблуждаться) ScareCrowперейти на версию 8 сделать индекс IDX_STATUS_UPDATE_RAISED с DESC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 14:35 |
|
||
|
Ускорение запроса
|
|||
|---|---|---|---|
|
#18+
https://dev.mysql.com/doc/refman/8.0/en/descending-indexes.html Previously, indexes could be scanned in reverse order but at a performance penalty. Код: sql 1. 2. 3. попробуйте исключить SQL_CALC_FOUND_ROWS попробуйте исключать по одному полю из where и order by и смотреть скорость. попробуйте переписать запрос на Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2018, 14:55 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39642965&tid=1829862]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 384ms |

| 0 / 0 |
