|
![]() |
#1 |
Member
|
Результаты эксперимента: скорость джоин vs вложенный цикл
На 1000 записей в каждом экземпляре временной раблицы
============================================= 0.28 - Времы вставки по 1000 записей в каждый из экземпляров временных таблиц 1001 - Количество выбранных записей в первой выборке 8.53 - Время выборки с джоином временных таблиц 1001 - Количество выбранных записей во второй выборке 0.05 - Время выборки с вложенным циклом вместо равнозначного первой выборке джоина временных таблиц На 2000 записей в каждом экземпляре временной раблицы (увеличиваем количество строк временной таблицы вдвое) ============================================================== 0.53 - время вставки возросло почти вдвое 2001 - записей стало пракически вдвое больше 33.11 - времы выборки с джоином увеличилось вчетверо 2001 - нечего комментировать 0.08 - время выборки с вложенным циклом увеличилось меньше чем вдвое Попробуем 4000 записей в каждом экземпляре временной раблицы (увеличиваем количество строк временной таблицы вдвое) ============================================================== 1.09 - опять чуть меньше чем вдвое 4001 - очень ожидаемо 136.34 - снова чуть больше чем вчетверо 4001 - нечего комментировать 0.17 - тоже чуть больше чем вдвое Первые выводы: Время вставки растет почти прямо пропорционально количеству записей. Время выборки с вложенным циклом также растет прямо пропорционально количеству записей во временных таблицах. Время выборки с джоином растет пропорционально приросту количества записей в квадрате. Складывается впетатление, что джоин тупо перебирает все записи первой таблицы и для каждой аписи перебирает все записи второй таблицы. А потом уже смотрит на условия джоина. Но это еще не все...
__________________
С уважением, glibs® Последний раз редактировалось glibs; 15.12.2011 в 01:46. |
|
Теги |
временная таблица, оптимизация, полезное, производительность |
|
Опции темы | Поиск в этой теме |
Опции просмотра | |
|