Architecture of SQL Server Reporting Services (SSRS)
This article describes the architecture of SQL Server Reporting Services.
SQL Server Reporting Services is a comprehensive reporting platform that includes processing components. Processing components are the basis for the multilayered architecture of SQL Server Reporting Services. Processing components interact with each other to retrieve data and deliver a report.
SQL Server Reporting Services has the following two basic components.
Processors components are used to add a new functionality. It ensures the integrity of SQL Server Reporting Services.
Extensions components are invoked by processors and do specific processing functionality.
The following diagram shows the architecture of SQL Server Reporting Services. In this diagram the arrow lines show the data flow among components within and outside SQL Server Reporting Services.
Architecture of SQL Server Reporting Services
The following diagram shows the architecture of SQL Server Reporting Services.
Tools and Components of SQL Server Reporting Services architecture
This architecture consists mainly of the following types of components and tools.
- Report Builder
- Report Designer
- Report Manager
- Report Server
- Report server database
- Data sources
Report Builder
- This component can be used to drag and drop and for easy to use report design functionality. Report Builder is an ad-hoc end-user report publishing tool that is executed on a client computer.
Report Designer
- The Report designer tool can be used to develop simple and complex reports. Report Designer is a publishing tool, that is hosted in Business Intelligence Development Studio (BIDS) or Visual Studio.
Report Manager
- This tool provides easy access to web-based reports. The default URL of the Report Manager is http://<server>/reports.
Report Server
- It is a server that uses the SQL Server database engine to store metadata.
Report server database
- It stores metadata, resources, report definitions, security settings, delivery data and so on.
Data sources
- Reporting services retrieves data from data sources like relational and multidimensional data sources.
Processing of SQL Server Reporting Services
This diagram shows the processing of SQL Server Reporting Services.
On a report server, or a different server we choose, we will have access to the Report Manager website. The Report Manager website can be used to deploy and manage reports. End users run reports by the Report Manager and publish their reports if they have permission. An SQL Server Reporting Services is associated with a SQL Server instance. The SQL Server instance has two databases, the first is a report server and the second one is ReportServerTempdb. The end-user sends a HTTP request for a report. The report server finds the metadata of the report and sends a request for data to the data source then after the data is returned by the data source and merged with the report definition into a report. When the report is generated then it is sent to the client.
Summary
This article described the architecture of SQL Server Reporting Services and also describes every tool or component of the SQL Server Reporting Services architecture. This article also describes the processing of reporting services.