Открыть сервис

Reporting Services

Reporting Services — это серверная платформа для создания, развертывания, управления и доставки интерактивных отчетов, входящая в состав Microsoft SQL Server. Предоставляет набор инструментов и служб для преобразования данных из различных источников в формализованные документы, предназначенные для анализа, мониторинга и принятия решений.

История

Первая версия Reporting Services (SSRS) была выпущена корпорацией Microsoft в 2004 году как компонент SQL Server 2000. Изначально продукт позиционировался как альтернатива дорогим и сложным в настройке BI-платформам от SAP BusinessObjects и IBM Cognos. Ключевым преимуществом стала интеграция с уже существующей инфраструктурой SQL Server и поддержка формата отчётов RDL (Report Definition Language), основанного на XML.

В версии SQL Server 2008 Reporting Services получила существенные обновления: появился новый дизайнер отчетов (Report Builder 2.0), улучшена поддержка интерактивных элементов и интеграция с SharePoint. Выпуск SQL Server 2012 ознаменовал переход на архитектуру Power View — инструмент для визуализации данных, работающий поверх модели данных PowerPivot.

С выходом SQL Server 2016 корпорация Microsoft представила новую веб-версию портала отчетов (Report Portal), ориентированную на работу через браузер, и добавила поддержку мобильных отчетов. В 2019 году Reporting Services была выделена в отдельный продукт — Power BI Report Server, который объединил возможности SSRS и Power BI, позволив размещать отчёты Power BI на локальных серверах.

Архитектура

Система Reporting Services построена по модульному принципу и включает три основных компонента:

Служба веб-сервиса (Web Service)

Обрабатывает запросы на выполнение отчетов, управление подписками и администрирование. Взаимодействует с клиентскими приложениями через протоколы SOAP и HTTP. Начиная с SQL Server 2016, веб-сервис объединён с порталом отчетов в единый процесс.

Служба обработки отчетов (Report Processor)

Выполняет рендеринг отчетов: извлекает данные из источников, применяет макеты и форматирование, генерирует итоговый документ в выбранном формате (HTML, PDF, Excel, Word, CSV, XML, TIFF, MHTML). Поддерживает кэширование готовых отчётов для ускорения повторного доступа.

Хранилище данных (Report Server Database)

Две базы данных SQL Server: ReportServer (основная) и ReportServerTempDB (временная). В первой хранятся метаданные отчётов, источники данных, подписки, расписания и настройки безопасности. Вторая используется для временного хранения кэшированных отчётов и сессионных данных.

Классификация отчетов

Reporting Services поддерживает несколько типов отчётов:

Параметризованные отчеты

Позволяют пользователю задавать фильтры (например, диапазон дат, регион, категорию товара) перед выполнением. Параметры могут быть статическими (выбор из списка) или динамическими (зависящими от данных).

Детализированные отчеты (Drill-down)

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

Сводные отчеты (Matrix / Crosstab)

Отображают данные в формате перекрёстной таблицы, где строки и столбцы формируются на основе значений полей источника. Поддерживают агрегацию (суммы, средние, минимумы, максимумы) и вложенные группировки.

Мобильные отчеты (Mobile Reports)

Оптимизированы для просмотра на планшетах и смартфонах. Создаются в специальном дизайнере (SQL Server Mobile Report Publisher) и поддерживают адаптивную вёрстку, сенсорное управление и жесты.

Отчёты Power BI

Создаются в Power BI Desktop и публикуются на Power BI Report Server. Включают интерактивные визуализации, меры на языке DAX и модели данных.

Разработка отчетов

Для создания отчётов используются два основных инструмента:

Report Builder

Бесплатное приложение с графическим интерфейсом, предназначенное для бизнес-пользователей. Позволяет создавать отчёты без знания SQL и программирования: данные выбираются через визуальный конструктор запросов, макеты настраиваются перетаскиванием элементов (таблицы, диаграммы, карты, индикаторы). Report Builder поддерживает создание общих источников данных и встроенных наборов данных.

SQL Server Data Tools (SSDT)

Расширение для Visual Studio, предназначенное для профессиональных разработчиков. Предоставляет полный контроль над кодом RDL, поддержку пользовательских функций на C# или VB.NET, интеграцию с системами управления версиями (Git, TFS) и возможность автоматизации сборки отчётов через MSBuild.

Управление и доставка

Портал отчетов (Report Portal)

Веб-интерфейс, доступный через браузер. Позволяет:

Подписки

Механизм автоматической доставки отчётов. Бывают:

Кэширование

Reporting Services поддерживает три уровня кэширования:

  1. Кэш выполнения — сохраняет готовый отчёт на время сессии пользователя.
  2. Кэш отчёта — хранит предварительно вычисленные отчёты по расписанию или при первом запросе.
  3. Кэш снимков — создаёт фиксированные копии отчёта на определённый момент времени (например, конец месяца).

Безопасность

Reporting Services использует ролевую модель безопасности на основе Windows-аутентификации или встроенной аутентификации SQL Server. Пользователям назначаются роли, определяющие права доступа к отчётам, папкам и источникам данных. Основные системные роли:

Источники данных могут быть защищены с помощью учётных записей, хранящихся в зашифрованном виде в базе данных сервера, или с использованием встроенной аутентификации Windows (Kerberos, NTLM).

Интеграция с другими продуктами

Reporting Services тесно интегрируется с экосистемой Microsoft:

Ограничения и критика

Несмотря на широкие возможности, Reporting Services имеет ряд недостатков:

Применение

Reporting Services широко используется в корпоративной среде для:

Источники

  1. Microsoft Docs. «SQL Server Reporting Services (SSRS)». Техническая документация корпорации Microsoft.
  2. Larson B. «Delivering Business Intelligence with Microsoft SQL Server 2016». McGraw-Hill Education, 2016.
  3. Stacia Misner. «Microsoft SQL Server 2012 Reporting Services». Microsoft Press, 2012.
  4. Russo M., Ferrari A. «SQL Server 2016 Reporting Services Cookbook». Packt Publishing, 2017.
  5. Microsoft Learn. «Plan for SQL Server Reporting Services». Официальный учебный портал Microsoft.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →