Reporting Services система бизнес-анализа от компании Microsoft
Reporting Services – это полная серверная платформа для создания, управления и доставки традиционных и интерактивных отчетов. Это интегрированная часть структуры бизнес-анализа от компании Microsoft, которая объединяет возможности управления данными Microsoft SQL Server и Windows Server со знакомыми и мощными приложениями Microsoft Office System. Результатом является мощная и эффективная в плане затрат платформа для бизнес-анализа (BI).
Роль построения отчетов в бизнес-анализе
Бизнес-анализ извлекает пользу из ценной корпоративной информации и IT инвестиций для понимания бизнеса с целью улучшения производительности и эффективности работы организации. Микрософт долго работала над тем, чтобы расширить возможности бизнес-анализа для организаций всех типов и размеров и помочь людям принимать решения более быстро и качественно.
Составление отчетов представляет “последнюю милю” бизнес-анализа, расширяя возможности систем бизнес-анализа и бизнес-процессов для пользователей как внутри организации, так и за ее пределами. Интерактивные веб-отчеты с возможностью погружения вглубь информации размывают границу между традиционными отчетами и интерактивными средствами анализа, обеспечивая пользователей самой последней информацией.
Компоненты Reporting Services
Reporting Services интегрирует множество компонент в гибкую архитектуру веб-приложения:
- полный набор средств для создания, управления, просмотра и доставки отчетов;
- масштабируемый, серверный движок для размещения и обработки отчетов;
- открытые интерфейсы и набор API для встраивания отчетов или интегрированного решения в различные IT-среды.
Reporting Services доступен как интегрированная часть инфраструктуры бизнес-анализа от Microsoft, которая включает:
- реляционную базу данных для хранения консолидированных для анализа данных (SQL Server);
- службы OLAP для создания предварительно построенных кубов для быстрого интерактивного анализа (Analysis Services);
- инструменты для извлечения, преобразования и загрузки данных между операционными системами и системами бизнес-анализа (Data Transformation Services);
- средства выявления закономерностей (data mining) для поиска важной, но не обязательно очевидной, бизнес-информации из больших наборов данных;
- система быстрой разработки (Microsoft SQL Server Accelerator for BI) для построения и развертывания аналитических приложений с низкими затратами на реализацию.
Хотя Reporting Services и использует базу данных SQL Server, он может работать с данными из различных источников, включая интерфейсы ODBC и OLE DB. Продукт разработан таким образом, чтобы подходить практически любой IT-архитектуре и бесшовно встраиваться в приложения.
типы отчетов
Отчеты масштаба предприятия. Большим организациям нужна возможность обеспечить своевременной информацией широкий круг сотрудников. Решение должно быть быстрым и рентабельным для внедрения, а также оно должно использовать существующие системы и профессиональные знания. Сотрудники этих организаций хотят получать самую последнюю информацию— когда она им нужна — без обучения новым клиентским программным средствам или запрашивания специальных отчетов у IT-персонала. IT-организациям нужна управляемость и производительность решения класса предприятия для управления большим объемом подписок на отчеты и для уверенности в том, что распространение отчетов соответствует корпоративным требованиям безопасности.
Встроенные отчеты. Независимым поставщикам программного обеспечения (ISVs) нужно такое решение для работы с отчетами, чтобы его можно было бесшовно интегрировать с их программными пакетами для бизнес-анализа или основных приложений предприятия, без дополнительных затрат или сложностей для конечных пользователей. Заказчики должны быть способны самостоятельно производить небольшие изменения в таких отчетах без дополнительных разработок от ISV. Вкратце, ISVs хотят быть сфокусированными на бизнес-части своего решения, а не на механизме работы отчетов.
Отчеты для Business-to-Business (B2B) и Business-to-Consumer (B2C). Многие организации хотят встраивать отчеты в веб-приложения для распространения их партнерам и потребителям Этим организациям нужна изоляция внешних пользователей от сложности внутренних источников данных наряду с обеспечением соответствующей безопасности данных. Крупным организациям нужны высоко масштабируемые решения которые в состоянии обрабатывать тысячи клиентских запросов через интернет.
традиционные и интерактивные отчеты
Reporting Services удовлетворяет широкому набору потенциальных требований для поддержки традиционных и интерактивных (веб) отчетов.
Продукт поддерживает следующие возможные типы отчетов:
1. Табличный - фиксированное количество столбцов.
2. Матричный - Количество столбцов зависит от результата запроса.
3. Графический - данные представлены графически.
4. В свободной форме - данные на странице организованны в свободной форме; полезно для создания форм.
Создатели отчетов могут комбинировать различные формы в одном и том же отчете. Механизм генерации отчетов обеспечивает фильтрацию после выполнения запроса к базе данных, сортировку, группировку и широкий набор функций агрегаций, включая суммирование, среднее, минимум, максимум, количество, а также промежуточные значения.
Для отчетов, предназначенных для печати, Reporting Services предоставляет полный контроль над разбиением текста на страницы, включая верхний и нижний колонтитулы, установка границ и принудительное разбиение.
интерактивные отчеты
Для поддержки интерактивности Reporting Services обеспечивает ряд особенностей.
1. Параметризованные отчеты- отфильтровывают информацию для обеспечения только тех данных, которые предназначены для данного пользователя.
2. Скрытые элементы отчета (drill-down)- скрытые элементы можно показывать и скрывать с помощью действий пользователя.
3. Гиперссылки- встроенные в отчеты гиперссылки направляют пользователей на веб-страницы.
4. Drill-through связи- Drill-through связи открывают другой отчет из текущего, например детализированный отчет из суммарного. Первоначальный отчет обычно передает параметры в детализированный.
5. Закладки- направляют пользователей в другую область текущего отчета.
6. Карты документа- в обозревателе HTML карта документа появляется как таблица содержания рядом с отчетом. При выборе пользователем элемента этой таблицы, обозреватель переведет его в соответствующее место отчета.
персональные отчеты
Для увеличения деловой производительности и предоставления пользователям только нужной им информации, Reporting Services предлагает несколько способов персонализации отчетов. Обеспечивая специфичные для пользователя версии отчетов, IT-подразделения могут избежать трудоемких задач создания и управления специфичными отчетами для конкретных подразделений и людей.
Reporting Services предлагает различные методы для персонализации отчетов, включая следующие:
• Безопасность на уровне базы данных помогает контролировать доступ пользователей к информации.Для того чтобы реализовать эту возможность, отчет должен запускаться с пользовательскими параметрами регистрации.
• Обеспечение параметров запроса в момент выполнения пользовательской информацией.Можно брать только необходимую информацию из источника данных.
• Фильтрация данных непосредственно внутри отчета.С помощью этого метода, запрос возвращает все данные, но только информация релевантная данному пользователю включается в его версию отчета.
• Создание связных отчетов, которые ссылаются на текущий, но имеют разные свойства, разрешения и/или параметры. Например, связный отчет может отфильтровывать данные, возвращаемые из определения отчета для создания более специализированных версий существующего отчета.
Каждый метод имеет свои требования к обработке, управлению и хранению.
встроенное создание отчетов
Reporting Services включает возможности и пользовательские сервисы необходимые для создания и доставки отчетов, причем без единой строчки кода. Reporting Services также поддерживает интеграцию с широким набором инструментов для создания отчетов.
Report Designer
Reporting Services включает графическую оболочку для создания отчетов - Report Designer. Report Designer использует интегрированную среду разработки Microsoft Visual Studio .NET, которая предоставляет доступ ко всем возможностям создания отчетов. Пользуясь всеми преимуществами богатой интегрированной среды разработки и проектной структуры в Visual Studio .NET, пользователям может не понадобиться писать любой код или {ML для создания отчетов.
Используя Report Designer, можно настраивать источники данных и конструировать запросы, добавлять в отчет регионы данных и поля, определять разметку отчета и устанавливать для отчета интерактивные возможности. Можно использовать Report Wizard для облегчения прохождения через процесс создания отчета, а также есть возможность предварительного просмотра отчета с загруженными в него данными.
Как только отчет готов, Report Designer опубликовывает его на сервере отчетов с помощью Reporting Services Simple Object Access Protocol (SOAP) API.
XML Report Definition Language
Microsoft, вместе с партнерами по индустрии, выработала ХML-стандарт для определения отчета. Reporting Services использует этот опубликованный формат - Report Definition Language (RDL).
Отчеты, основанные на XML, имеют ряд преимуществ при создании:
- авторы отчетов могут использовать Report Designer, для генерации XML;
- веб-разработчики могут использовать текстовый редактор для создания отчетов в этом опубликованном формате;
- пользователи также смогут создавать отчеты для управления и публикации Reporting Services с инструментами от третьих компаний-производителей программного обеспечения, поддерживающих RDL.
Множество независимых разработчиков программного обеспечения (ISV) добавляют поддержку стандарта RDL в свои продукты формирования отчетности, тем самым, улучшая интеграцию с платформой бизнес-анализа Microsoft и решением для управления отчетами.
широкий набор источников данных
Reporting Services может создавать отчеты из широкого диапазона источников данных. Reporting Services Beta 2 поддерживает следующие:
- Microsoft SQL Server 2000 и SQL Server 7;
- Oracle;
- OLE DB-совместимые источники данных, включая Analysis Services;
- ODBC.
Разработчики могут поддерживать другие источники данных через открытый набор API, основанный на .NET.
комплексное управление отчетами
Как серверное решение управления отчетами, Reporting Services включает возможности и сервисы уровня предприятия необходимые для интеграции и управления полным жизненным циклом отчетов. Веб-приложение Report Manager управляет всеми аспектами жизненного цикла, включая следующие:
- источники данных;
- запуск отчетов по требованию и по расписанию;
- история запусков;
- безопасность;
- подписка и доставка.
Графический интерфейс и встроенный набор инструментов позволяет IT-подразделениям управлять отчетами централизованно, распространяя их как внутри организации так и за ее пределами.
Reporting Services также имеет возможности для создания и выполнения скриптов, которые позволят администраторам автоматизировать пакетные операции на развернутых серверах. Например, скрипты могут быть написаны для применения безопасности к множеству отчетов на сервере, добавления или удаления элементов или копирования элементов сервера отчетов с одного сервера на другой.
Включение возможностей управления масштаба предприятия в решение для управления отчетами как упрощает ежедневное управление так и помогает увеличить надежность всего решения в целом.
гибкая политика безопасности
Для управления доступом к отчетам на сервере отчетов, а также обеспечения порядка административного доступа и контроля, Reporting Services использует модель безопасности, основанную на ролях.
Модель безопасности проводит различие между административными задачами, производимыми в основном персоналом IT, и управлением наполнения для специфичных отчетов. Как результат, IT-подразделения могут поручать задачи управления наполнением для таких отчетов (или групп отчетов) разработчикам отчетов или определенным отделам, в целом, сохраняя контроль за средой управления отчетами и их безопасностью.
Продукт поставляется с предустановленным набором ролей, который можно настраивать в соответствие с инфраструктурой предприятия для обеспечения безопасности. Организации могут назначать существующие роли или создавать новые в соответствие со своими потребностями, как показано ниже:
1. Обозреватель (Browser role)- запуск отчетов и навигация по структуре каталогов.
2. Менеджер наполнения (Content manager role)- определение структуры каталогов для хранения отчетов и других элементов; установка безопасности на уровне элемента; просмотр и управление элементами, которые хранятся на сервере.
3. Публикатор (Publisher role)- публикация наполнения на сервер отчетов.
4. «Мои отчеты» (My Reports role)- построение отчетов для персонального использования и хранение отчетов в собственной папке.
5. Системный администратор (System administrator role)- включение/выключение настроек сервера отчетов и установка значений по умолчанию; установка безопасности на сайте в целом; определение и создание ролей; управление заданиями по расписанию.
6. Системный пользователь (System user role)- просмотр запланированной по расписанию информации в общих планировщиках или просмотр другой основной информации о сервере отчетов.
Модель безопасности поддерживает множественное разбиение на роли для обеспечения специфичного доступа к задачам, таким как управление подписками. Она может быть приспособлена или изменена соответствующим образом практически для любой среды.
масштабируемые возможности обработки отчетов
Для удовлетворения потребностей крупномасштабных организаций, решение управления отчетами должно сочетать пользовательские потребности в оперативном доступе к информации с эффективной обработкой и использованием ресурсов. Reporting Services содержит гибкие настройки для обработки отчетов по расписанию.
Запуск отчетов по требованию и по расписанию.Администраторы сервера отчетов могут контролировать время запуска отчетов; это особенно важно для отчетов, которые обращаются или обрабатывают большое количество данных. Отчеты могут быть запущены по требованию (когда пользователь запрашивает его), по расписанию, либо в комбинации. Множество отчетов могут распределять общий планировщик обработки, например, для генерации месячной или квартальной отчетности.
Кэширование отчетов.Reporting Services отделает базовую обработку отчета (получение и размещение данных) от преобразования отчета в указанный формат. Перед преобразованием и доставкой отчетов, сервер отчетов создает их в промежуточном формате. Эта позволяет администраторам отделять функции обработки отчета от функций доставки для более эффективного использования ресурсов.
Отчеты в промежуточном формате кэшируются автоматически; как только пользователь запрашивает нужный отчет - сначала проверяется кэш, и, если в нем есть этот отчет – именно он отправляется пользователю вместо генерации отчета с самого начала. Если 10 пользователей запрашивают один и тот же отчет, только первый пользователь генерирует его. Оставшиеся девять получат его из кэша.
Данная оптимизация очень полезна для организаций, сотрудники которых запрашивают отчеты, требующие обработки большого объема данных. Администраторы могут запланировать срок истечения действия кэша для контроля частоты обновления кэшируемых отчетов.
Снимки отчета в заданный момент времени (snapshot). Снимки отчета сохраняются отдельно в промежуточном формате. Администраторы могут запланировать создание снимка с заданным интервалом; пользователи, запрашивающие в дальнейшем такой отчет, будут получать его из такого снимка, даже если базовые для отчета данные были изменены. Снимки полезны для того, чтобы обеспечить устойчивые представления данных, когда множество пользователей должны работать с тем же самым образом данных.
Снимки также полезны для обработки больших объемов информации в часы наименьшей загрузки системы, особенно при круглосуточных запросах к отчетам.
Связные отчеты.Связные отчеты предлагают для администраторов иной способ контроля управлением отчетами. Связный отчет использует то же самое определение отчета, но может иметь совершенно другие свойства. Связный отчет использует то же самое определение отчета что и базовый, но может иметь совершенно другие свойства, разрешения и параметры. Например, администратор может создать связный отчет с параметром, который отфильтровывает данные, возвращаемые базовым отчетом. В этом случае, администратор может легко создавать более ограниченные версии базового отчета.
Связные отчеты предлагают простой способ создания персонализированных версий отчетов. Они могут храниться в совершенно другой папке, чем оригинальная версия, имея другие права доступа. Использование связных отчетов позволяет существенно уменьшить количество создаваемых отчетов.
История отчета.Как часть встроенных возможностей управления отчетами, Reporting Services автоматически сохраняет записи, называемые как история отчета, снимков отчета. Эта история предоставляет организации сохраненную информацию, которая может понадобиться для просмотра прошлых отчетов. Администраторы могут контролировать поддерживаемую историю, а также количество версий отчета в истории.
гибкая доставка отчетов
Reporting Services позволяет пользователям осуществлять доступ к отчетам в то время и в том месте где они им нужны. С гибкими модулями преобразования и доставки, Reporting Services также может доставлять информацию на любое устройство.
Доставка по требованию и по расписанию.Reporting Services поддерживает два метода доставки для отчетов:
- доставка по требованию (pull), в которой пользователи запрашивают отчеты динамически из сервера отчетов;
- запланированная или управляемая событиями доставка (push), в которой подписчики принимают отчеты автоматически при обновлении данных или по специальному расписанию.
Отчеты по требованию обращаются к серверу отчетов через обозреватель. Доставка отчетов по расписанию управляется через подписку.
Подписки.Подписки определяют пользователи, которые получают отчеты вместе с преобразованием и доставкой. Например, один пользователь хочет видеть HTML версию отчета, в то время как другой хочет получать его как Excel вложение в почтовом сообщении.
Пользователи получают отчеты с помощью подписки в одном из трех случаев:
- администратор сервера отчетов включает их в подписку для отчета;
- они динамически подписываются на отчет, возможно персонализируя канал и формат доставки;
- внешний источник данных динамически генерирует список получателей отчета в режиме реального времени (подписка, управляемая данными).
Персональные подписки.Пользователи могут создавать собственные персональные подписки, определяя как предпочтения для получения отчетов, так и какие именно отчеты они хотят получать. Подписки – предмет модели безопасности, поэтому пользователи могут подписываться только на те отчеты, к которым у них есть доступ.
Персональные подписки могут включать специфичные параметры для параметризованных отчетов, такие как просмотр только объема продаж по восточному региону, а также задавая предпочтения по формату отчетов и способу доставки.
Подписки, управляемые данными.Во многих крупных организациях потенциальные получатели отчета могут часто меняться в соответствие с принадлежностью к определенному отделу и или по территориальному признаку. Некоторые отчеты направлены на постоянно меняющуюся аудиторию, например сотрудники, которые оставят компанию в течение следующего месяца. Вместо ручного обновления подписки персоналом IT, Reporting Services поддерживает подписку, управляемую данными.
В такой подписке, список получателей отчета создается динамически при старте подписки, используя внешние источники данных, например, базу данных сотрудников. Источник данных может содержать другие виды информации (такие как дата приема на работу или название должности) позволяющие пользователям отфильтровывать данные в отчете, то есть, другими словами, персонализировать отчет.
варианты преобразования отчета
Поскольку преобразование отчета отделено от начальной обработки данных, один и тот же отчет может быть преобразован для разных пользователей в разные форматы (например, HTML или PDF). Следующие форматы поддерживаются модулем преобразования:
1. HTML -поддержка как HTML 4 обозревателей, таких как Microsoft Internet Explorer, и HTML 3.2-совместимых обозревателей для просмотра отчетов и навигации по папкам отчетов.
2. HTML With Office Web Components.HTML с дополнительной функциональностью использует Office Web Components (OWC) для обеспечения дополнительной интерактивности на клиенте. Графики создаются с помощью Chart control, а матрицы с помощью PivotTable control.
3. Multipart HTML -позволяет встраивать картинки в файл вывода. Этот формат полезен для клиентов веб-приложений, которые не имеют доступа к ресурсам, хранящимся на сервере отчетов или в другом месте.
4. Excel -создает электронную таблицу Microsoft Excel, которая сохраняет исходную разметку и форматирование.
5. Image -преобразует отчет в битовые образы или метафайлы, включая любой формат, поддерживаемый GDI+: BMP, EMF, GIF, JPEG, PNG, TIFF и WMF. По умолчанию, картинка создается в формате TIFF, который может быть отображен программой просмотра картинок.
Картинка отрисовывается, для того чтобы отчет выглядел одинаково на любом клиентском устройстве. Преобразование происходит на сервере, поэтому все используемые в отчете шрифты должны быть установлены на сервере.
6. PDF.Создает отчеты в формате PDF, который может быть открыт и просмотрен с помощью Adobe Acrobat.
Разработчики могут поддерживать и другие форматы с помощью открытого набора API.
модульные расширения
Microsoft предоставляет набор открытых API, которые разработчики могут использовать для расширения возможностей Reporting Services. С модульной архитектурой, разработчики могут легко вставлять эти свои расширения в продукт, без ожидания когда Microsoft добавит эти возможности в следующей версии.
Microsoft поддерживает набор API и расширений для следующих компонент продукта:
- расширения обработки данных,которые позволяют разработчикам программного обеспечения создавать расширения для обработки для их собственных хранилищ данных;
- расширения преобразования отчета,которые позволяют добавлять бесчисленное количество форматов преобразования для доставки на различные устройства;
- расширения доставки,которые позволяют создавать альтернативные механизмы доставки отчетов, кроме встроенной доставки по почте.
Алексей Шуленин, по материалам компании Microsoft.
Сетевые решения. Статья была опубликована в номере 05 за 2004 год в рубрике sotfware