Моя компания проклята симбиотическим партнерством, превращенным в паразитическое. Чтобы получить данные от паразита, мы должны использовать очень медленное соединение odbc. Недавно я заметил, что я могу получить большую пропускную способность, параллельно выполняя запросы (даже в одной таблице).Самый быстрый способ вставить параллельно одной таблице
Существует особенно большая таблица, в которой я хочу извлечь данные и переместить их в нашу локальную таблицу. Выполняя запросы параллельно, я могу получить данные быстрее, но я также думаю, что это может вызвать проблемы с попыткой записи данных из нескольких запросов в одну и ту же таблицу сразу.
Какой совет вы можете дать мне о том, как лучше всего справиться с этой ситуацией, чтобы я мог использовать увеличенную скорость использования запросов параллельно?
EDIT: У меня есть отличная обратная связь здесь, но я думаю, что я не совсем понял, что я вытаскиваю данные через связанный сервер (который использует драйверы odbc). Другими словами, это означает, что я могу запускать обычные инструкции INSERT, и я считаю, что это обеспечило бы лучшую производительность, чем SqlBulkCopy или BULK INSERT (на самом деле, я не считаю, что BULK INSERT будет даже вариантом).
Как вы предположили, параллельная запись, вероятно, не поможет производительности. Вы можете найти некоторые ответы здесь http://stackoverflow.com/questions/2861944/how-do-i-do-very-fast-inserts-to-sql-server-2008 –
Вы переносите данные? Я спрашиваю, потому что вы указали свои движущиеся данные на локальные таблицы. Также как вы делаете это в коде, например, C# или как часть задания sql? –
@mouters Да, но новые данные не поступают в нашу базу данных, поэтому мне придется копировать что-нибудь новое на ежедневной основе. До сих пор я делал это в ssms вручную, но параллельная идея будет сделана в C#, если я это сделаю. Вероятно, я не собираюсь делать это параллельно b/c. Теперь я получил все исторические данные и на самом деле просто нужно настроить работу sql для запуска и получения новых данных в ночное время. Но я просто хотел получить некоторую информацию об идее b/c, которую я могу использовать для нее в ближайшем будущем на других материалах. –