Я знаю, что не рекомендуется использовать Entity Framework для массового вставки, поскольку он добавляет их по одному. (Example 1, example 2.)Сохранение большого графа с Entity Framework 5
Как насчет прикрепления одного объекта, который имеет большой граф под ним, например. 100Ks объектов? - В частности:
- Каковы соображения производительности (времени/памяти) для использования EF5 для этого?
- Есть ли какие-либо рекомендации по хранению больших графиков?
- Являются ли реляционные базы данных хорошей идеей для хранения больших графиков?
Немного фона:
График создается с помощью EF5 Pocos, затем прикрепляется в корне и сохранены. График всегда является новым, никогда не обновляется. БД, который мы используем, - это SQL Server 2012.
Фактический процесс создания может потребовать десятки секунд для больших случаев (100 КБ объектов), поэтому, если процесс attach/save занимает 10% от этого времени, он не будет оказывают значительное влияние на общую производительность по времени.
Не обязательно добавлять объекты по одному. В моей практике я разделил свой объектный граф на независимые (почти) части и загружал его поэтапно, чтобы сохранить целостность, а не получать «OutOfMemoryException» или просто часы безнадежного ожидания. – Fedor
@Fyodor У меня не получилось исключение из памяти, и это не занимало несколько часов. –
Тогда вам повезло, и ваш график более удобен, чем мой. – Fedor