Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Вниз

TClientDataSet в действии   Найти похожие ветки 

 
minstrel   (2004-05-27 17:21) [0]

День добрый!
Прошу проанализировать 2 пути решения и выбрать более оптимальный.

Имеется сервер приложений (SRVR), клиентские приложения (CLNT).
Пропускной канал между SRVR и CLNT не превышает 128KB.
Используется технология MIDAS. Доступ к данным из CLNT производится посредством TClientDataSet (CDS).
Есть таблица задающая некоторую древовидную структуру (DBCAT) и некоторый набор справочников, ссылающихся на эту таблицу.
Пример - таблица товаров (TOVARY) ссылается на DBCAT и, т.о., выделяются категории товаров.
2 варианта:
1) для таблицы товаров завести 1 CDS и использовать стандартный механизм докачки;
2) для каждой категории товаров завести отдельный CDS и иметь возможность использовать (или нет) докачку (вроде бы открывается возможность работать со справочником локально).
Для справочников весьма часты операции поиска, фильтрации, сортировки.
Будет ли выигрыш и можно ли его добиться при использовании подхода (2)?


 
Clickmaker ©   (2004-05-27 17:28) [1]

один CDS + фильтр по категории на уровне SQL запроса


 
Sandman25+1   (2004-05-27 17:31) [2]

Если количество категорий постоянно растет, то будет большая нагрузка на сервер в плане требований к памяти. Представьте себе 20 пользователей, для каждый из которых создано 30 clientdataset только для категорий...


 
Sandman25+1   (2004-05-27 17:31) [3]

Кстати, справочники лучше сохранять локально и перечитывать по явному требованию.


 
minstrel   (2004-05-27 17:40) [4]

>Clickmaker:
если я буду менять sql-запрос, то докачка работать не будет.

>Sandman25+1:
справочники довольно велики, пользователей довольно много => хранить справочники локально вряд ли удастся.
нагрузка на сервер будет во втором случае на мой взгляд меньше, после полной выгрузки категории, TOracleDataSet (ODS) можено удалять а с CDS работать на стороне клиента, выполняя уже локально поиски, фильтры,.. Разве нет?


 
minstrel   (2004-05-27 18:34) [5]

Может кто ответит (или скажет: "N-й метод однозначно лучше")...
есть таблица с данными поля ID=1..100;
CDS->PacketRecords = 20;
1) производится выборка из этой таблицы;
2) указавается условие в фильтре (ID>15 and ID<25);
3) указавается условие в фильтре (ID>14 and ID<24);
Сколько записей будет получено с сервера при 3-м обращении и сколько всего записей будет храниться на клиенте после 2-го шага,
после 3-го шага, после указания сортировки в обратном направлении?


 
Sandman25+1   (2004-05-28 08:59) [6]

Посмотрите раздел Supporting state information in remote data modules в DevGuide: Developing Datapase Applications



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.06.20;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.048 c
9-1077482489
Bek
2004-02-22 23:41
2004.06.20
Кто что знает про свет в Opengl?


9-1077293085
Creep
2004-02-20 19:04
2004.06.20
как перемещать Timage с поворотом


14-1086324658
han_malign
2004-06-04 08:50
2004.06.20
Ядерный пароль на ядерные боеголовки


1-1086315999
Funnymind
2004-06-04 06:26
2004.06.20
Про форму


1-1086346210
killer
2004-06-04 14:50
2004.06.20
Кнопочка в StringGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский