Home > Articles

Reporting Services Architecture

  • Print
  • + Share This
This chapter is from the book In This Chapter

Report Server Web and Windows Service

Programmatic Interfaces

Report Processor

Command-Line Utilities

Reporting Services Extensions

Report Server Databases

Scheduling and Delivery Processor

Report Builder NEW in 2005

Report ModelDesigner NEW in 2005

Report Designer

Report Manager

SQL Server Management Studio NEW in 2005

Reporting Services Configuration Tool NEW in 2005

RSPrintClient Control NEW in 2005

WMI Provider

Performance Monitoring Objects

SSRS is a comprehensive and extensible reporting platform, which includes an integrated set of processing components, programmatic interfaces, and tools. Processing components are the basis for the multilayered architecture of SSRS and interact with each other to retrieve data, process layout, render, and deliver a report to a target destination. SSRS supports two categories of components:

  • Processors— Ensure integrity of SSRS and supply an infrastructure that enables developers to add a new functionality (extensions). Processors itself are not extendable in this release of SSRS.
  • Extensions— Assemblies that are invoked by processors and perform specific processing functionality, such as data retrieval. Developers can write custom extensions.

Reporting Services architecture diagram is depicted in Figure 3.1; components are described in more details later in this chapter. Arrows on the diagram show a data flow between components "within" and "outside" of SSRS (external tools, applications, services, and utilities).


Figure 3.1 Report ServerReporting ServicesReport ServerReporting Services architecture.

Report Server Web and Windows Service

The Report Server is implemented as a symbiosis between a web service and Windows service. Services work together to host, process, and deliver reports.

When SSRS Windows service starts, it initially loads basic supporting assemblies (such as a SQL data provider and interface library), but it does not load extensions. In this release, SSRS Windows service handles encryption and decryption and serves as a host for the Scheduling and Delivery Processor. The Scheduling and Delivery Processor uses a PollingInterval configuration setting to monitor SSRS catalog's Event table for "events" (such as timed subscription). Events instruct SSRS to "wake up" and start processing.

Similar to any .NET web service, SSRS web service is invoked ("wakened up") via Internet Information Server (IIS) and executes in the ASP.NET worker process (aspnet_wp.exe). "Wake up" events are facilitated by programmatic interfaces.

  • + Share This
  • 🔖 Save To Your Account