Технические ограничения ADO.NET

Maxx2004
Дата: 04.07.2005 16:25:49
Уважаемые коллеги!

Кто-нибудь устанавливал опытным путем, какой размер БД приведет к проблемам работы ADO.NET в отсоединенной модели работы на компьютере со средней производительностью (что-то типа селерона 2400 Мгц/256 ОЗУ)?

Если да, то какой выход из ситуации оказался приемлемым?.


Заранее спасибо.
Alex Antonoff
Дата: 05.07.2005 07:08:05
Вам не нравится отсоедененная модель обработки данных? Или какой-то другой скрытый подвох есть в вашем вопросе ?
bazaea
Дата: 05.07.2005 10:26:29
Размер БД это проблема исключительно БД, ты же не будешь ее полностью выкачивать в свое приложение, правда?
Maxx2004
Дата: 05.07.2005 12:01:58
Подвоха в вопросе нет никакого. Смысл отсоединенной модели данных в копировании всей БД в память. Вот меня и интересует, как будет чувствовать себя компьютер с вышеуказанными параметрами при загрузке, например 3 Гбайтной базы.
Alex Antonoff
Дата: 05.07.2005 12:16:53
Странное представление у вас об отсоедененной модели.
Лично я никогда не использовал серверных курсоров и прочей "благодати к которым привыкли программисты. Я просто не понимаю ее смысл. Я беру данных ровно столько, сколько мне нужно в данный момент.
Жаль что вся эта ботва возвращается в ADO.net 2.0
Maxx2004
Дата: 05.07.2005 13:28:17
Alex Antonoff
Странное представление у вас об отсоедененной модели.
Лично я никогда не использовал серверных курсоров и прочей "благодати к которым привыкли программисты. Я просто не понимаю ее смысл. Я беру данных ровно столько, сколько мне нужно в данный момент.
Жаль что вся эта ботва возвращается в ADO.net 2.0


Можно для ламера в двух предложениях что такое отсоединенная модель?
Alex Antonoff
Дата: 05.07.2005 14:01:12
В двух словах - это означает, что вы загружаете нужные вам данные и можете физически откобчиться от БД. То есть ваши данные для операция не требуют подключения. Отсюда вытекает, отсутствие серверных курсоров ...
Maxx2004
Дата: 06.07.2005 08:47:51
Хорошо, тогда представим себе такую ситуацию:
У меня есть таблица с 5 миллионами записей. Мне необходимо отобразить эту таблицу в Датагриде на виндоус-форме. Тащить всю таблицу в память нецелесообразно. Я выбираю например первые 100 записей и нормально отображаю их в Датагриде. Тогда вопрос - как мне организовать скроллинг по датагриду? Я так понимаю полоса прокрутки на датагриде будет масштабирована под 100 записей.... Как мне
Alex Antonoff
Дата: 06.07.2005 09:06:15
Зачем вам отображать все 5 миллионов ??? Сделайте набор фильтров (читай поиск) и выдвайте только срез. Никто и никогда не сможет реально воспринять 5 миллионов строк данных.
Dimyan
Дата: 06.07.2005 10:27:54

Ну а например такая ситуация:
Два грида мастер и деталь
В мастере машины при клику по которым в детели отображаются накладные на
груз в этих машинах. Понятно что сначала загружаем в DataSet только
накладные той машины на которой по умолчанию стоит курсор (в мастер
гриде) далее при перемещении по машинам подгружаем в DataSet остольное
потихоньку. В конечном итоге после некоторого времени работы имеем 10
машин в день в среднем по 300 накладных на машину итого 3000 накладных
для загрузки в DataSet вполне нормально. Можно конечно делать так что
встали на машину в гриде тут же очищается DataSet (естественно только
таблица накладных являющаяся деталью) и загружается данными деталя
данной машины, но это не продуктивно (имхо) при случае если по гриду
мастера начинают туда сюда гонять курсор. Но если подгружать постоянно
данные то можно уперется в то что оператор решил раздвинуть границы
временные отображаемых машин и посмотреть все машины от трех месячной
давности и до сегодняшнего дня. тогда действительно выход только в том
что постоянно очищать деталь при измененном мастере и грузить новые
данные соответствующие активному мастеру выбранному в гиде, но ведь
тогда теряется вся фишка отсоединенной модели. Вот и мне интересно какую
логику тут выбрать? Т.к. если постоянно подгружать данные (понимаю что
это тоже глупо) то и уменя возникает подобный Maxx2004 сколько выдержит
DataSet вливания всебя данных?

Posted via ActualForum NNTP Server 1.2