powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Большое кол-во записей и DataSet ?
31 сообщений из 31, показаны все 2 страниц
Большое кол-во записей и DataSet ?
    #32898591
iskuzer1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Народ подскажите как работать с DataSet если записей 50 000, 100 000,
500 000, и т д с небольшим количеством 1000 зап DataSet работает отлично
но дальше не справляется ...
Если варианты работы c DataSet ?
если нет то какая альтернатива ???? HELP
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32898604
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Датасет "официально" не предназначен для таких объемов. :-( По крайней мере в текущей версии фреймворка.
Если у вас проблемы с его сериализацией, то можно посмотреть в сторону DataSetSurrogate (ищите в статьях в мсдн).
Если проблемы в другом, то ищите другие подходы организации данных.
В фреймворке 2.0 обещают много улучшений датасета. В частности нормальную бинарную сериализацию.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32898625
iskuzer1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да все оказывается сложней .... как же так блин ... а как работа с большими данными в том же Buider C++ в VCL это делается на 123 .... ща буду рыть
DataSetSurrogate ....
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32898820
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В VCL датасет - обертка надо ADO RecordSet. А он был достаточно неприхотлив к ресурсам.
В .НЕТ датасет основан на хмл, ресурсов требует намного больше. Да и по своей идеологии .нет не предназначен для работы с такими объемами данных. По крайней мере в стандартных паттернах.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899444
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А для чего может понадобиться тащить на клиента 100 000 записей?
Используйте разбиение на страницы на стороне сервера и тащите постранично.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899472
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) А кто сказал, что 100000 записей тянутся клиенту?
2) Клиенту они тоже могут понадобиться. Первый приходящий в голову пример - выгрузка набора данных во внешний файл. CSV, например.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899513
iskuzer1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вопрос решил на уровне DATASET заменял на OleDbDataReader
Теперь другой ворос загрузка в Grid это тоже для VS проблематично грузть большое кол-во записей ....
полльзуюсь ASPxGrid от Devexpress причем у меня на магине грузет 25000 нормально а вот когда размещаю aspx формы у провайдера на хосте все задумывается теперь уже на уровне GRIDаааа .....
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899514
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>>1) А кто сказал, что 100000 записей тянутся клиенту?
а среднее звено не клиент чтоли по отношение к БД?

>>>>2) Клиенту они тоже могут понадобиться.
Зачем? Сразу все 100 000?
>>>Первый приходящий в голову пример - выгрузка набора данных во внешний файл. CSV, например.
И что это даст? Хотите файл обрабатывать?

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899559
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник
>>>>2) Клиенту они тоже могут понадобиться.
Зачем? Сразу все 100 000?

Почему нет? Репликация данных, например.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899574
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему нет? Репликация данных, например

такие объемы лучше бы средствами СУБД реплицировать, а не клиента.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899586
iskuzer1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа ... а как по поводу грида есть идеи ?
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899614
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господа ... а как по поводу грида есть идеи ?

А грид по вашему память не юзает для хранения 100 000 записей полученных из datareader?
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899629
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Клиенту нужно во внешнем файле 100000 записей? Вынь да полож, как говорится. Да, в большинстве случаев это плохая практика - передавать такие большие датасеты. Но иногда это необходимо.

автора среднее звено не клиент чтоли по отношение к БД?
А вытяните-ка мне из MS SQL 100 записей из середины резалтсета! Ага. Вложенный подзапрос с двумя ORDER. А если исходный запрос достаточно сложный?!
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899641
iskuzer1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Grid Жрет память конечно .... в том то и вопрос как грузануть например по странично как реализовывается ?
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899643
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автортакие объемы лучше бы средствами СУБД реплицировать, а не клиента.

А если у меня БД - это внешний XML-файл? Как быть? И в общем случае, когда СУБД не поддерживает репликацию, как быть?
А как быть, если требуется независимость от СУБД? (Есть универсальный DAL, с помощью которого относительно просто реализовать свою репликацию, а через СУБД каждый раз проблемы.)
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899679
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А вытяните-ка мне из MS SQL 100 записей из середины резалтсета! Ага. Вложенный подзапрос с двумя ORDER. А если исходный запрос достаточно сложный?!

во временную таблицу с identity-полем, и там уже хоть из конца. ( вариантов много - FAQ по MSSQL на этом форуме)

А если у меня БД - это внешний XML-файл? Как быть? И в общем случае, когда СУБД не поддерживает репликацию, как быть?
А как быть, если требуется независимость от СУБД? (Есть универсальный DAL, с помощью которого относительно просто реализовать свою репликацию, а через СУБД каждый раз проблемы.)

а вы все 100 000 - 500 000 записей реплицируете? Я бы реплицировал только измененные.
в общем случае dataset для таких объемов не предназначен, если вам нужен бек-офис с таким объемом пишите его под MSDE или другой "настольной" СУБД.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899727
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник
а вы все 100 000 - 500 000 записей реплицируете? Я бы реплицировал только измененные.

Хммм.. а если измененных - 500000?
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899752
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хммм.. а если измененных - 500000?

архитектуру пересматривать надо в сторону перехода от DataSet к MSDE.
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32899816
Bigheadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторво временную таблицу с identity-полем, и там уже хоть из конца. ( вариантов много - FAQ по MSSQL на этом форуме)

Мне они известны. Но не всегда это бывает удобно.

авторв общем случае dataset для таких объемов не предназначен
Об этом я тоже выше писал.

Проблема еще в том, что датасет очень удобен. И частенько хочется его использовать для того, для чего он не предназначен. А альтернатива писать свой компонент не прельщает. :-)
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32900208
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник
Хммм.. а если измененных - 500000?

архитектуру пересматривать надо в сторону перехода от DataSet к MSDE.

Архитектуру чего? Интернета?
MSDE тут каким боком, если речь о репликации, а MSSQL с репликацией дружит очень плохо?
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32900606
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Архитектуру чего? Интернета?
MSDE тут каким боком, если речь о репликации, а MSSQL с репликацией дружит очень плохо?

Архитектуру приложения.
Что вы хотите сказать? Что MSDE c MSSQL дружат???
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32900607
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>>Архитектуру чего? Интернета?
>>>MSDE тут каким боком, если речь о репликации, а MSSQL с репликацией дружит очень плохо?


Архитектуру приложения.
Что вы хотите сказать? Что MSDE c MSSQL ПЛОХО дружат???

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32900692
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> Что вы хотите сказать? Что MSDE c MSSQL ПЛОХО дружат???

Не MSDE с MSSQL, а MSSQL(MSDE) -> агент репликации -> MSSQL(MSDE).
Тем более что пускать внешнего пользователя к хранилищу баз данных напрямую - моветон :-))
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32900873
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MSSQL(MSDE) -> агент репликации -> MSSQL(MSDE).

И почему эта связка плохо дружит, можно пример?

Тем более что пускать внешнего пользователя к хранилищу баз данных напрямую - моветон :-))

Так вы не пускайте куда ему не следует, для этого разные настройки и схемы репликации есть, да хоть свою обработку пишите...
Вопрос то не в этом.
Dataset используют для объемов в среднем 10-20 тыс. записей, не больше. Может конечно и есть такие "мобильные" пользователи у которых по 5 гиг оперативки, но я таких еще не встречал
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901099
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>> MSSQL(MSDE) -> агент репликации -> MSSQL(MSDE).
> И почему эта связка плохо дружит, можно пример?
http://support.microsoft.com/default.aspx?scid=kb;en-us;814032

Сам понимаешь - два года ждать четвертого сервис пака, который исправит ситуацию - сли-и-ишком долго :-)

> Так вы не пускайте куда ему не следует, для этого разные настройки
> и схемы репликации есть,

Все они предполагают подключение сервера SQL 443-м портом напрямую в интернет. И использовать их после дыры во втором сервис-паке и появления вирусов для SQL даже и не проси.

> да хоть свою обработку пишите... Вопрос то не в этом.

Вот именно в том и вопрос - свою обработку напишите - вот и пишут люди.

> Dataset используют для объемов в среднем 10-20 тыс. записей,
> не больше.

Кто сказал? Ссылку на источник в студию, плиз...

> Может конечно и есть такие "мобильные" пользователи
> у которых по 5 гиг оперативки, но я таких еще не встречал

Хмм.. а зачем 5 Гиг оперативки когда есть файл подкачки?
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901100
Фотография Лиман Артём
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман Дынник
Dataset используют для объемов в среднем 10-20 тыс. записей, не больше. Может конечно и есть такие "мобильные" пользователи у которых по 5 гиг оперативки, но я таких еще не встречал
Posted via ActualForum NNTP Server 1.1

тоже стояла проблема с обработкой больших данных. База около 250000 записей, если задать плохой критерий поиска, то результатом может быть весь объем. Естестно это плохо сказывалось, да и загрузка в грид больше 10000 строк вела к большим тормозам.
Решено было сделать постраниченое отображение данных.
Загрузка проходила в два этапа:
1) по условиям запроса DataReader'ом в фоновом потоке(с небольшим приоритетом чтоб не нагружать систему) загружался массив (на самом деле это был DataTable с одним столбцом) идентификаторов
запрос примерно выглядит так:
Код: plaintext
1.
select ID from MyBigTable where (...)
2) при загрузке минимиально необходимого кол-ва строк (кол-во строк отображаемых на одной странице) в асинхронном режиме (не прекращая загрузки ID) загружалась информация в основную таблицу, которая и выводилась на экран
запрос примерно выглядит так:
Код: plaintext
1.
2.
select * from MyBigTable 
where id in (#сформированный список ID для данной страницы#)
Так же был организован специальный контрол для управления переходом по страницам даже в то время, когда все данные(ID) еще не загрузились.
Тоесть пользователь не дождавшись окончания загрузки уже мог работать с результатом
минус такого подхода состоял в том что при такой технологии необходимо два открытых независмых соединений с БД, ну и немного нестабильная работа(зависания) в 9х осях.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901135
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кто сказал? Ссылку на источник в студию, плиз...

Вы хотите сказать что вам удалось получить нормальную производительность при работе с 200 тыс записей в dataset?

Все они предполагают подключение сервера SQL 443-м портом напрямую в интернет. И использовать их после дыры во втором сервис-паке и появления вирусов для SQL даже и не проси

Можно репликацию и "а-ля" off-лайн делать, по мылу, ftp, дискетами, как угодно.
Потом, вы думаете своя репликация на DataSet-ах вам большую защищенность дает?
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901192
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Вы хотите сказать что вам удалось получить нормальную
> производительность при работе с 200 тыс записей в dataset?

Нет, не хочу. Больше чем до сотни записей редко дело доходит.

> Можно репликацию и "а-ля" off-лайн делать, по мылу, ftp,
> дискетами, как угодно.

Ага, для трехсот удаленных клиентов на дискетах. LOL!!!

> Потом, вы думаете своя репликация на DataSet-ах вам
> большую защищенность дает?

Может защищенность и не большую, но сервер напрямую портом в инет не светит и это уже большой плюс. При репликации же большого количества данных из большого количества таблиц (около 300 - 500) по управляемости процессом и возможностям изменения структуры реплицируемой базы данных стандартные агенты репликации я бы даже рядом не поставил.
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901274
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может защищенность и не большую, но сервер напрямую портом в инет не светит и это уже большой плюс. При репликации же большого количества данных из большого количества таблиц (около 300 - 500) по управляемости процессом и возможностям изменения структуры реплицируемой базы данных стандартные агенты репликации я бы даже рядом не поставил.

Давайте вернемся к исходному вопросу:

Народ подскажите как работать с DataSet если записей 50 000, 100 000,
500 000, и т д с небольшим количеством 1000 зап DataSet работает отлично
но дальше не справляется ...
Если варианты работы c DataSet ?
если нет то какая альтернатива ???? HELP

Какую альтернативу вы бы могли предложить?
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901467
Фотография Roman S. Golubin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Какую альтернативу вы бы могли предложить?

Нет, ну тут все более чем однозначно - ставить msde и показывать мелкими порциями...
...
Рейтинг: 0 / 0
Большое кол-во записей и DataSet ?
    #32901562
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так а я о чем говорил?
Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
31 сообщений из 31, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Большое кол-во записей и DataSet ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]