Исследование скорости работы.

Исходные данные: Катротека с 7500 записей. (8полей: 2строковых, 3 численных, 3 ссылочных)
Задача: разом перебить 1 или несколько полей во всей (или части) картотеке.

Опыт 1 (обычный). Просто открываем всю область, перебиваем циклом с 1 записи до 7500, и ЗакончитьИзменения. Долговыполнимая процедура. С ростом счетчика цикла скорость падает катострофически.
Время на перебивку - 37 сек
Время на сохранение -45 сек
Общее время - 82 сек

Опыт 2 - Уже лучше!. Просто открываем всю область, перебиваем циклом с 1 записи до 2500 (Большие куски.), ЗакончитьИзменения,опять открываем всю область, перебиваем циклом с 2500записи до 5000, ЗакончитьИзменения,опять открываем всю область, перебиваем циклом до конца и ЗакончитьИзменения. .
Время больших кусков:

На перебивку - 13 сек
На сохранение - 47 сек
Общее время - 70сек

Опыт 3- Золотой . Просто открываем всю область, перебиваем циклом с 1 записи до 800 (мелкие куски.), ЗакончитьИзменения,опять открываем всю область, перебиваем циклом с 800 записи до 1600, ЗакончитьИзменения,опять открываем всю область, перебиваем циклом с 1600 записи до ..., ЗакончитьИзменения. Максимальная скорость.
Мелкие куски.

Время на перебивку - 9 сек
Время на сохранение -40 сек
Общее время - 49 сек

Опыт 4- труп :( Открываем область с фильтром на часть записей, перебиваем циклом 800 записей, ЗакончитьИзменения, далее снова открываем область с фильтром на другую часть записей, перебиваем циклом следущие 800, ЗакончитьИзменения и т.д., пока все не изменим. Эту операцию на Paradox-е нельзя делать. Работа в фильтрованной области ужасно медленна, само открытие тоже, ну в общем - вот цифры.
Время на перебивку - 91 сек
Время на сохранение -35 сек
Общее время - 144 сек

ИТОГО: еще раз подтверждается ужасная работа с фильтрами в Paradoх - все дружно переходим на SQL :-) . Работа с памятью гнусна, т.е. все, что делаете, делайте мелкими кусочками - целее будет, и самое главное и хорошее - скорость сохранения прямо зависит от объема данных. Т.е. много раз по мелочи - сохраним почти так же, как и большие.


Хостинг от uCoz