Форум: "Базы";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];
ВнизВыбор варианта вычислений Найти похожие ветки
← →
Taurus (2006-03-14 19:14) [0]Здравствуйте!
Дайте, пожалуйста, совет по следующей ситупции. Имеется не очень большая БД (основные таблицы порядка 10 тыс. записей), полей - около 10. Но с исходными данными производится очень большое количество разноообразных вычислений, после чего подсчет всевозможных количеств, средних и т.п. - типичный инженерный расчет. Каким образом лучше произвоить вычисления - создавать для этого временные рабочие таблицы или все просчитывать в Rave report (там получаются очень длинные вычислительные цепочки)? Какой из вариантов предпочесть?
← →
Vlad © (2006-03-14 19:21) [1]
> Taurus (14.03.06 19:14)
10 тыс. записей на одну таблицу - это не так уж и много.
Лично я, когда была необходимость сложных расчетов, для ускорения поступал следующим образом: собирал с помощью запросов всю информацию на клиента, засовывал в TList, содержащий record-ы нужной структуры, и все сложные и громоздкие вычисления производил уже там.
Результат выкладывал в TClientDataSet, чтобы потом можно было легко отобразить в DB - контролах
← →
Taurus (2006-03-14 19:24) [2]А мне его отображать вообще не надо, сразу на печать.
← →
Desdechado © (2006-03-14 19:26) [3]СУБД не указана, а жаль
я такие громоздкие вещи обычно на сервере в ХП делаю
← →
Vlad © (2006-03-14 19:26) [4]
> Taurus (14.03.06 19:24) [2]
> А мне его отображать вообще не надо, сразу на печать.
Тем более.
Смысл в том, что если вычисления действительно сложные и громоздкие, то быстрее будет засунуть данные в какой нибудь промежуточный массив, и там делать все вычисления. Т.к. оперировать DataSet-ом при вычислениях - это весьма небыстро.
← →
Vlad © (2006-03-14 19:29) [5]
> Desdechado © (14.03.06 19:26) [3]
Не знаю, стоит ли сервер нагружать, особенно если в системе реально много пользователей.
Идеальный вариант, imho - это трехзвенка в данном случае. И все вычисления - в сервер приложений.
← →
Taurus (2006-03-14 19:31) [6]> СУБД не указана, а жаль
Paradox :((
> засунуть данные в какой нибудь промежуточный массив
Массив в смысле массив - array?
← →
Desdechado © (2006-03-14 19:31) [7]> стоит ли сервер нагружать
если вычислений много несложных, но с большим объемом данных, то, имхо, стоит
для 10 тыс записей, имхо, фиолетово
← →
Taurus (2006-03-14 19:32) [8]> Не знаю, стоит ли сервер нагружать, особенно если в системе
> реально много пользователей.
Пользователей в системе 1-2
← →
Vlad © (2006-03-14 19:36) [9]
> Taurus (14.03.06 19:31) [6]
> Массив в смысле массив - array?
Ну да. Или как я делал - TList
← →
Taurus (2006-03-14 19:37) [10]> если вычислений много несложных, но с большим объемом данных,
> то, имхо, стоит
> для 10 тыс записей, имхо, фиолетово
Машина, на которой будет эксплуатироваться, очень-очень дохленькая - скорость выполнения операций здесь существенна
← →
Vlad © (2006-03-14 19:39) [11]
> Taurus (14.03.06 19:37) [10]
> Машина, на которой будет эксплуатироваться, очень-очень
> дохленькая - скорость выполнения операций здесь существенна
Это имелось ввиду для клиент-серверных баз, у тебя Paradox, так что этот вариант с серверными процедурами отпадает.
← →
Taurus (2006-03-14 19:42) [12]Спасибо, еще подумаю.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.012 c