
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
14.11.2013, 10:44:53
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Приветствую форумчане. Существуют две таблицы `net` и `dellagent` в одной 160 тыс. записей во второй 50 тыс. Структура обеих Цель обновить (UPDATE) в `net` поле chain удалив найденные в нем `dellagent`.`contract` Использую запрос вида: Код: plsql 1. 2. 3. 4. 5. 6. Выполняется на локальной машине уже 45 мин!!!! Просто недопустимо для удаленного сервера, завесит весь ресурс. Хотя запрос вида: Код: plsql 1. 2. 3. 4. 5. 6. 7. Занимает всего 2 мин. Подскажите как победить такой тормоз! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 10:57:39
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
Попробуй: 1) Код: sql 1. заменить на Код: sql 1. 2) В Update использовать не таблицу dellagent, а подзапрос Код: sql 1. 3) Что там вообще с индексами? походу их тупо нет... Итог: Код: sql 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 11:13:27
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Akina, Спасибо мысль отличная уже пробую. С индексами там все по Фэн-Шую единственное уникальное поле `contract` проиндексировано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 11:15:44
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
hedgehogelezС индексами там все по Фэн-Шую единственное уникальное поле `contract` проиндексировано. Индексы таблицы dellagent меня совершенно не колышат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 11:25:42
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Akina, А если не секрет какой должен колыхать? В выражениях с LIKE %...% MYSQL не использует индексы. Для chain не имеет смысла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 13:39:28
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Akina, Запрос выполнен успешно, затронуто записей: 13572 (01:44:25) Ровно на час дольше первого варианта! Похоже LIKE безнадежен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 13:45:36
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
Ну да, а соответствие между текстом запроса и временем выполнения нам предлагается установить самостоятельно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:02:06
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
hedgehogelezПриветствую форумчане. Существуют две таблицы `net` и `dellagent` в одной 160 тыс. записей во второй 50 тыс. Структура обеих Цель обновить (UPDATE) в `net` поле chain удалив найденные в нем `dellagent`.`contract` Использую запрос вида: Код: plsql 1. 2. 3. 4. 5. 6. Выполняется на локальной машине уже 45 мин!!!! Просто недопустимо для удаленного сервера, завесит весь ресурс. Хотя запрос вида: Код: plsql 1. 2. 3. 4. 5. 6. 7. Занимает всего 2 мин. Подскажите как победить такой тормоз! Там слово уже лишнее! :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:05:03
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
160 и 50 тыс., из них 13.5 тыс. под апдейт - и на это час сорок пять? чёта неладно в вашем королевстве... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:15:08
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Akina, `net`.`chain` по типу TEXT вот тут то мне кажется и засада. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:28:28
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
час сорок пять - это блин две записи в секунду апдейтились, сам проверь... ну бред же ж!. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:29:21
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
hedgehogelez`net`.`chain` по типу TEXTМмм... а на варчар никак не перелицевать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
14.11.2013, 15:31:40
|
|||
|---|---|---|---|
UPDATE с LIKE %...% |
|||
|
#18+
Хотя в любом разе это картезианка, я чёта не обратил, что там в отборе НЕравенство. Наверное, надо уходить от мультизначения в chain, нормализовать. Тогда полетит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.11.2013, 06:10:06
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Вы на "денвере" тестируете? Он по-умолчанию тормоз, если что. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.11.2013, 08:20:15
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Если SELECT выполняется за 2 минуты - сохраните его во временную таблицу, а затем соедините ее с обновляемой: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Если будет долго выполняться, временную таблицу можно попробовать проиндексировать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
20.11.2013, 08:23:05
|
|||
|---|---|---|---|
|
|||
UPDATE с LIKE %...% |
|||
|
#18+
Хотя 2 иинуты тоже как-то не айс... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=47&mobile=1&tid=1835549]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
| others: | 251ms |
| total: | 390ms |

| 0 / 0 |
