Сценарий:
Необходимо загрузить множество объектов из базы данных интеграции в рабочую базу данных.Мы загружаем вещи в нашу базу данных с помощью NHibernate, потому что соответствующие бизнес-правила уже написаны на C # с использованием наших постоянных сущностей.Все работает нормально, мы загружаем наши действующие объекты в БД.СУБД - это SQL Server 2005 (может быть обновлен до 2008).
Проблема:
Количество загружаемых сущностей скоро вырастет безумно, и мы уверены, что это займет больше времени, чеможидается и не сможет удовлетворить требования наших клиентов.
Решение (?):
Легко просто запустить вещи параллельно: разбить все сущности на сегменты и импортировать их параллельно.
Проблема в том, что все они вставляются в одну и ту же таблицу, и весь процесс может стать узким местом в блокировках таблицы.
Таким образом, вопрос заключается в следующем: есть ли способ сделать эти вставки таким образом, чтобы не блокировать таблицу для других транзакций, пытающихся вставить ее в ту же таблицу?Я слышал об уровне изоляции снимков, но не нашел никого, кто бы использовал его по-настоящему.Любое руководство приветствуется.