Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
388 views

SQL Server Reporting Services

SQL Server Reporting Services (SSRS) allows businesses to transform raw data into graphical reports to add meaning. It can query and display data from multiple databases in an understandable way for users. There are several alternative business intelligence tools available on the market as well. The reporting lifecycle in SSRS has three phases - development, management, and delivery. A production database administrator's main tasks related to SSRS include installing, configuring, deploying reports, optimizing performance, and maintaining security.

Uploaded by

Rupesh Bansal
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
388 views

SQL Server Reporting Services

SQL Server Reporting Services (SSRS) allows businesses to transform raw data into graphical reports to add meaning. It can query and display data from multiple databases in an understandable way for users. There are several alternative business intelligence tools available on the market as well. The reporting lifecycle in SSRS has three phases - development, management, and delivery. A production database administrator's main tasks related to SSRS include installing, configuring, deploying reports, optimizing performance, and maintaining security.

Uploaded by

Rupesh Bansal
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 24

What is SQL Server Reporting Services?

Reporting Services helps business to Transform raw data (table data) into graphical like chart, histogram etc. to
add meaning to raw data.
For example, the table below having a data but the moment that data was presented in chart, that added more
business meaning to data.

SQL Server Reporting Services can query and display data from any of the multiple databases and represent in
a way which is more understandable to users.
What are the tools available in market as an Alternative to SQL Server Reporting Services / (Business
Intelligence tools) ?
Market is full of business intelligence tools here are few listed of them,
Actuate Hyperion (BRIO) SIEBEL-CRM
BusinessObjects Oracle Express OLAP Qlikview
Cognos Informatica Power Analyzer Proclarity
IntelliView Dundas Chart for .NET MS-Excel
SAS MicroStrategies Pentaho
Open Source solutions
Jasper Reports
JFreeReport
BIRT (Business Intelligence Reporting Tools)
OpenReport
DataVision
Pentaho
What is reporting lifecycle ?
Reporting Services has three mainly three phases
1. Development of Reports (Developer) First of all a report needs to be design which is primarily done by
report developer
2. Management of Reports (DBA) Once the Report is being developed, DBA need to ensure
1. Security Only authorized user should access the report
2. Execution How the report will be executed to optimize data sources performance
3. Scheduling of reports so that report are executed on scheduled timings
3. Report Delivery (DBA+Developer) Once the report is being developed and executed now the report
should be reached to final recipients (business users) who are going to understand / analyze report data. if any
changes, we again go back to development stage.
What is Reporting Services Architecture ?
Reporting Services is a .NET framework-based platform that includes a comprehensive tools that we can use to
integrate reporting solution into any centrally-managed environment. CLICK HERE(http://goo.gl/LwBRj) for
more details
What can we do with SQL Server Reporting Services ?
Reporting Services can help you in building and deploying fully interactive scorecards, dashboards, and
enterprise reports.
SQL Server Reporting Services Feature
Design ad-hoc dashboards and reports quickly
Data is interactive and available everywhere even on your IPAD / IPHONE.
This is bundle product with SQL Server database services, so there is additional cost for this service.
.Net integrated for rapid development for report even in few clicks by using wizards.
By using Reporting Services, we can build up a solution which is kind of Google maps, where we can list our
all business locations.
Check out video post to learn, How to Integrate Map with SQL Server Reporting Services
What are the New Features of SQL Server 2008 R2 Reporting Services ?
Lot of new features were added in SQL Server 2008 R2, like
New Report Types Table, Matrix, List, Chart, Sub report
New Tools added to report designer Toolbox
Report Data Panel - built in page numbers
Report Builder 3.0
For details for new feature of SQL Server 2008 R2, please check my previous post, SQL Server Reporting
Services R2 New Features
What are the new features are introduced in SQL Server 2012 reporting services?
SQL Server 2012 has introduced a couple of new features like
Power View - interactive data exploration
SQL Server 2012 is fully integrated with SharePoint
Introduction to Data Alerts, data alerts are a data-driven alerting solution that informs you about changes in
report data that are of interest to you, and at a relevant time
SQL Server Data tool
new rendering extensions supports MS Office 2010
Project Crescent is being introduced
DBA (Production Support) Prospective
What are the tasks which are mainly performed by a production DBA on a SQL Server Reporting
Services ?
Operational support DBA are mainly responsible for
Install and Configure reporting services
Backing up Reporting Services (including databases, config files and encryption keys)
Deploying new reports
create and manage shared data sources
Optimizing reports Enable caching of reports
Authorize users for reports
Create and deploy security roles.
Check Reporting Services Error Logs for errors
Maintain response time of reporting services
Can we run Reporting Services with SQL Server Express Edition, which is a free version of SQL Server
?
Yes, SQL Server Express Edition with Advanced Services support Reporting Services. we can use SQL Server
Express Edition for deploying reporting Services.
What are the limitations in Reporting Services on SQL Server Express Edition ?
Microsoft offers reporting services free as part of SQL Server Express with Advance Services edition but
following restrictions will be applicable to this edition.
SQL Server Management Studio Express cannot be used to administer report server
Report Models will not be available
Other features like Caching, History and Delivery of Report is not available.
Report Builder is not available
Local SQL Server is a only option, which can be used as Report Data Source.
We cannot store the report server database on a remote server, it has to be local only.
Reports can be rendered only in Excel, PDF, Image formats only
No SQL Server agent is available, so no scheduling is possible.
Reporting Services will not be able to use more than 1 GB of RAM
No Subscriptions (Standard and Data Driven) can be made
Can not be integrated with Share Point
Only named instances is supported
Scale-out Report Servers will not be available
Can not implement Role based security.
How to Install SQL Server Express with Reporting Services ?
For Step by Step instructions, Please check my previous post, How to Install SQL Server Express with
Reporting Services
What are the parameters which should be considered for Reporting Services Disk storage requirement ?
There are various factors to be considers as a primary I would consider
1. Number of reports to be hosted server
2. Report size and frequency of reports
3. Number of snapshots to be saved
Can I configure SQL Server Reporting Services on a Windows cluster for High availability ?
Please check my previous post, Installing & Configuring SQL Server Reporting Services on Cluster
Environment for High Availability to understand how reporting services works on cluster.
What is ReportServer and ReportServerTempDB ?
Reporting Services uses two SQL Server databases for storage by default, the databases are
namedReportServer andReportServerTempdb.
ReportServer is a main database, which store all internal configuration and report meta data where
asReportServerTempdb is used to store temporary data, session information, and cached reports.
How to backup SQL Server Reporting Services ?
There are mainly three things, which should be backed up as part of reporting services backup
1. Report Server Databases, which can be backed up by SQL server backup and restore method. Check
my previous Video post, HOW to BACKUP SQL
2. SQL Server Reporting Services Configuration, SQL Server Reporting Services Configuration is saved in
config files, which can be copied as part of backup. look for other to know config files and there location.
3. Encryption Keys backup , use SQL Server Reporting Services Configuration tool to backup symmetric keys.
What is encryption key ?
Encryption keys are used by the report server so that items such as connection strings are maintained securely.
these keys are required in case you want to perform restoration of report server databases.
How to backup encryption key ?
Encryption Keys backup , use SQL Server Reporting Services Configuration tool to backup symmetric keys.
Can we install a 32-bit version of SQL Server Reporting Services on a computer that is running a 64-bit
version of Windows?
YES, we can install SQL Server 32 bit on Windows 64 bit version. SQL Server Reporting services are part of
SQL Server.
Where the SQL Server Reporting Configuration is saved, is that in registry ?
NO, all SQL Server configuration is saved in configuration files (.xml files)
What are the key configuration files for SQL Server Reporting Services ?
Mostly all Configuration files located at Install Directory\Microsoft SQL Server
\<SQL Server Instance>\Reporting Services\ReportServer and ReportManager
RSReportServer.config stores configuration settings for feature areas of the Report Server service:
ReportManager, the Report Server Web service, and background processing.
RSSrvPolicy.config stores code access security policies for the server extensions.
RSMgrPolicy.config stores code access security policies for Report Manager
ReportingServicesService.exe.config stores configuration settings that specify the trace levels and logging
options for the Report Server service.
Other Files
RSReportDesigner.config contains settings for Report Designer and this file is located in the..\Program
Files\Visual Studio 9.0\Common7\IDE\PrivateAssemblies
RSPreviewPolicy.config stores server extensions used during report preview and this file is located
in ..\Program Files \Microsoft SQL Server\100\Tools \ReportDesigner
What are the mostly used PERFMON Counters for monitoring SQL Server Reporting Services?
This is bit tricky and everyone has his own answer, but I personally choose the following at least
ReportServer: Service Performance Object \ Active Connections
ReportServer: Service Performance Object \ Report Executed per second
ReportServer: Service Performance Object \ Total Cache Hits
ReportServer: Service Performance Object \ Total Requests
Web Service \ Deliveries per second
Web Service \ Total processing failures
What all should be backed as part of reporting Services ?
1. Report server databases (ReportServer and ReporterverTempdb)
2. Encryption keys and
3. Configuration Files (xml files)
1. RSReportServer.config,
2. RSSrvPolicy.config,
3. RSMgrPolicy.config,
4. ReportingServicesService.exe.config,
5. RSReportDesigner.config and
6. RSPreviewPolicy.config
How to backup up Encryption Keys?
Use SQL Server Reporting Services Configuration tool to backup symmetric keys
Questions for Developer as well as Developers (depends on profile)
What are the tools which are being offered by Microsoft SQL Server for Developers?
Report Designer, used to develop reports in Business Intelligence Development Studio (BIDS) and then
publish them to a Report Server
Model Designer, used create a report model that Report Builder users uses to help them build on-demand
reports.
Report Builder used to build reports without having to understand the underlying data source structures in
the database
Note These are built in tools with Microsoft SQL Server, there is no additional cost for using these tools.
What are the tools which are being offered by Microsoft SQL Server for DBAs?
Report Manager a web-based report access and management tool to browse existing reports, upload new
reports, and other properties like execution properties, security, and subscriptions.
Reporting Services Configuration used to configure a report server like report server databases, SMTP
server and services properties.
SQL Server Management Studio (SSMS) - an alternative to Report Manager, which is primarily being
used by DBAs for managing reports.
Note These are built in tools with Microsoft SQL Server, there is no additional cost for using these tools.
How to deploy reports ?
Reports can be deployed by using BIDS (Business Intelligence development Studio ) or by Report Manager
which is web based application. Please see previous post, How to deploy report to SQL Server Reporting
Services
Can I deploy a report at multiple servers at one go ?
NO, native SQL Server Reporting services doesnt supports this functionality but we can deploy reports
directly to multiple servers at one go but this functionality is not built in, we need to buy some third party
tools.
What is Report Builder ?
Report builder is used to create small reports and it a define interface. You cant change the report interface in
report builder it pre designed. You can just drag columns in the report.
Report builder creates reports on database objects available with report model project. Please check my
previous Video post, How to Install Report Builder 3.0
What is report rendering ?
Exporting a report data with design o different type of file types is knows as Report rending. SQL Server
Reporting Services supports multiple rendering extensions like Word, Excel, CSV, PDF, HTML etc.
Can I disable | restrict SQL Server Reporting Services Export Formats (Rendering Formats) ?
YES, we can restrict Reporting services export formats.
SQL Server Reporting Services (SSRS) supports export to different formats like XML, CSV, HTML, PDF,
etc., when you view the report. This export option is available at report viewer Export drop-down list.
We can control this via report services server configuration file which is available at C:\Program
Files\Microsoft SQL Server\MSSQL.2\Reporting Services\Report Server\ rsreportserver.config.
For More details, please check my previous post How to Disable/restrict SSRS Export format ?
How to migrate SQL Server 2008 Reporting Services to another computer?
If you are trying to migrate only SQL Server reporting services to new server, then we have an option to install
reporting services on new server and while configuring report server, we can point report server services to old
report database database.
Or incase, you are trying to migrate report server databases and reporting service together, the install reporting
services on new instance and restore configuration files and restore report server databases and reconfigure the
report server services.
How to check how frequent report is being called ?
Check Report history either from SSMS or Report manager. In report manager, go to report and select history
tab. check here for more details
What is Report Caching ?
Report caching is a performance enhancing technique in Reporting Services that saves copies of reports for
faster viewing. Cached instances have an expiration time set to force a refresh of the data set used
for the report.
In case you have filters in your report, when filters will be applied in Cached Report instance ?
Filters are applied when a report is rendered, Filters will not create a new cached instance on the Report
Server.
What is report snapshot ?
Snapshot means a instance of a report for future reference, that means a copy of report (data is freezed) will be
saved on a report server for future reference.
What is Data Driven Subscription ?
Subscriptions are used to deliver rendered reports to business users at specified schedule. For example, a sales
report should go to sales manager daily at 7:00 AM for last day report. This is kind of pushing reports on a
schedule. By creating subscription, we can send reports to users in e-mail or Deliver to a file share
or can put report in Microsoft Office SharePoint server
A data-driven subscription can deliver a report in many rendered formats to many destinations. For example,
USER1 wants report in XML format and USER 2 wants in a pdf format and user 3 wants in word but that too
on a shared drive.
To meet these objective we can use Data-driven subscriptions as data driven subscription require a database
table to store all these report values so that these values can be used during processing.
How to upgrade report from SQL Server 2005 to SQL Server 2008?
SQL Server Setup is used to upgrade SQL Server Reporting Services. Run the SQL Server 2008 setup on
existing SQL Server 2005 and opt for upgrade.
Developer (Report Designer) Prospective
Any Idea, how to to build / design Report using Visual Studio?
Building Reports using Visual Studio is quite easy, Please check my previous Video POST, How to create a
report using Visual Studio 2008? which describes
1. how to build a report using Visual Studio 2008
2. deploy report to SQL Server Reporting Services
3. How to create an shared data sources
4. How to design a report
5. How to add interactive sorting Change
6. Run the report in SSRS
What is Parameterized Reports in SSRS ?
You often need more advanced reporting such as drop down lists and the ability to use parameters when
working in Sql Server Reporting Services. Please check VIDEO Tutorial, How to make Parameterized
Reports in SSRS which describes,
How to use variables that have not been declared in SSRS vs TSQL
How to create report with auto-Parameterization
How to View Report Parameters
How to create a drop-down list
What are different types of reports are available ?
There is as such not any type of of reports, but we can categories them as
Tabular Report where we represent data in rows and columns format. (Now this is non as Tablix which is
mixture of table and a matrix)
CHART REPORTS where we represent the data in graphical format mainly in charts?
further more these reports can fetch data either from relational database (TSQL REPORTS category) or from
CUBES (MDX Reports)
What sort of query we can write in SSRS, is that just SQL / TSQL or is there anything else too?
MDX for OLAP / CUBE data sources
DMX for data mining
Can you edit a report that an end user created by using Report Builder in BIDS?
Yes, if an end user created a report by using Report Builder in BIDS and saved the report definition file, you
can open the file in BIDS and edit it.
What is Sub report ?
SUB report is very helpful when the detail of a reports data region is so complex that a separate report is a
better option then using other tools.
Can sub report data source be different from that of the parent report ?
YES, sub report data source can be different from that of the parent report.
What are the various ways to deploy reports ?
Reports can be deployed to report server by using any of the following method
BIDS
Computer Management console
.nET START command
SSMS
Report Manager
but normally BIDS and Report managers are mostly used.
Can we use Analysis Services Database as a data source with Model Designer ?
NO, Model Designer doesnt access data from Analysis Services cubes.
What is report subscription?
Subscriptions are standing requests to deliver report data to requested recipients. Once the report is being
subscribed and subscriber will get updates from report server on scheduled interval.
What is the RDL file?
RDL stands for Report Definition Language, when we design a report using any tool like BIDS and when we
save the report, its saved as .rdl file, RDL file is an kind of xml code, which stores the design of the report.
This RDL file is being used for deploying report to report server.
Can you use a stored procedure to provide data to an SSRS report?
Yes, you can use a stored procedure. However, your stored procedure should return only a single result set. If it
returns multiple result sets, only the first one is used for the report dataset.
How to deploy Reports on SQL Server Reporting Services ?
Please check my previous VIDEO post to learn, Step by Step Learning, How to deploy report to SQL Server
Reporting Services 2008
How can I build my first report which is ready to deploy in SQL Server Reporting Services ?
Please check my previous blog post, Introduction to SQL Server Reporting Services, for a brief video tutorial
for SQL Server Report designer.
Solution Architect prospective
IT Manager prospective
Can we run Reporting Services with SQL Server Express Edition, which is a free version of SQL Server
?
Yes, SQL Server 2005 Express Edition with Advanced Services support Reporting Services. we can use SQL
Server Express Edition for deploying reporting Services. For more details to know SQL Server Express
Limitations, please check my previous post, What are the limitations in Reporting Services on SQL Server
Express Edition
Is there any free tools to build reports ?
YES, there are log of open source code solution are available, which can used to design reports, here are few
listed.
Jasper Reports
JFreeReport
BIRT (Business Intelligence Reporting Tools)
OpenReport
DataVision
Pentaho
What are the product alternatives to SQL Server Reporting Services ?
Market of full of tools and here are few of them
Actuate Hyperion (BRIO) SIEBEL-CRM
BusinessObjects Oracle Express OLAP Qlikview
Cognos Informatica Power Analyzer Proclarity
IntelliView Dundas Chart for .NET MS-Excel
SAS MicroStrategies Pentaho
How many instances of Reporting Services can be managed by a single DBA ?
This is pretty tricky questions, and there is not any single formula to decide this. This all depends on what sort
of monitoring tools you have and what sort of automation you have achieved.
But as per my understanding and calculations a single 3-7 year experience DBA without any third party tool
can easily deploy 25-35 report in a day, which is one time activity for most of the organizations and DBA can
easily monitor / provide production support to 25-40 instances of SQL Server, which included daily
Monitor Event Viewers
Check SQL Server Errors
Check Reporting Services Logs
Monitor Perfmon counters
Backup all databases
check schedule sql jobs etc.
but I believe, without any tool (just using manual / Script) we can assume 1 DBA for every 25 servers is ideal
number to focus more on preventive actions rather then corrective actions.
Is my data is safe, What all we are backing up for SQL Server Reporting Services ?
There are mainly three things, which should be backed up as part of reporting services backup
1. Report Server Databases, which can be backed up by SQL server backup and restore method. Check
my previous Video post, HOW to BACKUP SQL
2. SQL Server Reporting Services Configuration, SQL Server Reporting Services Configuration is saved in
config files, which can be copied as part of backup. look for other to know config files and there location.
3. Encryption Keys backup , use SQL Server Reporting Services Configuration tool to backup symmetric keys.
What is Query parameter in SSRS?
Query parameters is mentioned in the query of the datasources that are to be included into the SQL
scripts WHERE clause of the SQL that can accept parameters. Query parameters begin with the
symbol @.The name should not contain spaces and can not begin with numeral. For clarity, we use
only letters.
What are the Reporting Service Components in SSRS?
Report Designer: A place where we can create report. Report Server: Provides services for
implementation and delivery of reports. Report Manager: A Web-based administration tool for
managing the Report Server.
What is a matrix in SSRS?
A matrix is a data region linked to a report set. Matrix allows us to create crosstab reports with the
report variables displaying on rows and columns. It allows us to drag and drop fields into it.
What are sub reports and how to create them?
A sub report is like any other reports which can be called in main report and can be generate
through main report. Parameters can be passed from main report to sub report and basis of
that report can be generated.
What is the report model project?
Report model project is for creating Adhoc reporting. You can create the adhoc reports
through report builder. Report model project can be created on bids or report server. This
model can have simple view. And using
What is report server project?
Report Server Project contains the RDL file and it need to be deployed on report server to
view the report files to application and user.
It a solution where we design our reports. You can add it by going into BIDS clicking on
new item and then selecting reports server project. Once the solution is created you can start
creating reports.
What is the report builder?
Report builder is used to create small reports and it a define interface. You cant change the
report interface in report builder it pre designed. You can just drag columns in the report.
Report builder creates reports on database objects available with report model project.
In which SQL Server version report builder introduced?
Report builder introduced in SQL Server 2005. While creating or deploying report model
project on report server you can get error or it might not get created. For this you need to
check whether the service pack 22 is installed or not.
How to deploy the Report?
Report can be deployed in three ways.
1. Using visual studio: In visual studio you can directly deploy the report through
solution explorer by providing the report server URL in project properties at Target
Server URL. This will deploy entire project or single report as per you selection.
2. Using report server: Can directly go to the report server and deploy the report by
browsing the report from the disk location on server.
3. Creating the utility: SQL server provides the utility using that which can be used to
create a customize utility for your report deployment in bulk.
What is RS.exe utility?
Rs.exe utility is used for deploying the report on report server. It comes with the report
server and can be customize accordingly.
What is the name of reporting services config file and whats its used for?
Reporting service config file is used for report configuration details. It contains the report
format and also the report import types. Report service config reside at ISS.
What are the three different part of RDL file explain them?
In visual studio RDL files has three parts.
1. Data: It contains the dataset on which we write the query. Data set is connected with
data source.
2. Design: In design you can design report. Can create tables and matrix reports. Drag
columns values from source.
3. Preview: to check the preview after the report run.
Which language rdl files made of?
RDL files are written in XML.
What is the chart in report?
Chart reports are for graphical representation. You can get pie charts columns harts and
various other options.
3d charts are also available in reporting services.
What is Data Set in report?
Data set are the set of data which we want to show in report. Data creates on data source.
Data source is the source of data from where we are getting this data i.e. database server and
database name connection string.
What are the different types of data sources in SSRS?
SSRS use different data source. Some of them are listed below.
1. Microsoft SQL Server
2. OLEDB
3. Oracle
4. ODBC
5. SQL Server Analysis Service
6. Report Server Model
7. SAP Net weaver BI
8. Hyperion
9. Teradata
10. XML
What is the web service used for reporting services?
Reporting Service Web Service used in SSRS. By accessing this web service you can access all
report server component and also get the report deployed on report server.
How to add the custom code in Report?
To add the custom codes in report go to report tab on top then properties and there you will
find the options for custom code.
What is a cache in SSRS?
Report server can lay up a copy of processed report in a memory and return the copy when a user
opens the report. This server memory is known as cache and the process is called caching.
What is report snapshot in SSRS?
Report snapshot is a report which contains layout information and a dataset that is extracted at a
particular point of time. When the new snapshot is created the previous report snapshot will be
overwritten.
What is bookmark link in SSRS?
Bookmark is a link which a person clicks to shift to a different area or page in a report. We can insert
bookmarks links only to textboxes and images.
What is Command parameter in SSRS?
A Command parameter is used to forward protocol to the Report Server regarding the item that has
been retrieved. Command parameter is also used for rearranging a users session information.
What is Format parameter in SSRS?
Format parameter is used to control report output. Every delivering format on Report Server has to
pass through this parameter.
What is Snapshot parameter in SSRS?
When a report is saved in a snapshot history, it is allocated a time or date to uniquely identify that
report. Snapshot parameter is used to get back these historical reports by passing this time or date to
get proper report.
What are the rendering extensions of SSRS?
Rendering extensions manage the category of document produced when a report is processed.
Rendering Extensions are: HTML, MHTML, EXCEL, CSV, IMAGE, PDF, and XML.
What is a ReportItem in SSRS?
A ReportItem is one of the subsequent types of items: Rectangle, Textbox, Image, Subreport, Line,
CustomReportItem, List, Table, Matrix or Chart.
What is Datasets in SSRS?
Dataset elements have information about the sets of data recovered as a part of the report.
What are the main components of reporting services?
The main components of Reporting Services are
1. Report designer
2. Report server
3. Report manager
4. Report user.
What is Report Designer?
Report Designer is a collection of graphical query and design tools that are hosted within the
Microsoft Visual Studio environment.
Report Designer provides a Report Data pane to organize data used in your report, and tabbed views
for Design and Preview so that you can design a report interactively.
Report Designer also provides query designers to help specify data to retrieve from data sources and
the Expression dialog to specify report data to use in the report layout.
When the report is complete, you can use Report Designer to preview the report and publish it
directly to the report server.
What is Report manager?
Report Manager is a Web-based report access and management tool that you use to administer a
single report server instance from a remote location over an HTTP connection. You can also use
Report Manager for its report viewer and navigation features.
You can use Report Manager to browse the report server folders or search for specific reports. You
can view a report, its general properties, and past copies of the report that are captured in report
history.
What is Report Builder?
Web-based tool to create reports
Come free with SQL Server 2005
Launch Report Builder 1.0 to create ad hoc reports that you can save and run on the report server.
Users build desired reports themselves; can export to Word, Excel, PDF, and more
What is Report Server?
The report server is the central component of a Reporting Services installation. It consists of a pair of
core processors plus a collection of special-purpose extensions that handle authentication, data
processing, rendering, and delivery operations.


SSRS provides the option of toggle the data on + operator. Toggle when you want to enable a user to
interactively show or hide report items or, for a table or matrix, rows and columns associated with a
group.
Toggling is like drill down report where you hide's summary at initial level which can be viewed b user
when required.


Solution
Following are some general questions about SSRS development to see if general working
knowledge of SSRS is known.
1) What are the different kinds of SSRS Reports?
Reports can be categorized into operational and analytical reports. The distinction is
based on the source of data and level of analysis facilitated by any particular report.
Operational reports are based on OLTP sources and are static reports and Analytical
reports are based on OLAP sources and generally facilitate drill-down and drill-
through for analysis. Technically, SSRS reports can be categorized into
parameterized, linked, snapshot, cached, etc...
Further Reading
2) What are parameterized reports? What are cascading parameters in SSRS reports?
Reports that accept parameters from users to fetch and report data conditionally, are
known as parameterized reports. When you have multiple parameters in a report and
values of different parameters are dependent and populated dynamically based on
the value of parent parameters, it's known as a cascading parameter.
Further Reading
3) How would you go about developing a SSRS report?
General development methodology for a SSRS report is to start by creating a data
source. Based on the data source create one or multiple datasets as needed for
parameters and the body of the report. Add required controls from the toolbox which
would act as a container for the fields in the dataset. Format the controls added to
the report body. Verify and validate the report and finally deploy the report.
Further Reading
4) What is a dataset and what are the different types of datasets?
A dataset is similar to a query definition, which is executed when the report is
executed. Datasets are of two types: Shared and Embedded. An embedded dataset
is private to the report in which it exists and shared datasets can be shared across
reports.
Further Reading
5) Would you store your query in a SSRS report or a Database server? State the reason
why.
Storing SQL queries directly in text format in the dataset, should be avoided. Ideally
it should be stored in a stored procedure in the database server. The benefit is that
the SQL would be in a compiled format in a SP and brings all the benefits of using an
SP compared to using an ad-hoc query from the report.
Further Reading
6) What is Tablix?
A Tablix can be seen as a control with combined capabilities of a table and a matrix,
which facilitates asymmetric and flexible, row and column level, static and dynamic
groupings.
Further Reading
7) How would you access SSRS reports deployed on report server?
Reports Manager is the most straight-forward way to access SSRS reports deployed
on report server. Apart from executing the reports, it is the main administration
console for SSRS server to manage reports.
Further Reading
8) Have you used the Report Viewer control / web part? What are the limitations?
The report viewer control / web part is the basic control to integrate SSRS reports
with external applications. Using these interface applications can link and display
SSRS reports within the application. The parameters toolbar in these controls have a
limited programmable interface to decorate and blend it with the theme of the
application.
Further Reading
9) Which is the latest version of SSRS and what are the new enhancements?
SSRS 2008 R2 is the latest RTM version of SSRS. Rich data visualizations, better
programming functions for lookup and aggregation, improved performance and
better control over exported data are some of the major enhancements.
Further Reading
10) What is Report Builder?
Report Builder is an ad-hoc report authoring tool primarily targeted to be used by
business analysts to facilitate self-service report authoring. Report Builder 3.0 is the
latest version available as of date.
Further Reading
11) How would you deploy SSRS Reports using out-of-box functionality and how can you
automate SSRS report deployment?
Business Intelligence Development Studio is generally used to deploy SSRS reports.
There is no out-of-box support in SSRS to automate reports deployment, but free
third-party products like RSScripter can be used for this.
Further Reading
12) What is drill-down and drill-through in SSRS?
Drill-down is a mechanism of decomposing summarized information to a detailed
level. Drill-through is a mechanism of decomposing the problem by drilling
information generally using more than one report.
Further Reading
Further Reading

Problem
SQL Server Reporting Services 2008 (SSRS 2008) starts up slowly after a period of
inactivity when I try to access the reports page. Sometimes it's slow accessing it just half an
hour later, sometimes hours later, or next day, but I can't figure out why or the pattern
behind it? Check out this tip to learn more.
Solution
There are two key factors that impact Reporting Services slow start ups when it has been
inactive for a period of time.
SSRS Configuration (Recycle Time)
Memory Pressure
It's important to understand factors mentioned above. So let's dive in.
SSRS Configuration
SSRS has a XML configuration file with a setting for "Recycle Time". The recycle time is a
scheduled timer in minutes based on when the last time SSRS has been manually restarted
by a user. When a recycle occurs idle resources within SSRS are freed. This value can be
changed to allow SSRS to keep resources for a longer period to prevent slowdowns due to
re-initializing SSRS resources. SSRS is configured to recycle itself every 720 minutes, or 12
hours as shown below in the sample rsreportserver.config configuration file. This file is
located in your SSRS installation directory, for exampleC:\Program Files\Microsoft SQL
Server\MSRS10.MSSQLSERVER\Reporting Services\ReportServer
Service
...
...
RecycleTime720/RecycleTime
...
...
In the code above, the Recycle Time is every 720 minutes, but can be changed in
rsreportserver.config. Since SSRS will recycle itself every 720 minutes, this initially leads to
a slow start for the first user or process accessing it. Afterwards once users begin using the
system there should not be slow responses as long as SSRS is actively used until the
Recycle Time occurs again in 720 minutes.
The Recycle Time uses the last date and time SSRS was restarted as its reference point.
SSRS will use that restart time as the current date and time to schedule Recycle Time from
the configuration file. For example if Recycle Time is set for 720 minutes, and SSRS was
restarted at midnight 00:00, then 720 minutes later at 12:00 noon, SSRS will recycle itself.
Afterwards 720 minutes later at midnight 00:00 SSRS will be recycled again, and so forth.
This recycling of SSRS continues indefinitely to free up resources.
Since the best time for SSRS Recycle time will depend on each company's usage. It might
be best to do some analysis when SSRS is not being heavily utilized. By default it's recycled
every 12 hours, but it could be better to keep SSRS active for longer period if there report
requests are being processed.
For example we have a company with offices in New York, San Francisco, and Honolulu. The
Report Server is located on the East coast. East coast time is 6 hours ahead of Hawaii-
Aleutian Standard Time (HST). SSRS is heavily used in all office locations between the hours
of 6am and 5pm daily. Since SSRS Server is located on the East coast, we can determine
that at 5PM HST it will be 11PM Eastern Standard Time (EST). Based on the default
configuration file, the Recycle time of 720 minutes will be too short a time window for the
Honolulu office. A solution will be to change the Recycle Time to 17 hours between 6am EST
to 5PM HST, but for simplicity we can use a 24 hour Recycle Time.
To plan the recycle time, we would need to do the following:
1. Schedule restarting SSRS at 11PM EST
2. Modify Recycle Time in the XML configuration file to 1440 minutes, which is
equivalent to 24 hours.
Service
...
...
RecycleTime1440/RecycleTime
...
...
As an SSRS administrator you can work with your customer base to determine a time that
works best for your company.
SQL Server Reporting Services Memory Pressure
Depending on the size of your organization a stand-alone Report Server may be cost
prohibitive. In those circumstances, some deployments of SSRS are on a shared machine
with SQL Server and other applications/processes. Since SSRS is running on a shared
machine during the day, when RAM by applications/services are needed, Windows decides
SSRS as one of its victims to take away RAM if it has been idle. The simple solution to this
issue is to add more RAM, but in most cases that might not be possible.
There are two strategies to address this issue. First is scheduling periodic reports
throughout the day and the second option is to adjust minimum RAM for SSRS to manage
memory pressure. Both options require some estimation and planning to be successful.
The first is a work around to maintain activity to prevent SSRS from becoming idle. Periodic
reports generated throughout the day will keep SSRS active and can prevent Windows from
taking away RAM. It's the reason during busy periods of the day SSRS does not take a long
time to ramp to display the reports landing pages. If customers have daily reports
generated, consider working with customers to scheduled reports throughout the day to
help keep SSRS active. An alternative is to create a simple scheduled report to keep SSRS
active running every hour. For example: A simple report to display current date using
GetDate() or a simple query will work.
The second option is to consider adding an additional entry in your SSRS configuration file
for "WorkingSetMinimum" measured in kilobytes. SSRS will not release memory back to the
OS below this value set in the configuration file. By default the XML configuration is not
added, and must be manually added to the file. This is useful when there is resource
contention and we want Reporting Services to perform well. The best way to determine a
conservative number is to monitor the Working Set Memory utilization of Reporting Services
process (ReportingServicesService.exe) in task manager and use it as a baseline for the
"WorkingSetMinimum".

In this example above, ReportingServicesService.exe is using about 246,608K after
monitoring SSRS usage. We can conservatively use 250,000K as our minimum working set
of RAM for this server. We can add an entry in thersreportserver.config located
in C:\Program Files\Microsoft SQL Server\MSRS10.MSSQLSERVER\Reporting
Services\ReportServer\.
Service
...
...
WorkingSetMinimum250000/WorkingSetMinimum
...
...
It's also important to caution you that forcing a minimum RAM working set can impact other
applications/processes. This number should be determined after spending significant time
monitoring Task Manager\Perfmon to observe SSRS RAM consumption levels with other
applications/processes to ensure it does not adversely impact anything other processes.
There can be negative side effects if we configure the Working Set Minimum too high, as
SSRS will not be return unused RAM below what is configured to the operating system
during inactivity. Applications and the Server itself may become slow or unresponsive. This
is the reason we need to monitor current RAM usage to identify a baseline and test.
Conclusion
By understanding these factors for configuration and memory pressure on SSRS we as
administrators can more effectively prevent slow start ups within SSRS. This keeps
customers happier.

You might also like