Для разработчиков действительно ли это стоит того для изучения/использования SSIS?

Я начинаю связываться с довольно мало ETL, работают на моей текущей работе, и все, кажется, довольно неравнодушны к SSIS. Я борюсь, пытаясь сделать большинство тривиальных преобразований через студию BI, которая обычно приравнивалась бы к паре циклов foreach с повышением LINQ. Я не уверен в вариантах использования или пользователях, этот инструмент был бы полезен для и вероятно убедит управление, что я могу обойтись без. Что является лучшим способом изложить доводы, или если бы существуют какие-либо рекомендации для лучших инструментов, которые ценились бы также.

6
задан Pierreten 5 January 2010 в 01:50
поделиться

3 ответа

Я не знаю SSIS, кроме чтения некоторых основ. Также, как и вы, мне очень удобен LINQ, и я мог бы быстро написать код для перемещения и преобразования данных.

Но что, если в таблице 4 гигабайта данных? Как вы думаете, ваш LINQ-код справится с этим изящно? Он может быть обработан, но не так просто, особенно если таблицы имеют много перекрестных ссылок друг на друга. Наивная реализация LINQ попыталась бы загрузить все в память и аварийно завершить работу.

Другое оправдание - это то, что ваши коллеги сильны с SSIS. Любое решение, которое вы дадите компании, построенной на SSIS, будет более ценным для компании, чем LINQ, так как другие люди могут подхватить его и исправить или расширить.

.
4
ответ дан 10 December 2019 в 00:39
поделиться

Как и во всем, у SSIS есть свои плюсы и минусы.

Существует крутая кривая обучения, и часто вещи, которые кажутся простыми, это не так. Иногда это вина SSIS и его инструментария, иногда это просто случай не мыслить в SSIS.

Одно приятное в этом то, что это серверный продукт, поэтому такие вещи, как обработка ошибок и ведение логов, были (по крайней мере, частично) позаботились о вас.

Если вы собираете сложные ETL-пакеты в разных системах, то это очень подходящий и мощный инструмент, и он может быть отличным дополнением к вашему набору навыков, особенно когда вам нужно быть вовлеченным в процесс первичного проектирования решения. Если все, что вы знаете - это код на C#, то это все, что вы можете предложить, когда пакет SSIS может быть правильным решением.

В настоящее время есть немного боли в том, как SSIS интегрируется с другими продуктами БД, а не с SQL (его поддержка Oracle ужасна, например), но я верю, что Microsoft привержена SSIS и будет продолжать улучшать ее. Если вы работаете в магазине Microsoft, то инвестиции в его изучение сейчас, вероятно, стоят того.


А с другой стороны, вот сообщение Ayende, в котором рассказывается о некоторых ключевых болевых точках в SSIS.

Я не согласен со всеми ними, или не думаю, что они прерывают сделку, но приятно знать, что может навредить вам позже.

  • Меня раздражает отсутствие хорошей расширяемости логов - довольно сложно войти в систему каким-то другим способом, кроме SSIS
  • Схема конфигурации может быть настоящей болью

Я действительно думаю, что следующая версия SSIS обратится ко всем этим, хотя... это только часть мира Microsoft, все становится лучше постепенно, но они все же имеют тенденцию к улучшению.

4
ответ дан 10 December 2019 в 00:39
поделиться

SSIS - отличный инструмент, но сначала нужно разобраться в базовых понятиях. Она позволяет сосредоточиться на процессе ETL, а не на программировании и отладке кода. Существует кривая обучения.

Взгляните на примеры Microsoft Project Real и посмотрите, что было бы эквивалентом foreach loop для чего-то подобного.

Возможно, вы также захотите взглянуть на Пентаго-Кеттл и Oracle Data Integrator, но я думаю, что у вас будет то же самое чувство.

2
ответ дан 10 December 2019 в 00:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: