powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как работает LIKE?
14 сообщений из 39, страница 2 из 2
Как работает LIKE?
    #39086537
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,

В версии MySQL 4.0 производится другая оптимизация на выражении LIKE. Если используется выражение ... LIKE "%string%" и длина строки (string) больше, чем 3 символа, то MySQL будет применять алгоритм Турбо Бойера-Мура для инициализации шаблона для строки и затем использовать этот шаблон, чтобы выполнить поиск быстрее.
MySQL 4.0 - видимо мануал древний...
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086539
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

Есть возможность хотя бы на время резко (раз в 5-10) увеличить innodb_buffer_pool_size ?
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086541
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinovне умеет MySQL использовать индекс не с начала строки.Для сканирования - почему бы и нет?
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086552
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinovвадя,

не умеет MySQL использовать индекс не с начала строки.
Он вам только показал
possible_keys-IDX_pass_name, но реально он его не использует. Избавляйтесь от LIIKE %% )))
в данном случае 10лимонов это тестовые, чтоб почувствовать разницу четче, в реальном применении для этого метода записей не будет больше лимона . и время уже нормальное будет.
и я почувствовал влияние innodb_buffer_pool_size = 512M. очень заметно.
меня испугало продолжение работы mysql после выдачи результата, но оказалось, что сам mysql здесь не причём. это и радует и огорчает....
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086557
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

вадя,

ну вот давайте попробуем удалить этот индекс и проверить время выполнения если возможно. Сразу будет видно, USE или не USE
Попробуем повесить запрос?
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086558
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftвадя,

Есть возможность хотя бы на время резко (раз в 5-10) увеличить innodb_buffer_pool_size ?
могу поднять до 1- 5гига, вечером
попробую :)
сервер крутится на виртуалке
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086592
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinovmiksoft,

вадя,

ну вот давайте попробуем удалить этот индекс и проверить время выполнения если возможно. Сразу будет видно, USE или не USE
Попробуем повесить запрос?
повесить запрос не удалось :) время осталось одинаковым 1мин или 36секунд
возросло потребление памяти
до запуск mysql занято 870М, после запуска - 970М

запускаю запрос с индексом потребление памяти поднимается до 1.2Г и стабильно держится.
без индекса потребление растёт до 1,4Г и держится...
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086615
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот теперь можно и думы думать. Индекс то все-таки не используется для ускорения, просто для скана, а насчет памяти - похоже не только индекс грузит а вся таблица, предположить больше ничего не могу.
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086619
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

а сколько выполняется LIKE "что-то%", чтобы было видно к чему стремиться?
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086633
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinovвадя,

а сколько выполняется LIKE "что-то%", чтобы было видно к чему стремиться?
не поверишь, стремиться бессмысленно...... выполняется мнгновено :)
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39086665
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

вот и рез-т нормального применения индекса, так что либо уйти от LIKE %%, либо если нужны форейжны этой таблицы - создавать параллельную на MyIsam с этим полем для полнотекстового индекса, как то так.
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39087366
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftвадя,

Есть возможность хотя бы на время резко (раз в 5-10) увеличить innodb_buffer_pool_size ?
добавил innodb_buffer_pool_size до 1512М
показатель занятости памяти остался на 1,2Г
т.е. данные и так помещались в памяти.
на быстродействие не сказалось
мнение
innodb_buffer_pool_size надо ставить на самый максимум, пока система позволяет
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39087931
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmiksoftвадя,

Есть возможность хотя бы на время резко (раз в 5-10) увеличить innodb_buffer_pool_size ?
добавил innodb_buffer_pool_size до 1512М
показатель занятости памяти остался на 1,2Г
т.е. данные и так помещались в памяти.
на быстродействие не сказалось
мнение
innodb_buffer_pool_size надо ставить на самый максимум, пока система позволяет

Это всё ок, но ещё раз, без ухода от LIKE '%xxx%' ты от сканирования всей таблицы не уйдёшь.

Переходи на полнотекстовый индекс.
...
Рейтинг: 0 / 0
Как работает LIKE?
    #39088012
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЭто всё ок, но ещё раз, без ухода от LIKE '%xxx%' ты от сканирования всей таблицы не уйдёшь.

Переходи на полнотекстовый индекс.

тут уже было сравнение возможностей like и fulltext
в общем одно другим не замещается.
like намного более гибкий для поиска, но , к сожалению, только для данных определённого размера.
1-2 миллиона , что вполне для определённого круга задач
...
Рейтинг: 0 / 0
14 сообщений из 39, страница 2 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как работает LIKE?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]