Показать сообщение отдельно
Старый 19.04.2007, 10:12   #14  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от Garic Посмотреть сообщение
Можно делать ttscommit/ttsbegin например после каждых 500 строк.
Да, например.

Цитата:
Сообщение от Garic Посмотреть сообщение
Но за маленькие транзакции я бью по рукам
А вот это зря.

Цитата:
Сообщение от Garic Посмотреть сообщение
Чтобы не быть голословным - провёл тест (по 5 тестов на каждый вариант) на табличке inventTrans (14 тыс. записей). Добавил в неё текстовое поле 10 - в него пишу timenow.

В случае одной транзакции - 34,8 сек. (100%)
В случае маленьких транзакций с прогрессбаром - 68,3 сек (196%)
В случае маленьких транзакций без прогрессбара - 65,2 сек (187%)
Я еще раз повторяю, что вы не тот случай оптимизируете.
Вы оптимизируете работу ОДНОГО пользователя.
Попробуйте запустить хотя бы 10-20, а лучше 50-100 пользователей, которые работают с InventTrans, пишут и читают один и тот же набор данных.
Оцените производительность больших и маленьких транзакций для МНОГОПОЛЬЗОВАТЕЛЬСКОЙ системы.

Про прогресс бар пожалуйста сюда Какие проблемы у SysOperationProgress?
Здесь предлагаю сосредоточиться на больших и маленьких транзакциях, групповых и негрупповых обработках данных.
__________________
полезное на axForum, github, vk, coub.