Помогает ли пакет служб SSIS ежедневно переносить данные с сервера MySQL на SQL Server 2008? - PullRequest
0 голосов
/ 05 февраля 2012

Я пытаюсь записать пакет служб SSIS, который перенесет запрашиваемые данные с сервера MySQL на SQL Server. Мне нужно изменить конкретный столбец, скажем, «поток» (DT_I4) значения (1 будет 2, 2 станет 4 и т. Д. Только некоторые случайные 4 замены целых), а затем проверить другое значение столбца (emp_id), если оно существует в SQL Server перед вставкой. если он существует, не вставляйте, а если нет, то мы записываем эти значения.

Я новичок в SSIS, поэтому я смог добавить как источник ADO.NET, так и пункт назначения ADO.NET. Мне нужна помощь со следующим

  1. Должен ли я использовать производный столбец или компонент сценария для преобразования значений
  2. Как проверить, существует ли emp-id в SQL Server
  3. Как мне отобразить ошибки?
  4. Как лучше всего реализовать вышеуказанную ситуацию, спасибо за чтение и за вашу помощь.

1 Ответ

0 голосов
/ 06 февраля 2012

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

1) Если говорить точнее, возможно, я не понял, где преобразование должно происходить в описании вашей проблемы, но я бы не начал с Преобразование производного столбца или Компонент сценария .Вместо этого для прямого преобразования типов я бы использовал Преобразование преобразования данных .

Перечитывая, возможно вы пытаетесь преобразовать значение .В зависимости от сложности это может быть выполнено с помощью одного или двух производных столбцов, а в худшем случае перейдите к задаче сценария, но, что еще лучше, - для данных нужно , чтобы получить не отображенное значение?Бросьте оператор CASE в исходном запросе и пропустите сложность служб SSIS с отображением значения A в значение B.

2) Преобразование Lookup поможет вам в этом отделе.Важно отметить, что неудача при поиске значения приведет к сбою пакета в 2005 году. 2008+ опция для обработки не найденных строк более доступна.Существует выходной путь «Перенаправить строки на выход без совпадения», и это путь, который вы захотите использовать, поскольку вам нужны только строки, которые еще не существуют.В качестве общего руководства по поиску, только извлекайте интересующие столбцы, поскольку пакет будет кэшировать этот поиск локально.Это плохо работает с серверной памятью, когда она имеет сотни миллионов строк и более 80 столбцов в ширину.

3) Какие ошибки?Ошибки преобразования?Ошибки поиска?Некоторая-другая-ошибки не определены?В общем, вы, вероятно, захотите прочитать о Пути служб интеграции .Все в потоке данных имеет путь ошибки, выводящий из него.У большинства всего есть 1+ пути, не связанные с ошибками.В тех случаях, когда доступно несколько путей без ошибок, при подключении их к следующему компоненту BIDS спросит, какой выход вы собираетесь использовать.

4) Зная определенную чрезвычайно общую проблему, ваш пакет может выглядеть примерно так: generic dataflow

Уточните свой вопрос, если это не касается специфики.

...