|
|
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток, форумчане! В последнее время стандартный скрипт для выгрузки пользовательских входов в систему стал очень долго отрабатывать, обычно запрашиваются данные за месяц. Время отработки в 15 минут выглядит как-то грустно. Есть у кого-то предложения по оптимизации? Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Заранее благодарен за помощь! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:04 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
udzhin, индексы на таблице какие? explain показать можете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:16 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
tanglir, Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:24 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
tanglir, по explain есть небольшая сложность, сейчас постараюсь оформить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:39 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
tanglir, explain показать увы не смогу, запрос написан через openquery, а работаю в microsoft sql server management studio. Из-за openquery не могу и Analyze Query in Database Engine Tuning Advisor воспользоваться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:45 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
udzhinработаю в microsoft sql server management studio Ну так задавайте вопрос в ветке MS SQL, а не MySQL... Впрочем, на ненормализованных и неиндексированных данных ждать хоть какого-то улучшения бессмысленно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:47 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
udzhinexplain показать увы не смогу, запрос написан через openqueryНу тогда скажите хотя бы, сколько записей попадает под условие отбора, т.е. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 11:55 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
udzhinобычно запрашиваются данные за месяц.udzhin Код: sql 1. 2. Так вы последний день февраля потеряете. Там надо 1 марта ставить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 12:05 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
miksoftudzhinобычно запрашиваются данные за месяц.udzhin Код: sql 1. 2. Так вы последний день февраля потеряете. Там надо 1 марта ставить. да это-то понятно, написал ведь "обычно" :) tanglirudzhinexplain показать увы не смогу, запрос написан через openqueryНу тогда скажите хотя бы, сколько записей попадает под условие отбора, т.е. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. в результирующей выгрузке за месяц без группировки - ~897 строк. К слову добрался таки до самой БД, вот explain id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE xc range IX_log_ts IX_log_ts 9 (null) 3803496 Using where; Using temporary; Using filesort На самой БД скрипт отработал за 3,5 минуты вместо 16,5... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 12:52 |
|
||
|
Оптимизация запроса
|
|||
|---|---|---|---|
|
#18+
А за сколько времени вы хотите, чтобы сервер вам вычитал, отсортировал и сгруппировал без малого миллион записей? Да ещё с промежуточной записью на диск... PS. Реально записей около миллиона, а эксплейн показывает почти четыре. Что-то у вас не то со статистикой, впрочем, её пересбор мало чем поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2016, 13:38 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39192029&tid=1832063]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
189ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 522ms |

| 0 / 0 |
