Нашей команде нужно вставить огромное количество данных в нашу базу данных SQL Server 2008. Мы ищем хорошее решение. Теперь мы придумали один, но я сомневаюсь в нем, просто потому, что он кажется неправильным. Поэтому я спрашиваю здесь, кажется ли это хорошим решением. Дополнительным вызовом является то, что это одноранговая реплицированная база данных на 4 серверах! :)
Представьте, что у нас есть 1 миллион строк для вставки.
- Начать транзакцию
- Увеличьте текущее значение идентификатора в таблице с 1 миллионом
- Подготовьте DataSet/DataTable с 1 миллионом строк и правильными идентификаторами.
- Массовое копирование данных в базу данных
- Зафиксировать транзакцию
Является ли это хорошим решением, можем ли мы столкнуться с проблемами параллелизма, слишком большими транзакциями и т. д.