- 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 Model Designer 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
- Performance Monitoring Objects
- WMI Provider
The Report Processor ties components of a report server together and takes care of caching within SSRS. Caching refers to an ability of the SSRS to keep a copy of a processed report and return that copy when a user opens the report. Caching can shorten the time required to retrieve a report, especially if the report is large or is accessed frequently. All report caches are stored in the SSRS catalog (specifically ReportServerTempDB database) and survive both SQL Server and Report Server restarts.
Report Processor performs the following operations:
- Execution— Retrieves a report definition and combines it with data retrieved by the data-processing extension. This operation generates an intermediate format.
- Rendering— Renders the intermediate format to a requested output format using rendering extensions.
- Processing of models— This is similar to Execution operation for reports that are generated by Report Builder and contain a semantic model (or simply a model, which serves as a data source for a report) and a semantic query. Semantic query refers to a query performed against a model that, in turn, just like a SQL query, generates a report's data set.
This is how Report Processor responds to users' requests:
- New interactive report request— Intermediate format is generated and passed to the rendering extension; user receives rendered report.
- Request to generate cache or snapshot— Intermediate format is generated and stored in the database.
- Request for cached report or snapshot— Intermediate format is retrieved from cache (or snapshot) and passed to the rendering extension; user receives rendered report.