Массовая замена содержимого таблиц SQL Server
Мое приложение ASP.NET MVC имеет несколько веб-серверов, обращающихся к базе данных SQL Server через Entity Framework 6. База данных имеет 2 таблицы, между которыми существует связь один ко многим.
Один раз в день все содержимое обеих таблиц необходимо заменять новым набором данных, который загружается через Интернет из удаленной веб-службы. Количество записей может составлять десятки тысяч. Записи не очень большие, около 10 полей nvarchar и целых.
Я планирую, чтобы один веб-сервер загрузил набор данных из удаленного веб-сервиса в две таблицы SQL Server. Это должно было бы удалить старый контент и эффективно загрузить новый контент. Пока это происходит, другие веб-серверы должны быть защищены от доступа к таблицам (возможно, путем блокировки таблиц).
Я ищу быстрые варианты для достижения этой цели, а также их плюсы и минусы. Если есть пакет NuGet или команда Entity Framework, которая делает это для меня, это было бы идеально.
1 ответ
Загрузите их во временные таблицы и MERGE (оператор слияния) в ежедневные таблицы использования.