|
|
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
есть запрос Код: sql 1. выполняется за 0.05 сек делаю так Код: sql 1. выполняется уже за 2сек почему такое различие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 21:32 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
Потому что второе условие требует кэширования на диск. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 21:55 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
AkinaПотому что второе условие требует кэширования на диск.как это исключить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 22:03 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. Причём желательно внутрь запихать наиболее селективный шаблон. На версии 8+ можно использовать CTE. Но ничего не поможет, если даже на наиболее селективном шаблоне промежуточная выборка "пухлая". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 22:17 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
AkinaНа версии 8+ можно использовать CTE.это что ? дай ссылку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 22:23 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
AkinaПотому что второе условие требует кэширования на диск.а почему? а если добавить памяти для кеша? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 22:25 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяесть запрос Код: sql 1. выполняется за 0.05 сек делаю так Код: sql 1. выполняется уже за 2сек почему такое различие?Утрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 22:40 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
miksoftУтрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу?у меня 3м записей и 10+гиг для кэша, т.е. всё в кэше. и один like срабатывает только по памяти. если сделать кэш 20гиг? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 06:30 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяесть запрос Код: sql 1. выполняется за 0.05 сек делаю так Код: sql 1. выполняется уже за 2сек почему такое различие? Потому что это разные запросы, они выполняться за разгон время будут. Like надо писать только с % в конце, и только достаточно длинные паттерны Иначе это не оптимизирует ся ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:08 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяесть запрос Код: sql 1. выполняется за 0.05 сек делаю так Код: sql 1. выполняется уже за 2сек почему такое различие? А ну да, парень, если ты время мерить хочешь, limit убирай всегда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:10 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяэто что ? дай ссылку WITH Syntax (Common Table Expressions) вадяа если добавить памяти для кеша?Память не поможет. Всё равно кэшируется НА ДИСК. Вот перенос базового каталога на SSD - это поможет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:25 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяmiksoftУтрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу?у меня 3м записей и 10+гиг для кэша, т.е. всё в кэше. и один like срабатывает только по памяти. если сделать кэш 20гиг?Так селективность условий какая? Даже если не надо все это поднимать с диска, то для CPU работа остается в полном объеме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:48 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
AkinaВсё равно кэшируется НА ДИСК.Почему? тут же нет ни сортировки, ни группировки. AkinaВот перенос базового каталога на SSD - это поможет.Тогда уж в RAM, если ее полно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:48 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадя10+гиг для кэшаА MySQL об этом знает? Настройки заданы и тип таблицы позволяет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:57 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
MasterZivА ну да, парень, если ты время мерить хочешь, limit убирай всегдадля абсолютного сравнения - согласен. Akina, твой совет не помог 12 Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. время одинаковое ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 07:59 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
miksoftА MySQL об этом знает? Настройки заданы и тип таблицы позволяет?всё прописано в .ini AkinaПамять не поможет. Всё равно кэшируется НА ДИСК. Вот перенос базового каталога на SSD - это поможет.обращения к диску нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 08:05 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
как выполняется такое: Код: sql 1. если первый like возвращает false, выполняется ли второй like? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 08:32 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадяесли первый like возвращает false, выполняется ли второй like?Конечно. К тому же "второй по тексту" вовсе не означает "второй при выполнении". вадя , а мы когда-нибудь увидим DDL таблицы, EXPLAIN запроса, и ответ на вопрос miksoftТак селективность условий какая? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 08:38 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
Akina, Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Код: sql 1. 2. 3. 4. 5. 6. "id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull30360841,23"Using where" Код: sql 1. 2. 3. 4. 5. 6. 7. 8. "id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull30360841,23"Using where" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 08:50 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
AkinaКонечно. К тому же "второй по тексту" вовсе не означает "второй при выполнении".т.е. если первое условие не удовлетворяет , а значит бессмысленно проверять второе, второе всё равно будет проверено? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 08:53 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
вадявторое всё равно будет проверено?Да. По EXPLAIN - оптимизатор явно развернул подзапрос. По селективности: покажите результат запроса Код: sql 1. 2. А также - раз Код: sql 1. , то дополнительный вопрос - указанные подстроки могут встречаться как в Name, так и в BrandName? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 09:15 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. 2. 3. 4. 5. 6. 7. 8. "id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull3036084100,0"Using where" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 09:15 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
[quote Akina], то дополнительный вопрос - указанные подстроки могут встречаться как в Name, так и в BrandName?[/quoteсоздаётся "универсальный" поиск, т.е. считается, что заранее неизвестно где может втретиться Код: sql 1. 2. "COUNT(*)""SUM(zz LIKE '%зяй%')""SUM(zz LIKE '%65%')""SUM(zz LIKE '%зяй%' AND zz LIKE '%65%')"2925390"1419""32344""39" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 09:20 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
полнотекстовый поиск тебе поможет он для этого и придуман. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 09:28 |
|
||
|
Как оптимизировать выбор с like и AND
|
|||
|---|---|---|---|
|
#18+
123 Код: sql 1. 2. 3. 4. 5. 6. 7. Код: sql 1. 2. 3. 4. Код: sql 1. 2. 3. 4. 5. 6. 7. 2.3052.3042.084 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.09.2018, 09:33 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=46&tid=1829581]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
35ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 148ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...