Я рекомендую соблюдать принцип NIH, чтение и преобразование данных - это хорошо понятное упражнение. Доступно несколько бесплатных инструментов ETL с различными подходами и направленностью. Pentaho (от Kettle) и Talend являются примерами на основе пользовательского интерфейса. Существуют другие среды ETL, такие как Rhino ETL , которые просто предоставляют вам набор инструментов для написания ваших преобразований в коде. Какой из них вы предпочитаете, зависит от ваших знаний и, что неудивительно, предпочтений. Если вы не разработчик, я предлагаю использовать один из инструментов на основе пользовательского интерфейса. Я использовал Pentaho ETL в ряде небольших сценариев хранилища данных, это можно запланировать с помощью инструментов операционной системы (cron в Linux, планировщик задач в Windows). Более сложные сценарии могут использовать сервер репозитория Pentaho PDI, который позволяет централизованно хранить и планировать ваши задания и преобразования. Он имеет коннекторы для нескольких типов баз данных, включая MS SQL Server. Я сам не использовал Talend, но слышал о нем много хорошего, и он тоже должен быть в вашем списке.
Основным преимуществом использования стандартного инструмента является то, что, как только ваши требования растут, у вас уже есть инструменты для их решения. Вы можете решить текущую проблему с помощью небольшого сценария, который выполняет сложное выделение и вставляет результаты в целевую базу данных. Но опыт показывает, что эти требования редко остаются неизменными в течение длительного времени, и как только вам придется включать дополнительные базы данных или даже некоторую информацию в текстовые файлы, ваши сценарии становятся все менее и менее обслуживаемыми, пока вы, наконец, не сдадите и не переделаете свою работу в стандартном наборе инструментов. предназначен для работы.