powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Тормоза при выполнении параллельных запросов. Copying to tmp table
25 сообщений из 88, страница 2 из 4
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842241
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Veshchiy Oleg, open_files в конфиге не задан.
open_files_limit 2566
Есть версии?
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842243
Veshchiy Oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tvolod,

Уверенности нет, но сталкивался с тормозами при ограничении на открытие дескрипторов... С чем была связана моя ситуация уже не помню, но помогало "расширение границ" по количеству открываемых файлов.

Прошу учесть, что моя ситуация была на CentOS 5.6, а не на Windows. По этому могут быть существенные отличия в работе.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842244
Veshchiy Oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Tvolod,

из статуса меня интересовали значения Open_files в момент выполнения нескольких запросов и Opened_files просто ради интереса...
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842246
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodnetwindКонечно, некоторые хипстеры, считают что сайт должен сам себя администрировать. Но тогда им не надо ожидать, что обычные базы будут хорошо работать в необычном применении.
По-вашему предел возможностей MySQL - это прайс-лист загрузить и гуэстбук замутить?
В чем необычность задач, я не очень понимаю. Не метафизически: "не предназначено, мол", а физически, т.е. имеются (объективно) следующие ограничения... и мы их можем увидеть/пощупать на приведённом примере там то и там то...

Дело не в пределе возможностей, а в том как обычно используются рсубд.
Используешь как все - гуглишь ответ на любую проблему. А в большинстве случаев они даже не возникают.
Хочешь необычного - ты один на один с проблемой.


netwindЗдесь нет никакой особенной проблемы. производительность не масштабируeтся линейно по числу ядер и это не новость.
Опять таки, это просто общее утверждение, пусть даже и верное, я же не знаю. Физика то в чём? Почему это так на данном конкретном приведённом мной весьма простом и измеримом примере.

Но вы с ними согласны ?
За конкретное это вам придется самолет и командировку оплачивать. Пивом не обойтись.

netwindЕсли план запроса предполагает генерирование большой временной таблицы из и так большого числа фактов, почему бы этим запросам выполняться быстро?
При параллельном выполнении нескольких запросов план меняется, относительно "сольного" выполнения? Вряд ли. Тогда почему ему исполняться на порядок медленнее?
Ещё раз

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


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

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


netwindНу может быть в этой конфигурации негативные эффекты возникают из-за наличия NUMA или PAE, но скорее всего их нет.
Погуглил эти термины... NUMA точно нет, т.к. обычная стандартная машинка.
http://www.nix.ru/autocatalog/nix_computers/S5000B_S5365LNi_Core_i74790_16_SATA_RAID_190793.html

netwindУ вас современный windows на какой-то массовой хостерской платформе ведь ?
Не очень массовая. В антресоли над туалетом пылится. :)

Я бы все же убедился как-нибудь конкретнее. Формально в википедии написано что Haswell EP таки поддерживает NUMA.
но раз уж это "серийный" сервер из nix, наверное не стоит.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842247
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Veshchiy Oleg,
Open_files 67
Opened_files 11773
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842249
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tvolod,

я так думаю надо вот с этой штукой разобраться https://perf.wiki.kernel.org/index.php/Tutorial, в линуксе запустить mysqld, налить тестовых данных и как-то снять счетчики cache miss

автор It provides a list of events to measure micro-architectural events such as the number of cycles, instructions retired, L1 cache misses and so on

Не говоря о том, что линуксе может просто внезапно отпустить.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842253
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну вот как-то вроде считает у меня, где 13357 - pid процесса mysqld :
автор perf stat -e L1-dcache-load,L1-dcache-load-misses,L1-dcache-stores,L1-dcache-store-misses -p 13357
^C
Performance counter stats for process id '13357':

1,109,824 L1-dcache-load
201,929 L1-dcache-load-misses # 18.19% of all L1-dcache hits
372,766 L1-dcache-stores
23,616 L1-dcache-store-misses

9.512196166 seconds time elapsed

шо бы это значило ответ где-то здесь http://www.intel.com/content/www/us/en/architecture-and-technology/64-ia-32-architectures-software-developer-vol-3b-part-2-manual.html
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842375
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwindTvolodnetwindЗдесь нет никакой особенной проблемы. производительность не масштабируeтся линейно по числу ядер и это не новость.
Опять таки, это просто общее утверждение, пусть даже и верное, я же не знаю. Физика то в чём? Почему это так на данном конкретном приведённом мной весьма простом и измеримом примере.

Но вы с ними согласны ?
С тем что оно функция зависимости времени выполнения от числа задач и числа процессоров нелинейна это очевидно. Мир вообще в общем не линеен. :) Вопрос в том, в какой зоне нелинейной кривой мы находимся. Я лишь предполагал, что при выполнении числа задач меньшем числа процессоров и избытке памяти нелинейность должна состоять в том, что роста времени выполнения не должно быть вообще. Если соотношение обратное, то да, система как-то нелинейно должна деградировать.
netwindЗа конкретное это вам придется самолет и командировку оплачивать. Пивом не обойтись.
Была бы гарантия результата, можно было бы и рассмотреть билет на поезд. :)
Да и зачем ехать, когда есть удалённый доступ, если нужно.

netwindУ вас задача поиска всего среди всего - то есть, интенсивный обмен с памятью, который осуществляется через кеш процессора. Вот этого ресурса при параллельной архитектуре и не хватает. И соседи постоянно забивают его другими данными.
Не буду врать, плохо себе представляю работу MySQL с кешем процессора (тем более многоуровневым). Вернее даже наоборот, работу процессора и его многоуровневого кеша с MySQL данными. Возможно, и не должен он пропускать через себя весь объём обрабатываемых данных или даже индексов...
netwindНаверное, какой-то из профайлеров в состоянии снять метрики cache miss, но это собирать mysql специально надо.
Мне кажется это и так достаточно здравое объяснение.
По крайней мере оно логично и конкретно. Спасибо! Надо будет почитать.

Кстати, после перезагрузки сервера эффект существенно уменьшился. Он по-прежнему есть, но стало в разы лучше. До этого менял параметры мускула и только рестартовал его.
Будем посмотреть, может быть это софтверный глюк. Кто его разберёт... :(
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38842592
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кстати, после перезагрузки сервера эффект существенно уменьшился. Он по-прежнему есть, но стало в разы лучше. До этого менял параметры мускула и только рестартовал его.
Будем посмотреть, может быть это софтверный глюк. Кто его разберёт... :(
Может быть память была как-то занята другими таблицами и задачами. А при перезагрузке еще не успела.

Если у вас myisam, то попробуйте еще myisam_use_mmap=1.
Переход на innodb в данной ситуации может улучшить работу с данными в памяти, потому что данные точно залягут в пул innodb.

Ну и подумать над планами запросов всегда полезно.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846161
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwindTvolodКстати, после перезагрузки сервера эффект существенно уменьшился. Он по-прежнему есть, но стало в разы лучше. До этого менял параметры мускула и только рестартовал его.
Будем посмотреть, может быть это софтверный глюк. Кто его разберёт... :(
Может быть память была как-то занята другими таблицами и задачами. А при перезагрузке еще не успела.
Похоже, наврал. Скорее всего просто были вычисления над лёгкими областями данных. Дополнительные опыты не подтвердили, что перезагрузка влияет. Скорее наоборот, пока система не закеширует большую часть данных всё идёт ещё хуже.
netwindЕсли у вас myisam, то попробуйте еще myisam_use_mmap=1.
Попробовал. Несколько дней покрутилось с этой опцией. Стало или хуже, или по крайней мере не лучше. Во всяком случае монитор ресурсов показывал постоянные обращения к диску в течение 1.5 суток, пока система всё-таки не закешировала большие таблицы.
netwindПереход на innodb в данной ситуации может улучшить работу с данными в памяти, потому что данные точно залягут в пул innodb.
А можете пояснить, за счёт чего может улучшить? Если у меня MyISAM через пару часов работы и так все системой (не MySQL!) полностью загружаются в оперативку. Просто проблемно этот опыт поставить. Нужно конвертировать таблицы, а их каждые сутки бекап подменяет...
netwindНу и подумать над планами запросов всегда полезно.
Ну вот, например, простейший вариант:
Код: sql
1.
2.
3.
4.
5.
select M2.ImageID, count(*) as Cnt
	from ImageMatrix as M1, ImageMatrix as M2
	where M1.ImageID = 23244 and M1.ImageID <> M2.ImageID and M1.Value = M2.Value
	group by M2.ImageID having count(*) >= 70
	order by Cnt desc


Ищем похожие фото по таблице о 12.5 миллионах записей. Каждое фото характеризуется 100 числами. Алгоритм работает изЮмительно...
Табличка проще некуда:
Код: sql
1.
2.
CREATE TABLE `ImageMatrix` ( `ImageID` mediumint(8) unsigned NOT NULL, `Value` mediumint(8) unsigned NOT NULL,
	KEY `ValueIdx` (`Value`), KEY `ImageIdx` (`ImageID`) )


План лучше некуда:
Код: sql
1.
2.
3.
4.
5.
6.
+----+-------------+-------+------+-------------------+----------+---------+----------------+------+---------------------------------+
| id | select_type | table | type | possible_keys     | key      | key_len | ref            | rows | Extra                           |
+----+-------------+-------+------+-------------------+----------+---------+----------------+------+---------------------------------+
|  1 | SIMPLE      | M1    | ref  | ValueIdx,ImageIdx | ImageIdx | 3       | const          |  100 | Using temporary; Using filesort |
|  1 | SIMPLE      | M2    | ref  | ValueIdx          | ValueIdx | 3       | M1.Value       |  641 | Using where                     |
+----+-------------+-------+------+-------------------+----------+---------+----------------+------+---------------------------------+


Но...
До having count(*) >= 70 запрос может вернуть от сотни тысяч до нескольких миллионов строк данных. После от 0 до 10 строк. Вот и всё.
Можете этот запрос улучшить? По-моему тут нечего улучшать. Работает секунду и меньше на одно фото (в сольном варианте), что полностью меня устраивает. При параллельном исполнении нескольких подобных запросов время может вырасти до 5 секунд.
Другие запросы подобные этому, с той лишь разницей, что добавлены джойны дополнительных данных, участвующих в сортировке и отборе финальных результатов, + число строк в таблицах по 40-50 млн.
Т.е. я снова хочу сказать, что нет проблем в самих запросах. Есть странная проблема в параллельном их выполнении, природа которой не очень понятна... :(
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846169
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodnetwindЕсли у вас myisam, то попробуйте еще myisam_use_mmap=1.
Попробовал. Несколько дней покрутилось с этой опцией. Стало или хуже, или по крайней мере не лучше. Во всяком случае монитор ресурсов показывал постоянные обращения к диску в течение 1.5 суток, пока система всё-таки не закешировала большие таблицы.
netwindПереход на innodb в данной ситуации может улучшить работу с данными в памяти, потому что данные точно залягут в пул innodb.
А можете пояснить, за счёт чего может улучшить?


По определению. Так работает mmap - один из интерфейсов в ОС , про который неплохо было бы знать. Как и про кеш в процессоре.
вместо того чтобы считывать блоки данных через системные вызовы постоянно, эти системные вызовы возникают лишь когда блоки не попадают в уже считанную память область проецируемого файла.
Может и не ускорить запросы, которые использовали только лишь key_buffer.
Во всяком случае не должно быть хуже. Но вместе вот с этим :
Если у меня MyISAM через пару часов работы и так все системой (не MySQL!) полностью загружаются в оперативку. Просто проблемно этот опыт поставить. Нужно конвертировать таблицы, а их каждые сутки бекап подменяет...

..ситуация уже менее прозрачна. что там на что подменяется ?

Другой механизм используется в innodb, но он похож. Блоки просто считываются в буфер и при достаточно большом объеме памяти работа происходит только с буфером без обращения к ОС.
К несчастью, данные в innodb будут тупо больший размер в байтах занимать и прогноз дать нельзя. Я так подозреваю, все даже ухудшится.


Ну вот, например, простейший вариант:
[src sql]
select M2.ImageID, count(*) as Cnt


не читал, но заранее подход осуждаю.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846254
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind..ситуация уже менее прозрачна. что там на что подменяется ?
Делается бекап свежих данных с удалённого сервера, и нужные для работы таблицы как есть заливаются для обработки через drop table - create table. На сервере MyISAM. Соответственно как минимум придётся парсить бекап файл и править create table. Не сложно, но без серьёзных аргументов не хочется это делать.
netwind Я так подозреваю, все даже ухудшится.

netwindНу вот, например, простейший вариант:
[src sql]
select M2.ImageID, count(*) as Cnt

не читал, но заранее подход осуждаю.
Просвятите, пожалуйста, что не так? Это как девушка тут сообщила: " группировка по ID это новое слово в теории баз данных "? :)
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846309
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodЭто как девушка тут сообщила: " группировка по ID это новое слово в теории баз данных "а с чего вы взяли, что scarecrow - девушка?
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846333
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
tanglirTvolodЭто как девушка тут сообщила: " группировка по ID это новое слово в теории баз данных "а с чего вы взяли, что scarecrow - девушка?
Фото в анкете. И советы... :)
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846347
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodФото в анкетеНе стоить верить всему, что видишь в интернете :)
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846422
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tvolod
Код: sql
1.
Using temporary; Using filesort

Диск, поди, обычный HDD ?
Тогда все логично - идет борьба за перемещение головок диска.
tmp_table_size и max_heap_table_size какого размера?

Попробуйте под эту табличку+запрос создать индексы (`Value`,`ImageID`) и (`ImageID`,`Value`). Потом сделайте ANALYZE TABLE `ImageMatrix`. И посмотрите на план и время выполнения запроса.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846497
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftTvolod
Код: sql
1.
Using temporary; Using filesort

Диск, поди, обычный HDD ?
Тогда все логично - идет борьба за перемещение головок диска.
tmp_table_size и max_heap_table_size какого размера?
miksoft, на предыдущей странице эту версию обсуждали. tmp_table_size и max_heap_table_size по 16 гигов. Гораздо больше чем мускул реально использует. Максимум он дорастает до 6 гигов.
Нагрузки на диски нет никакой, ибо винда кеширует все файлы используемых таблиц и индексов.

miksoftПопробуйте под эту табличку+запрос создать индексы (`Value`,`ImageID`) и (`ImageID`,`Value`). Потом сделайте ANALYZE TABLE `ImageMatrix`. И посмотрите на план и время выполнения запроса.
Хм... ну можно попробовать. Я правильно понимаю, что в этом случае мускул будет пользоваться только данными из индексов не обращаясь к самой таблице?
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846517
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodЯ правильно понимаю, что в этом случае мускул будет пользоваться только данными из индексов не обращаясь к самой таблице?он может воспользоваться только данными из индексов
что он будет делать, надо смотреть
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846525
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tvolodtmp_table_size и max_heap_table_size по 16 гигов.SHOW VARIABLES LIKE 'tmp_table_size' и SHOW VARIABLES LIKE 'max_heap_table_size' это подтверждают?

Как изменяются переменные Created_tmp_disk_tables и Created_tmp_tables после выполнения запроса?
Код: sql
1.
SHOW GLOBAL STATUS LIKE 'Created_tmp_%'
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846960
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftПопробуйте под эту табличку+запрос создать индексы (`Value`,`ImageID`) и (`ImageID`,`Value`). Потом сделайте ANALYZE TABLE `ImageMatrix`. И посмотрите на план и время выполнения запроса.

Эксперименты заняли некоторое время.
Код: sql
1.
2.
3.
4.
5.
6.
+--+-----------+-----+----+---------------------------+-------------+-------+--------+----+--------------------------------------------+
|id|select_type|table|type| possible_keys             |   key       |key_len| ref    |rows| Extra                                      |
+--+-----------+-----+----+---------------------------+-------------+-------+--------+----+--------------------------------------------+
| 1|SIMPLE     | M1  |ref |ImageValueIdx,ValueImageIdx|ImageValueIdx| 3     | const  | 98 |Using index; Using temporary; Using filesort|
| 1|SIMPLE     | M2  |ref |ValueImageIdx              |ValueImageIdx| 3     |M1.Value| 641|Using where; Using index                    |
+--+-----------+-----+----+---------------------------+-------------+-------+--------+----+--------------------------------------------+

Результат неплохой, хотя и не фантастический. Скорость примерно процентов на 10-15 выше.
Большое спасибо за идею! Буду иметь ввиду.
miksoftTvolodtmp_table_size и max_heap_table_size по 16 гигов.SHOW VARIABLES LIKE 'tmp_table_size' и SHOW VARIABLES LIKE 'max_heap_table_size' это подтверждают?
Да.
Код: plaintext
1.
max_heap_table_size 16777216000 
tmp_table_size      16777216000

miksoftКак изменяются переменные Created_tmp_disk_tables и Created_tmp_tables после выполнения запроса?
Код: plaintext
1.
2.
Created_tmp_disk_tables 44 
Created_tmp_files 0 
Created_tmp_tables 678576 
Судя по всему каждое выполнение запроса увеличивает Created_tmp_tables на единичку.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846961
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TvolodЭксперименты заняли некоторое время.А теперь как себя ведет параллельное выполнение нескольких запросов?
которое "при одновременном выполнении трех-четырёх потоков время выполнения тех же запросов вырастает до 20-30 и более секунд"



TvolodСудя по всему каждое выполнение запроса увеличивает Created_tmp_tables на единичку.Нет, это приборная погрешность.
http://dev.mysql.com/doc/refman/5.5/en/server-status-variables.html#statvar_Created_tmp_tables Each invocation of the SHOW STATUS statement uses an internal temporary table and increments the global Created_tmp_tables value.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846966
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftНет, это приборная погрешность.
Не, не, не... погрешность я заметил и учел. Именно при циклическом выполнении данного запроса Created_tmp_tables увеличивается с каждым циклом.
Да и куда ему деваться, если и в плане у него Using temporary , и в процессах он как и раньше чаще всего висит в статусе Copying to tmp table?
miksoftTvolodЭксперименты заняли некоторое время.А теперь как себя ведет параллельное выполнение нескольких запросов?
которое "при одновременном выполнении трех-четырёх потоков время выполнения тех же запросов вырастает до 20-30 и более секунд"
Надо покрутить, но, полагаю, что так же. Просто влияние данного запроса чуть меньше (временнОе). А может и чуть больше, учитывая, что размер индексов теперь вдвое вырос. :)
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38846974
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tvolodразмер индексов теперь вдвое выросЕсли таблица MyISAM, то всего лишь на треть - с 9 до 12 байтов на запись.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38855952
Tvolod
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тем не менее результата нет. Переделал подобным образом индексы еще на одном запросе. В один поток вроде как быстрее выполняется. При многопоточном исполнении всё по-прежнему. Может даже ещё хуже. Точных замеров не получается сделать, т.к. на разных областях данных скорость разная.
...
Рейтинг: 0 / 0
Тормоза при выполнении параллельных запросов. Copying to tmp table
    #38856002
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tvolod, да что ж такое? не будет того результата, который вам нужен.
попробуйте у mysql tmpdir на ramdrive вынести. Это может оказаться непросто для винды и возможно сожрет память навсегда ( не как в линуксе), но ускорить может.
...
Рейтинг: 0 / 0
25 сообщений из 88, страница 2 из 4
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Тормоза при выполнении параллельных запросов. Copying to tmp table
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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