CMS для потрала с нагрузкой

WS
На сайте с 01.11.2008
Offline
136
#51
Aisamiery #:

Там если и будет разница, то фактически нивелироваться железом, вот табличка на 1.5kk записей

...

В общем тут на уровне погрешности разница между ними и это вполне логично

и к чему все эти запросы, ГДЕ сравнение с выборкой по текстовому ключу? вы нас не обманете

Aisamiery
На сайте с 12.04.2015
Offline
294
#52
Владимир #:
и к чему все эти запросы, ГДЕ сравнение с выборкой по текстовому ключу? вы нас не обманете

Четвертый скрин, там есть СТРОКА в выборке =))

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
WS
На сайте с 01.11.2008
Offline
136
#53
Aisamiery #:

Четвертый скрин, там есть СТРОКА в выборке =))

там в выборке всё равно участвует идентификатор, оптимизатор запросов mysql будет использовать его, сравнивайте ТОЛЬКО с выборкой по текстовому ключу

S3
На сайте с 29.03.2012
Offline
302
#54
Sly32 #:
например site.com/4321-Novost.html, то есть новость будет выгребаться из базы не по текстовому ключу, а по идентификатору 4321

Я говорил про идеальный мир. А при использовании хэша и поиска по точному вхождению поиск по хэшируемому индексу будет быстрее. Потому что временная сложность поиска по бинарному дереву будет  O(log n) а для поиска по хэшу -О(1) для случая с хорошо разреженной тоблицы без коллизий, но даже для случая коллизий это будет  O(1 + k/n), где k - количество элементов в списке коллизий для данного хэша, а n - размер хэш-таблицы.

W1
На сайте с 22.01.2021
Offline
289
#55
Aisamiery #:
и считать что ID в строке даст вам какой то значительный буст

Да ладно! Он выше дал ссылку на Великого Гуру, который написал, что выборка из БД по числу происходит в сотни раз быстрее, чем по строке. Так что не спорь, иначе прослывёшь дураком.

Мой форум - https://webinfo.guru –Там я всегда на связи
S3
На сайте с 29.03.2012
Offline
302
#56
Aisamiery #:
Там если и будет разница, то фактически нивелироваться железом, вот табличка на 1.5kk записей

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

Aisamiery
На сайте с 12.04.2015
Offline
294
#57
Владимир #:

там в выборке всё равно участвует идентификатор, оптимизатор запросов mysql будет использовать его, сравнивайте ТОЛЬКО с выборкой по текстовому ключу

Нет там идентификатора эти числовые поля сами по себе не являются ключами их нельзя использовать отдельно, только все 3 поля вместе и среди 3х полей есть строка.

WS
На сайте с 01.11.2008
Offline
136
#58
ради интереса решил проверить сам на сайте, к которому есть доступ с ~ 425000 новостями, типичные адреса выглядят так site.com/12345-Sber-vzyal-planku-v-300-rubleiy.html, где  12345 это primary key в базе, а Sber-vzyal-planku-v-300-rubleiy это добавка для псевдо ЧПУ, сделал по этому полю текстовой ключ, и решил сравнить время выборки по идентификатору, например 12345 (в среднем 0.0005 сек), и текстовому ключу, например Sber-vzyal-planku-v-300-rubleiy (в среднем 0.0011 сек), сделал пару десятков выборок, разница, в среднем составила в два раза в пользу выборки по primary key, стоит отметить, что сервер (VDS) не нагружен, если был бы нагружен, то было бы больше
Aisamiery
На сайте с 12.04.2015
Offline
294
#59
Владимир #:
ради интереса решил проверить сам на сайте, к которому есть доступ с ~ 425000 новостями, типичные адреса выглядят так site.com/12345-Sber-vzyal-planku-v-300-rubleiy.html, где  12345 это primary key в базе, а Sber-vzyal-planku-v-300-rubleiy это добавка для псевдо ЧПУ, сделал по этому полю текстовой ключ, и решил сравнить время выборки по идентификатору, например 12345 (в среднем 0.0005 сек), и текстовому ключу, например Sber-vzyal-planku-v-300-rubleiy (в среднем 0.0011 сек), сделал пару десятков выборок, разница, в среднем составила в два раза в пользу выборки по primary key, стоит отметить, что сервер (VDS) не нагружен, если был бы нагружен, то было бы больше

explain одного и второго запроса покажите. Во вторых вы тестируете на VDS я показывал на выделенном сервере, там может майнит крипту у вас кто

И еще важно чтобы поле было NOT NULL и желательно ключ уникальным

WS
На сайте с 01.11.2008
Offline
136
#60
Aisamiery #:

explain одного и второго запроса покажите. Во вторых вы тестируете на VDS я показывал на выделенном сервере, там может майнит крипту у вас кто

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий