У меня есть небольшое приложение, которое читает XML-файлы и вставляет информацию о SQL DB.Воспользуйтесь несколькими ядрами, выполняющими операторы SQL
Есть ~ 300 000 файлов для импорта, каждый из которых имеет 1000 записей.
Я начал приложение на 20% файлов, и он работает в течение 18 часов, надеюсь, я смогу улучшить это время для остальных файлов.
Я не использую многопоточный подход, но поскольку компьютер, на котором я запускаю процесс, имеет 4 ядра, я думал об этом, чтобы добиться некоторого улучшения производительности (хотя, я думаю, главная проблема заключается в том, ввод-вывод, а не только обработка).
Я думал об использовании метода BeginExecutingNonQuery() для объекта SqlCommand, который я создавал для каждой вставки, но я не знаю, следует ли ограничить максимальное количество одновременных потоков (и я не знаю, как это сделать).
Каков ваш совет, чтобы получить лучшее использование ЦП?
Благодаря
Дело в том, что я должен сделать небольшую обработку информации перед ее вставкой, в основном файлы содержат информацию, которая идет в 4 разных таблицах, но я посмотрю, это может быть полезно. Спасибо – willvv
Он должен помочь даже в этом случае - возможно, вам понадобится 4 DataTables для хранения результатов вашей обработки, но в любом случае вы должны улучшить свою производительность. –