Общий процесс импорта - PullRequest
1 голос
/ 02 июня 2011

Я смотрю на создание общей процедуры импорта для различных частей основной системы моей компании, которая будет использоваться при внедрении нового клиента. Например, мы можем получить файлы инвентаризации, клиентов и т. Д. В формате excel или csv, которые необходимо импортировать в общую модель.

Мне было интересно, есть ли у кого-нибудь хорошие идеи или лучшие практики для таких действий (с точки зрения технологии и / или процесса). Мы магазин MS SQL2005 и .Net.

Я думал о чем-то вроде мира UPS, когда программа интерпретирует ваш файл импорта, и вы сопоставляете столбцы, которые у вас есть, с доступными столбцами в системе UPS, но могут быть гораздо лучшие способы ... это просто интерфейс, к которому я привык .

Во-вторых, я хочу построить его таким образом, чтобы другие разработчики также могли включать в процесс свои собственные процедуры манипулирования данными (т. Е. Если значение импорта равно Y, измените на 1). Поэтому любые идеи о том, как этого добиться, также очень ценятся!

Я знаю, что информации недостаточно для комплексного решения. Я просто надеялся получить несколько хороших идей и, возможно, другую точку зрения о том, как лучше всего на нее напасть;)

Заранее спасибо!

1 Ответ

1 голос
/ 03 июня 2011

Мы используем SSIS и создаем родительские и дочерние пакеты. В дочерних пакетах находятся стандартные поля и преобразования и импорта в рабочие таблицы. В родительских пакетах находятся любые нестандартные преобразования (необходимые из-за проблем с данными с этим конкретным клиентом) и нестандартные задачи импорта (возможно, они предоставляют специализированные данные, которые обычно не нужно импортировать. Родительский пакет принимает данные клиента в формате, который клиент может передать его нам (который слишком часто не тот формат, который мы хотели бы получить) и преобразовать его в наш стандартный формат, а затем вызвать дочерний пакет для выполнения всех стандартных операций. Мы настраиваем дочерние пакеты с помощью переменные, которые отправляются из родительского пакета (например, идентификатор клиента, который будет меняться для разных клиентов).

Следует опасаться разработки дочернего пакета с использованием набора данных меньшего размера, чем обычно. В целях разработки используйте файл самого большого размера, который вы ожидаете получить от своего крупнейшего клиента. Вам бы не хотелось тратить время на создание дочернего пакета, который работает только в том случае, если файл небольшой и занимает 24 часа, если файл большой. Лучше всего знать, какая производительность на больших файлах будет заранее.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...