|
|
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumix, ну значит я ошибся..... первоначильные пробы были на ....64 битах поднял копию виртуалки, произвел тесты аналогичные тесты - запрос выполняется 36 сек эта же цифрабыла и первоначально , только она чередовалась с 1 минутой(но потом остановилась н 1минуте) - чем объяснить такое - хз... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 19:26:52 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадя, ну, фиг знает короче... главное, что вы поставили 5.7, у вас получилась высокая скорость и это главное, а все остальное - фиг с ним! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 19:39:57 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumix, в общем-то радоваться нечему, установка не debian7 вынуждает почти полностью апгрейдить систему... так что настоящего использования 5.7.9 ещё ждать и дать.... врядли кто будет боевые сервера так апгрейдить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 19:49:43 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадя, ))) перестань заниматься ерундой... я уже под эту бредятину создал тестовую таблицу 3млн записей поле varchar(50) забито англ алфавитом в случайном порядке проверял 555 раз индекс НЕ ИСПОЛЬЗУЕТСЯ... и никогда не будет (можно подождать версии mysql 7) в каких-то случаях при LIKE %выражение_До_4х_символов% запрос работает меньше 1сек. (символы выбираю наугад) может быть срабатывает какой-то алгоритм, упомянутый выше но это не ПРАВИЛО. Никаких ускорений быть не может. 64бит от х32 отличается только тем что система->программы могут использовать более 4Г ОЗУ все что иногда видите, принимая за ускорение - это чистая случайность... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 19:52:52 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinov, ну почему не проверять? есть время , есть возможность ... есть спортивный интерес ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 20:01:42 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадя, это НЕРЕАЛЬНО, воспримите как бытность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 20:19:49 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадя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 экрана... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 20:29:43 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
ты почитай на форуме mssql - там 5-6 экраном норма ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 20:48:45 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадяты почитай на форуме mssql - там 5-6 экраном норма Да, я заходил туда однажды, у меня сжалось очко, я очень быстро свалил от туда, и больше к ним не захожу. И я глубоко в своем сердце по-черному радуюсь, когда получаю новости типа Stack Overflow переехали с винды на никсы.)))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 21:17:23 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumixвадяты почитай на форуме mssql - там 5-6 экраном норма Да, я заходил туда однажды, у меня сжалось очко, я очень быстро свалил от туда, и больше к ним не захожу. И я глубоко в своем сердце по-черному радуюсь, когда получаю новости типа Stack Overflow переехали с винды на никсы.)))) дак такие большие запросы не означают, что это плохо. просто там подход другой - разделение процессов, база может очень много и быстрее сделать. я постоянно наблюдаю как многие делают циклы на java или php а данные дерут в каждом цикле mssql-щики заставляют делать это всё не сервере и с него получают только готовый результат. они используют возможности сервера под 100%, остальной народ процентов на 20.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 21:28:41 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Alex_Ustinovвадя, ))) перестань заниматься ерундой... я уже под эту бредятину создал тестовую таблицу 3млн записей поле varchar(50) забито англ алфавитом в случайном порядке проверял 555 раз индекс НЕ ИСПОЛЬЗУЕТСЯ... и никогда не будет (можно подождать версии mysql 7) в каких-то случаях при LIKE %выражение_До_4х_символов% запрос работает меньше 1сек. (символы выбираю наугад) может быть срабатывает какой-то алгоритм, упомянутый выше но это не ПРАВИЛО. Никаких ускорений быть не может. 64бит от х32 отличается только тем что система->программы могут использовать более 4Г ОЗУ все что иногда видите, принимая за ускорение - это чистая случайность... ну можешь как угодно спорить и как угодно называть... сделал проверку и до и после всё 64 бита 5.6.21 - 35 сек 5.7.9 - 5 сек ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 21:56:29 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
я не знаю что последняя и как использует, я вижу повторяемость результата ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 21:58:56 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадядак такие большие запросы не означают, что это плохо. я про другое... например, я борд не катаю, и поэтому мне не требуется покупать снарягу, гоупро и путевку в геш точно так же и большие запросы я просто не хочу связывать свою жизнь с проектами, которые работают на портянках sql-запросов я не про плохо/хорошо, а про стиль труда и жизни вадяmssql-щики заставляют делать это всё не сервере и с него получают только готовый результат. они используют возможности сервера под 100%, остальной народ процентов на 20.... мне кажется тут важно разграничивать два понятия: 1) список функциональных возможностей сервера (поверхностная, горизонтальная характеристика) 2) мощность отжима на стандартном сабсете (глубинная, вертикальная характеристика) например, в 5.7 появилась новая "горизональная" возможность - json поля не факт, что мы будем её юзать и от того, что мы её не юзаем, мы сильно ничего не теряем но совсем другая песня, когда мы не использовали select count(*), а вместо этого выполняли запрос целиком, данные не получали, но брали служебный ответ сколько он выбрал полей. Вот это уже глубинная возможность, которую глупо не использовать это я к чему клоню я убежден, что с точки зрения архитектуры систем (не только компьютерных, но и вообще любых систем) и с точки зрения организации, использование возможностей системы за пределами ядра парето, приводит к резкому снижению маржинальной эффективности, и как следствие к смерти системы из-за существенно превышения затрат по жизнеобеспечению системы над размером внешнего полезного эффекта самой системы поэтому задача руководителя-организатора подобрать такой сабсет инструментов, чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х. Когда система тратит Х и приносит Х, то получается, что система существует только как вещь в себе, а если система тратит Х, а приносит 0.5Х, тогда она ещё и вредительством занимается я в этом подходе вижу как бы секрет вечной молодости, а sql-портянки - это с моей точки зрения как бы дорога к смерти, хотя я и отлично понимаю, что она неизбежна, когда речь идет о крупных и сверхкрупных проектах ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 22:17:24 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumix, вот последннее время я убеждаюсь в тм что мне очень повезло, что в своё время пришлось поработать на access... подход к системам в которых используются базы очень хорошо там устроен, как бы этот акс не хаяли и не притесняли. авторя убежден, что с точки зрения архитектуры систем (не только компьютерных, но и вообще любых систем) и с точки зрения организации, использование возможностей системы за пределами ядра парето, приводит к резкому снижению маржинальной эффективности, и как следствие к смерти системы из-за существенно превышения затрат по жизнеобеспечению системы над размером внешнего полезного эффекта самой системы поэтому задача руководителя-организатора подобрать такой сабсет инструментов, чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х. Когда система тратит Х и приносит Х, то получается, что система существует только как вещь в себе, а если система тратит Х, а приносит 0.5Х, тогда она ещё и вредительством занимается вот эти слова там очень хорошо реализуются. и этот подход позволяет реализовывать много чего совершенно "не стандартно" с точки зрения стандарного программирования... и получается это чтобы система тратила Х, а внешний результат все время был бы выше 2Х, 5Х или даже 10Х. и это приминимо к mysql. то что счас используют из возможностей баз данных (mysql, mssql и пр.) это мизерный процент их возможности, и это говорит о плохом знании этой области. я работал с mssql и его возможности при использовании хранимок настолько огромны, что " или даже 10Х. " не придел.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 22:36:31 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
автор, а sql-портянки - это с моей точки зрения как бы дорога к смерти, дорога к смерти перекладывание операций с данными на плечи инструмента не предназначенного для этого. это как уголь перевозить на кабриолете.... написать портянку на php, си, java - это круто , написать на sql в половину меньшую портянку и выполняющую тож самое - это некруто..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 22:40:56 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
c mssql никогда не работал, а на аксессе написал много чего для реальных заказчиков, но это было давно, когда аксесс ещё был Access 97 вадянаписать портянку на php, си, java - это круто , написать на sql в половину меньшую портянку и выполняющую тож самое - это некруто ..... На мой взгляд критерий выбран ошибочно... круто/некруто - это больше из мира конференций по программированию или иного сборища гиков... в наших проектах в условиях очень часто изменяемых требований заказчиков используются другие критерии 1) насколько просто проводить изменения и отладку (скорость создания готового решения задачи заказчика) 2) насколько низко установлен технический порог входа (или говоря проще, насколько это можно поручить джуниорам или вообще аутсорсерам) 1) + 2) = насколько легко перекидывать задачи от одного исполнителя другому и насколько легко все это контроллировать Именно поэтому я всякие супер-пупер штучки из недр баз так опасны для живой разработки и их есть смысл использовать на а) высоконагруженных системах б) с низкой изменяемостью (либо с огромным запасом времени на изменения) в) с серьезными бюджетами (mssql платная + работает на платной оси) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 22:58:38 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
автор1) насколько просто проводить изменения и отладку (скорость создания готового решения задачи заказчика) 2) насколько низко установлен технический порог входа (или говоря проще, насколько это можно поручить джуниорам или вообще аутсорсерам) 1) + 2) = насколько легко перекидывать задачи от одного исполнителя другому и насколько легко все это контроллировать подход и правильный и не правильный... вместо того чтоб поднимать уровень исполнителей , мы опускаемся до их уровня.... я предпочитаю действовать по принцЫпу - мэдлеэно, мэдленно сойти и всё стадо.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 23:07:53 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
в своё время я потратил кучу времени разбираясь с тонкостями акса, mssql, и сделал вещь, работая с которой операторы обслуживали клиентов не кладя трубку, во время разговора с ним делали и подбор товара и счет. а уж сертификаты и прочие сопроводиловки к товару они делали одним нажатием- и само все вылезало из принтера.. это всё на точкостях системы.. круто/некруто - это больше из мира конференций по программированию или иного сборища гиков... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 23:14:10 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
ты недавно такое исследовал (ну почти) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 5 сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 23:32:46 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадяподход и правильный и не правильный... вместо того чтоб поднимать уровень исполнителей , мы опускаемся до их уровня.... я предпочитаю действовать по принцЫпу - мэдлеэно, мэдленно сойти и всё стадо.... не совсем... тут речь идет о том, что рядовых солдат в армии гораздо больше чем офицеров суть принципов организации процесса, о котором я веду речь, заключается в вычленении как можно большего числа как можно более простых операций для поручения их как можно ниже (рядовым) не все, но объемы такого "делегирования" удается сделать очень большими либо ВСЕ гении, либо ВСЕ стадо - это ошибочное понимание ситуации вадяв своё время я потратил кучу времени разбираясь с тонкостями акса, mssql, и сделал вещь, работая с которой операторы обслуживали клиентов не кладя трубку, во время разговора с ним делали и подбор товара и счет. а уж сертификаты и прочие сопроводиловки к товару они делали одним нажатием- и само все вылезало из принтера.. это всё на точкостях системы.. не вижу в этом примере вообще никакого реального аргумента переноса бизнес-логики в базу более того, я даже не вижу признаков хайлоада в вашем примере даже если у вас в колл-центре было бы 100 или 200 операторов - это все равно смешная нагрузка тем более по локальной сети все о чем вы пишите можно замутить на элементарном select/update/insert распечатка и рисование документов вообще к бд отношения не имеет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.10.2015, 23:54:50 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumix, авторВсе эти новые плюшки имеют смысл только для хайлоадов, где увеличение эффективности запросов на 20% может сэкономить 10 лямов в месяц, а в наших проектах +/- 30% эффективности вообще всем посрать. Когда что-то начинает тормозить в 5-10 раз, тогда есть смысл разбираться, но каждый раз когда проводили разборки подобных случаев всегда находилось решение как можно на том же самом сабсете сделать все быстрее и проще. Вообще, я тоже не совсем понимаю откуда восторги. Новости о новой версии начинаются с восхваления совершенно бесполезных для традиционных бд вещей. Однако результат достигнут - вот даже пользователи тему новую на форуме создали по своей инициативе. Воистину, эпоха маркетинга. Конечно, там и другие дельные улучшения имеются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2015, 00:01:05 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вот кстати, отличный пример там какой-то чувак новую тему открыл 18354445 пишет: я в мускуле новичок, помогите мне великие гуру триггер проверьте, а то ссыкатно мне вдруг что-то пойдет не так... представляете, чувак написал код и теперь боится его исполнять чувствуете масштаб трагедии?? я считаю - это не он виноват, а это виноват архитектор их системы а этот джуниор просто стрелочник с архитектурной точки зрения - это ведь бомба замедленного действия, которая взорвется, если система будет сильно изменяться под воздействием требованием заказчика мы такие задачи решаем созданием отдельных самостоятельных как мы их называем нормализаторов, и поэтому никаких подводных камней такого типа никогда не бывает, а значит ни новичок, ни даже контролирующий дед не станут жертвами каких-то непонятных эффектов достаточно открыть код нормализатора и сразу становится понятны все правила, которые только есть применительно как одному объекту, так и к различным комбинациям или вообще по всей системе, потому что этих правил может быть не одно, а сто и они могут меняться по 15 раз в неделю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2015, 00:05:47 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
вадяну можешь как угодно спорить и как угодно называть... сделал проверку и до и после всё 64 бита 5.6.21 - 35 сек 5.7.9 - 5 сек замечательно, я очень рад за развитие MySQL. 5 сек. это на самом деле очень долго, сравните опять с вариантом LIKE "что-то%", когда действительно используется индекс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2015, 03:40:08 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
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 бита. и в том, что надо все-же показывать запросы и планы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2015, 08:16:25 |
|
||
|
Ускорение LIKE '%str%' в версии 5.7
|
|||
|---|---|---|---|
|
#18+
Lumixвадя, ну, фиг знает короче... главное, что вы поставили 5.7, у вас получилась высокая скорость и это главное, а все остальное - фиг с ним! не фиг с ним, потому что на самом деле он нифига никакую высокую скорость не получил. а только думает, что получил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.11.2015, 08:18:33 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39091885&tid=1832526]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
37ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
| others: | 240ms |
| total: | 357ms |

| 0 / 0 |
