powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ускорение LIKE '%str%' в версии 5.7
25 сообщений из 121, страница 2 из 5
Ускорение LIKE '%str%' в версии 5.7
    #39091802
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumix,
ну значит я ошибся.....
первоначильные пробы были на ....64 битах
поднял копию виртуалки, произвел тесты аналогичные тесты - запрос выполняется 36 сек
эта же цифрабыла и первоначально , только она чередовалась с 1 минутой(но потом остановилась н 1минуте) -
чем объяснить такое - хз...
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091809
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя, ну, фиг знает короче... главное, что вы поставили 5.7, у вас получилась высокая скорость и это главное, а все остальное - фиг с ним!
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091813
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumix,
в общем-то радоваться нечему, установка не debian7 вынуждает почти полностью апгрейдить систему...
так что настоящего использования 5.7.9 ещё ждать и дать....
врядли кто будет боевые сервера так апгрейдить
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091816
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

)))
перестань заниматься ерундой...
я уже под эту бредятину создал тестовую таблицу 3млн записей поле varchar(50) забито англ алфавитом в случайном порядке
проверял 555 раз
индекс НЕ ИСПОЛЬЗУЕТСЯ... и никогда не будет (можно подождать версии mysql 7)
в каких-то случаях при LIKE %выражение_До_4х_символов% запрос работает меньше 1сек. (символы выбираю наугад)
может быть срабатывает какой-то алгоритм, упомянутый выше
но это не ПРАВИЛО. Никаких ускорений быть не может.
64бит от х32 отличается только тем что система->программы могут использовать более 4Г ОЗУ
все что иногда видите, принимая за ускорение - это чистая случайность...
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091825
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinov,
ну почему не проверять? есть время , есть возможность ...
есть спортивный интерес
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091839
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

это НЕРЕАЛЬНО, воспримите как бытность
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091846
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяLumix,
в общем-то радоваться нечему, установка не debian7 вынуждает почти полностью апгрейдить систему...
так что настоящего использования 5.7.9 ещё ждать и дать....
врядли кто будет боевые сервера так апгрейдить

У нас все боевые проекты вообще работают на 5.0.27 - это релиз осени 2006 года и <censored>, потому что мы все равно пользуемся лишь малюсеньким сабсетом из всех существующих возможностей сервера, и этот сабсет расширять не собираемся по организационным причинам.

Все эти новые плюшки имеют смысл только для хайлоадов, где увеличение эффективности запросов на 20% может сэкономить 10 лямов в месяц, а в наших проектах +/- 30% эффективности вообще всем посрать. Когда что-то начинает тормозить в 5-10 раз, тогда есть смысл разбираться, но каждый раз когда проводили разборки подобных случаев всегда находилось решение как можно на том же самом сабсете сделать все быстрее и проще.

Из свежих примеров.
Был очень жирный и сложный селект * групп, чем-то похожий на формирование списка тем форума из списка сообщений с сортировкой по дате, чтобы самые свежие были сверху. Сам запрос лимитированный на 30-50 позиций, а вот если получать count(*) на этот запрос, то получается очень жирный, а если втыкать SQL_CALC_FOUND_ROWS / found_rows() то получится вообще запрос без индексов.

В итоге я разобрался в ситуации и властью данной мне штатом Аляса принял решение - для всех групповых запросов больше никогда не делаем count(*), а вместо кнопочек страниц делаем две кнопки - вперед, назад и номер текущей страницы.

То есть может быть такая ситуация, что пользователь видит 20 строчек, переходит на вторую страницу, а там пусто, а если он видит на первой странице 50 строчек, на второй 50 строчек, то в итоге он не сможет сразу узнать сколько всего же в базе сгруппированных строчек.

Но если пользователю очень приспичит, то он может в стиле детской игры на угадывание чисел вводить номера страниц и методом больше меньше угадать число групп. Открыл 30 страницу там есть элементы. Открыл 80 страницу, там пусто, открыл 60 страницу там есть, открыл 70 страницу там пусто. И так выяснил, что элементы заканчиваются на 63 странице. 630 * 10 = 6300 / 2 = 3150 групп.

Вот таким макаром решается большинство задач. То есть вместо того, чтобы тупо долбиться в стену, каждая задача решается в общем жизненном пространстве и иногда проще вообще не решать задачу через мускул как я рассказал вот в этом случае.

А то я смотрю иногда какие тут темы создают на форуме 18346767 18352742 и думаю, то ли это люди подневольные работают в каких-то то ли банках, то ли взяли консалтинговый проект какого-то крупного завода, то ли просто это какие-то мазохисты... я когда вижу такие портянки, то у меня все внутри просто сжимается от боли...

У меня нет точной метрики, но по ощущениям у нас в среднем sql запрос занимает 3-4 строчки, а самые длинные строчек 10-12, а тут люди присылают какие-то sql-ные портянки на 3 экрана...
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091855
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты почитай на форуме mssql - там 5-6 экраном норма
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091868
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяты почитай на форуме mssql - там 5-6 экраном норма

Да, я заходил туда однажды, у меня сжалось очко, я очень быстро свалил от туда, и больше к ним не захожу.

И я глубоко в своем сердце по-черному радуюсь, когда получаю новости типа Stack Overflow переехали с винды на никсы.))))
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091871
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumixвадяты почитай на форуме mssql - там 5-6 экраном норма

Да, я заходил туда однажды, у меня сжалось очко, я очень быстро свалил от туда, и больше к ним не захожу.

И я глубоко в своем сердце по-черному радуюсь, когда получаю новости типа Stack Overflow переехали с винды на никсы.))))
дак такие большие запросы не означают, что это плохо.
просто там подход другой - разделение процессов, база может очень много и быстрее сделать.
я постоянно наблюдаю как многие делают циклы на java или php а данные дерут в каждом цикле
mssql-щики заставляют делать это всё не сервере и с него получают только готовый результат. они используют возможности сервера под 100%, остальной народ процентов на 20....
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091885
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Alex_Ustinovвадя,

)))
перестань заниматься ерундой...
я уже под эту бредятину создал тестовую таблицу 3млн записей поле varchar(50) забито англ алфавитом в случайном порядке
проверял 555 раз
индекс НЕ ИСПОЛЬЗУЕТСЯ... и никогда не будет (можно подождать версии mysql 7)
в каких-то случаях при LIKE %выражение_До_4х_символов% запрос работает меньше 1сек. (символы выбираю наугад)
может быть срабатывает какой-то алгоритм, упомянутый выше
но это не ПРАВИЛО. Никаких ускорений быть не может.
64бит от х32 отличается только тем что система->программы могут использовать более 4Г ОЗУ
все что иногда видите, принимая за ускорение - это чистая случайность...
ну можешь как угодно спорить и как угодно называть...
сделал проверку и до и после
всё 64 бита
5.6.21 - 35 сек
5.7.9 - 5 сек
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091887
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я не знаю что последняя и как использует, я вижу повторяемость результата
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091895
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадядак такие большие запросы не означают, что это плохо.

я про другое...
например, я борд не катаю, и поэтому мне не требуется покупать снарягу, гоупро и путевку в геш
точно так же и большие запросы
я просто не хочу связывать свою жизнь с проектами, которые работают на портянках sql-запросов
я не про плохо/хорошо, а про стиль труда и жизни

вадяmssql-щики заставляют делать это всё не сервере и с него получают только готовый результат. они используют возможности сервера под 100%, остальной народ процентов на 20....

мне кажется тут важно разграничивать два понятия:
1) список функциональных возможностей сервера (поверхностная, горизонтальная характеристика)
2) мощность отжима на стандартном сабсете (глубинная, вертикальная характеристика)

например, в 5.7 появилась новая "горизональная" возможность - json поля
не факт, что мы будем её юзать
и от того, что мы её не юзаем, мы сильно ничего не теряем

но совсем другая песня, когда мы не использовали select count(*), а вместо этого выполняли запрос целиком, данные не получали, но брали служебный ответ сколько он выбрал полей. Вот это уже глубинная возможность, которую глупо не использовать

это я к чему клоню

я убежден, что с точки зрения архитектуры систем (не только компьютерных, но и вообще любых систем) и с точки зрения организации, использование возможностей системы за пределами ядра парето, приводит к резкому снижению маржинальной эффективности, и как следствие к смерти системы из-за существенно превышения затрат по жизнеобеспечению системы над размером внешнего полезного эффекта самой системы

поэтому задача руководителя-организатора подобрать такой сабсет инструментов, чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х. Когда система тратит Х и приносит Х, то получается, что система существует только как вещь в себе, а если система тратит Х, а приносит 0.5Х, тогда она ещё и вредительством занимается

я в этом подходе вижу как бы секрет вечной молодости, а sql-портянки - это с моей точки зрения как бы дорога к смерти, хотя я и отлично понимаю, что она неизбежна, когда речь идет о крупных и сверхкрупных проектах
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091903
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumix,
вот последннее время я убеждаюсь в тм что мне очень повезло, что в своё время пришлось поработать на access...
подход к системам в которых используются базы очень хорошо там устроен, как бы этот акс не хаяли и не притесняли.

авторя убежден, что с точки зрения архитектуры систем (не только компьютерных, но и вообще любых систем) и с точки зрения организации, использование возможностей системы за пределами ядра парето, приводит к резкому снижению маржинальной эффективности, и как следствие к смерти системы из-за существенно превышения затрат по жизнеобеспечению системы над размером внешнего полезного эффекта самой системы

поэтому задача руководителя-организатора подобрать такой сабсет инструментов, чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х. Когда система тратит Х и приносит Х, то получается, что система существует только как вещь в себе, а если система тратит Х, а приносит 0.5Х, тогда она ещё и вредительством занимается
вот эти слова там очень хорошо реализуются.
и этот подход позволяет реализовывать много чего совершенно "не стандартно" с точки зрения стандарного программирования...
и получается это чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х.
и это приминимо к mysql.
то что счас используют из возможностей баз данных (mysql, mssql и пр.) это мизерный процент их возможности, и это говорит о плохом знании этой области.
я работал с mssql и его возможности при использовании хранимок настолько огромны, что " или даже 10Х. " не придел..
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091905
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор, а sql-портянки - это с моей точки зрения как бы дорога к смерти,

дорога к смерти перекладывание операций с данными на плечи инструмента не предназначенного для этого. это как уголь перевозить на кабриолете....
написать портянку на php, си, java - это круто , написать на sql в половину меньшую портянку и выполняющую тож самое - это некруто.....
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091914
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
c mssql никогда не работал, а на аксессе написал много чего для реальных заказчиков, но это было давно, когда аксесс ещё был Access 97

вадянаписать портянку на php, си, java - это круто , написать на sql в половину меньшую портянку и выполняющую тож самое - это некруто .....

На мой взгляд критерий выбран ошибочно...
круто/некруто - это больше из мира конференций по программированию или иного сборища гиков...

в наших проектах в условиях очень часто изменяемых требований заказчиков используются другие критерии

1) насколько просто проводить изменения и отладку (скорость создания готового решения задачи заказчика)

2) насколько низко установлен технический порог входа (или говоря проще, насколько это можно поручить джуниорам или вообще аутсорсерам)

1) + 2) = насколько легко перекидывать задачи от одного исполнителя другому и насколько легко все это контроллировать

Именно поэтому я всякие супер-пупер штучки из недр баз так опасны для живой разработки и их есть смысл использовать на
а) высоконагруженных системах
б) с низкой изменяемостью (либо с огромным запасом времени на изменения)
в) с серьезными бюджетами (mssql платная + работает на платной оси)
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091921
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор1) насколько просто проводить изменения и отладку (скорость создания готового решения задачи заказчика)

2) насколько низко установлен технический порог входа (или говоря проще, насколько это можно поручить джуниорам или вообще аутсорсерам)

1) + 2) = насколько легко перекидывать задачи от одного исполнителя другому и насколько легко все это контроллировать
подход и правильный и не правильный...
вместо того чтоб поднимать уровень исполнителей , мы опускаемся до их уровня....
я предпочитаю действовать по принцЫпу - мэдлеэно, мэдленно сойти и всё стадо....
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091922
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в своё время я потратил кучу времени разбираясь с тонкостями акса, mssql, и сделал вещь, работая с которой операторы обслуживали клиентов не кладя трубку, во время разговора с ним делали и подбор товара и счет.
а уж сертификаты и прочие сопроводиловки к товару они делали одним нажатием- и само все вылезало из принтера..
это всё на точкостях системы..

круто/некруто - это больше из мира конференций по программированию или иного сборища гиков...
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091929
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты недавно такое исследовал (ну почти)
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
 SELECT
    t.name,
    t.id
  FROM (SELECT SQL_SMALL_RESULT
      pass.id,
      pass.name
    FROM pass
    WHERE pass.name LIKE '%35000%' LIMIT 5) AS t

  UNION

  SELECT SQL_SMALL_RESULT
    'показано 5 из' AS f,
    COUNT(pass.id)
  FROM pass
  WHERE pass.name LIKE '%35000%';


5 сек.
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091935
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяподход и правильный и не правильный...
вместо того чтоб поднимать уровень исполнителей , мы опускаемся до их уровня....
я предпочитаю действовать по принцЫпу - мэдлеэно, мэдленно сойти и всё стадо....

не совсем...
тут речь идет о том, что рядовых солдат в армии гораздо больше чем офицеров
суть принципов организации процесса, о котором я веду речь, заключается в вычленении как можно большего числа как можно более простых операций для поручения их как можно ниже (рядовым)
не все, но объемы такого "делегирования" удается сделать очень большими
либо ВСЕ гении, либо ВСЕ стадо - это ошибочное понимание ситуации

вадяв своё время я потратил кучу времени разбираясь с тонкостями акса, mssql, и сделал вещь, работая с которой операторы обслуживали клиентов не кладя трубку, во время разговора с ним делали и подбор товара и счет.
а уж сертификаты и прочие сопроводиловки к товару они делали одним нажатием- и само все вылезало из принтера..
это всё на точкостях системы..

не вижу в этом примере вообще никакого реального аргумента переноса бизнес-логики в базу
более того, я даже не вижу признаков хайлоада в вашем примере
даже если у вас в колл-центре было бы 100 или 200 операторов - это все равно смешная нагрузка
тем более по локальной сети
все о чем вы пишите можно замутить на элементарном select/update/insert
распечатка и рисование документов вообще к бд отношения не имеет...
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091937
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumix,
авторВсе эти новые плюшки имеют смысл только для хайлоадов, где увеличение эффективности запросов на 20% может сэкономить 10 лямов в месяц, а в наших проектах +/- 30% эффективности вообще всем посрать. Когда что-то начинает тормозить в 5-10 раз, тогда есть смысл разбираться, но каждый раз когда проводили разборки подобных случаев всегда находилось решение как можно на том же самом сабсете сделать все быстрее и проще.

Вообще, я тоже не совсем понимаю откуда восторги. Новости о новой версии начинаются с восхваления совершенно бесполезных для традиционных бд вещей.
Однако результат достигнут - вот даже пользователи тему новую на форуме создали по своей инициативе.
Воистину, эпоха маркетинга.

Конечно, там и другие дельные улучшения имеются.
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091940
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот кстати, отличный пример
там какой-то чувак новую тему открыл 18354445

пишет: я в мускуле новичок, помогите мне великие гуру триггер проверьте, а то ссыкатно мне вдруг что-то пойдет не так...
представляете, чувак написал код и теперь боится его исполнять
чувствуете масштаб трагедии??
я считаю - это не он виноват, а это виноват архитектор их системы
а этот джуниор просто стрелочник

с архитектурной точки зрения - это ведь бомба замедленного действия, которая взорвется, если система будет сильно изменяться под воздействием требованием заказчика

мы такие задачи решаем созданием отдельных самостоятельных как мы их называем нормализаторов, и поэтому никаких подводных камней такого типа никогда не бывает, а значит ни новичок, ни даже контролирующий дед не станут жертвами каких-то непонятных эффектов

достаточно открыть код нормализатора и сразу становится понятны все правила, которые только есть применительно как одному объекту, так и к различным комбинациям или вообще по всей системе, потому что этих правил может быть не одно, а сто и они могут меняться по 15 раз в неделю
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091972
Фотография Alex_Ustinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяну можешь как угодно спорить и как угодно называть...
сделал проверку и до и после
всё 64 бита
5.6.21 - 35 сек
5.7.9 - 5 сек
замечательно, я очень рад за развитие MySQL.
5 сек. это на самом деле очень долго, сравните опять с вариантом LIKE "что-то%", когда действительно используется индекс
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091979
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumixвадя64 -5.7.9 - 4-5 сек
32 - 5.6 - 60 сек
я хочу исключить свою субъективность...

Мысль Зива была в том, что

64 -5.7.9 - 4-5 сек
32 - 5.6 - 60 сек
64 - 5.6 - 6 сек
мысльмоя в том, что 32 бита - это на порядки меньше кэш данных, чем на 64 бита.

и в том, что надо все-же показывать запросы и планы.
...
Рейтинг: 0 / 0
Ускорение LIKE '%str%' в версии 5.7
    #39091980
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lumixвадя, ну, фиг знает короче... главное, что вы поставили 5.7, у вас получилась высокая скорость и это главное, а все остальное - фиг с ним!
не фиг с ним, потому что на самом деле он нифига никакую высокую скорость не получил. а только думает, что получил.
...
Рейтинг: 0 / 0
25 сообщений из 121, страница 2 из 5
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Ускорение LIKE '%str%' в версии 5.7
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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