Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Падает скорость обработки в Recordset 
V
    Опции темы
current
Дата 3.9.2013, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 5.5.2009

Репутация: нет
Всего: нет



Имею таблицу в 2000 записей, обрабатываю записи через recordset, во время обработки подтягиваю еще записи по id(из первой) с другой таблицы. Тоесть на одну запись из первой таблицы еще открывается recordset на десяток записей из второй. После обработки все записывается в третью таблицу.

Но дело не в том, что куда и зачем, а почему как только начинается обработка, за секунду в третью результирующую таблицу записывается около 60 записей на 2-й секунде 50зап, 3 сек - 8 записей, и все, так до конца обработки за секунду записывается всего по 8 строк.

Почему скорость обработки падает? Access 2003.

Результирующая таблица изначально пуста.  
PM MAIL   Вверх
Akina
Дата 3.9.2013, 10:18 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(current @  3.9.2013,  11:12 Найти цитируемый пост)
Почему скорость обработки падает?

патамушта гладиолус...

Мы даже по фотографии не лечим. Тем более - по описанию фотографии...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
current
Дата 3.9.2013, 14:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 5.5.2009

Репутация: нет
Всего: нет



Все что я хочу услышать, это возможные варианты ответов.

1. Такой проблемы в Access нет. Количество однотипных обработанных данных в единицу времени не зависит от количества записей в таблице. Ищите проблему в коде.
2. Да такая проблема есть она связана с тем то и тем то решение такое.   

Это сообщение отредактировал(а) current - 3.9.2013, 14:33
PM MAIL   Вверх
Akina
Дата 3.9.2013, 14:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Описанное - возможно. Можно придумать не одну причину, и каждая лечится своим способом - если лечится.
Но я сомневаюсь, что найдутся желающие заниматься пустым теоретизированием. На форумах обычно решают конкретные практические проблемы. Впрочем, подождите, вдруг да повезёт...


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
current
Дата 3.9.2013, 15:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 5.5.2009

Репутация: нет
Всего: нет



Спасибо. Проблема решена предварительной сортировкой по полю которое указывает на две разные обработки. 

Есть инфо которое у всех записей обрабатывается одинаково и есть поля которые обрабатываются немного по разным алгоритмам. По времени обработки алгоритмы ни чем друг от друга не отличаются. Предварительно я отобрал схожие записи и прогнал их в таком же количестве 2000, результат 130 записей в сек до конца обработки, потом так же с записями под другой алгоритм результат тот же 130 зп/сек. Решение - сортировка, теперь все обрабатывается до конца со скоростью 130 зп/с даже больше чем при начале обработки не в сортированном recordset.



PM MAIL   Вверх
Akina
Дата 3.9.2013, 16:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



В таком случае попробуй использовать стандартные методы ускорения поливариантных обработок - типа перехода на статические переменные, разреженные массивы и строки фиксированной длины.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




[ Время генерации скрипта: 0.0671 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.