Должен ли я использовать SSRS или SSIS? - PullRequest
0 голосов
/ 04 августа 2011

У меня есть запрос Oracle, и я хочу ежедневно экспортировать результаты запроса в файл Excel. Я изучил SSRS и SSIS и не уверен, какой из них лучше использовать.

Запрос является обычным выбором, который возвращает 10-20 полей. Это довольно просто с парой соединений и оговорок. Он выбирает DISTINCT, чтобы избавиться от повторяющихся строк.

Это прямое сопоставление запроса с файлом Excel.

Имеет ли SSIS преимущества в производительности по сравнению с SSRS?

Я склонялся к SSRS, потому что он очень прост в настройке, и есть дополнительные преимущества, связанные с возможностью простого запуска нашего извлечения / отчета с разными датами через веб-интерфейс SSRS.

Похоже, что SSIS будет сложнее настроить, но все же просто. Тем не менее, мне кажется, что мне придется справиться с тем, как переименовать экстракты, не используя основной шаблон Excel, поэтому нужно выполнить больше шагов. Также возникают проблемы с получением параметров для работы с запросами Oracle.

Ответы [ 3 ]

3 голосов
/ 04 августа 2011

Это не отчет, поэтому не используйте Reporting Services.

Необходимый для этого пакет служб SSIS - это отдельная задача Data Flow с двумя компонентами: «Источник OLE DB» для вашего запроса Oracle.и "Назначение Excel".Нарисуйте соединение между двумя компонентами, настройте их, нажмите F5, и все готово.


Почти любое свойство в SSIS может быть установлено в значение выражения.Это включает свойство «ExcelFilePath» диспетчера соединений Excel.Просто установите для этого выражения выражение, добавляющее дату к пути к файлу, и вы будете установлены, если будете запускать пакет только ежедневно.

Если вам нужно запускать его более одного раза в день, тогдапросто перед задачей Data Flow задайте задачу File System, чтобы удалить любую предыдущую версию файла.


Просто я быстро попробовал это и обнаружил одну маленькую проблему.Источник данных, который я использовал, включал столбцы VARCHAR.Назначению Excel требовался Unicode, поэтому мне пришлось разместить компонент преобразования данных между источником и местом назначения.

3 голосов
/ 05 августа 2011

Несмотря на то, что я большой поклонник SSIS, я бы пошел с SSRS в этом сценарии.

  1. Ваше требование - вам просто нужны данные в файле Excel. Хотя и SSIS, и SSRS могут выполнять эту задачу. SSRS имеет небольшое преимущество в том, что вы пытаетесь достичь.

  2. Вы можете отформатировать файл Excel в отчете SSRS так, как вам хотелось бы.

  3. Подобно пакету SSIS, который легко настраивается, SSRS также имеет более простой процесс разработки. Вы можете оформить и заполнить все, что захотите.

  4. Служба SSIS требует задания SQL для ее планирования, чтобы запустить пакет и затем отправить вам файл Excel или сохранить его в каком-либо месте. Однако в SSRS вы можете просто создать подписку и экспортировать файл Excel в определенную папку или отправить его вам по электронной почте.

  5. Если вы когда-нибудь захотите изменить формат экспорта файла, SSRS уже сделает это за вас.

Некоторые моменты, о которых я мог подумать.

1 голос
/ 04 августа 2011

Эта ссылка имеет хорошую оценку представляемого вами дела:

http://theruntime.com/blogs/gscarfone/archive/2009/07/15/data-dump-to-excel-through-ssis-and-ssrs.aspx

В основном это зависит от вашего конкретного сценария.

Надеюсь, это поможет ...

...