Я слонялся без дела в течение нескольких дней, нашел сообщество замечательным!Я уверен, что кто-то может дать мне мнение по моему вопросу:
У нас есть необработанные данные на сервере Oracle, и наш запрос извлекает около 312 МБ данных (только столбцы, которые нам нужны, объединенные в паре таблиц)).Это делается с использованием Oracle.DataAccess.Client
, FetchSize = RowSize * 512
, что составляет около 3,9 МБ.В настоящее время я использую OracleDataReader
и выполняю обработку в его цикле while()
.
Затем результаты обработки записываются с использованием подготовленных параметризованных IF EXISTS() UPDATE ELSE INSERT
.Из этой базы данных мы можем вернуть необходимые данные непосредственно в Excel после объединения таблиц измерений.
Я ищу способы повышения производительности.Возможно ли многопоточность BULK INSERT
s и UPDATE
s, а также многопоточность обработки строк (скажем, запуск 4 потоков и равномерное разделение входящих строк между ними), и что-то вроде BULK UPDATE
существует в SQL Server 2005?
Я не ищу код для копирования-вставки, меня больше интересуют уже существующие передовые практики или шаблоны.
С наилучшими пожеланиями,