У меня около 500K строк Мне нужно вернуться из моей базы данных (пожалуйста, не спрашивайте, почему: /).С помощью Dapper можно передать большой набор данных базы данных SQL Server?
Я тогда необходимо сохранить эти результаты как XML (более Urgh :() и фтп этот файл где-то магическое.
мне нужно преобразовать каждую строку в наборе результатов.
Прямо сейчас, это то, что я делаю с скажем .. TOP 100
результатов:
- с использованием методы
Query<T>
щеголеватой, которая бросает все набор результатов в память - затем я использую AutoMapp эр, чтобы преобразовать базу данных POCO к моему FileResult POCO
- Пересчитать в XML
- Затем сохраните эту коллекцию в файловой системе
- Затем FTP
Это прекрасно работает на 100 строк, но я получаю Out Исключение памяти с AutoMapper при попытке преобразовать результаты 500K в новую коллекцию.
Итак, мне было интересно, смогу ли я это сделать ...
- потока данных, из БД с помощью Щеголеватый
- Для каждой строки, automapper это
- Преобразовать в XML
- поток результат на диск
- < повтор для каждой строки >
- Теперь FTP этот файл в волшебном-земля
Я пытаюсь прекратить бросать все в оперативную память. Я думаю, что если я смогу потопить материал, он будет более эффективным с точки зрения памяти, поскольку я работаю только с одним результирующим набором данных.
Может ли кто-нибудь помочь?
Посмотрите здесь: http://stackoverflow.com/questions/12697509/what-does-the-buffered-parameter-do-in-dapper-dot-net – Rob