Customizing the PowerPivot Management Dashboard

Customizing the PowerPivot Management Dashboard
SQL Server Technical Article
Writer: Ankur Goyal
Technical Reviewers: Artur Pop, Dave Wickert, John Hancock, and Lee Graber
Published: May 2010
Applies to: SQL Server 2008 R2
Summary: The purpose of PowerPivot for Microsoft® SharePoint® is to enable users to share
their PowerPivot workbooks in a secure and scalable environment. This white paper focuses on
the features that Microsoft SQL Server® 2008 R2 provides to help IT users to manage and
understand the self-service business intelligence (BI) activity. It describes key features of the
PowerPivot Management Dashboard that is included with PowerPivot for SharePoint. The
PowerPivot Management Dashboard is built using PowerPivot, SharePoint Web Part pages,
and Microsoft Excel® Services technologies. The primary focus of the white paper is to describe
how IT users can extend the capabilities of the management dashboard by creating their own
custom reports and dashboards.
Copyright
The information contained in this document represents the current view of Microsoft Corporation on
the issues discussed as of the date of publication. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft
cannot guarantee the accuracy of any information presented after the date of publication.
This white paper is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS,
IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS DOCUMENT.
Complying with all applicable copyright laws is the responsibility of the user. Without limiting the rights
under copyright, no part of this document may be reproduced, stored in, or introduced into a retrieval
system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or
otherwise), or for any purpose, without the express written permission of Microsoft Corporation.
Microsoft may have patents, patent applications, trademarks, copyrights, or other intellectual property
rights covering subject matter in this document. Except as expressly provided in any written license
agreement from Microsoft, the furnishing of this document does not give you any license to these
patents, trademarks, copyrights, or other intellectual property.
Unless otherwise noted, the example companies, organizations, products, domain names, e-mail
addresses, logos, people, places, and events depicted herein are fictitious, and no association with any
real company, organization, product, domain name, e-mail address, logo, person, place, or event is
intended or should be inferred.
© 2010 Microsoft Corporation. All rights reserved.
Microsoft, Excel, Silverlight, SharePoint, and SQL Server are trademarks of the Microsoft group of
companies.
All other trademarks are property of their respective owners.
Contents
Introduction .................................................................................................................................................. 4
Usage Collection ........................................................................................................................................... 5
PowerPivot Management Dashboard Data .................................................................................................. 9
Dashboard Cube Architecture................................................................................................................. 10
Creating Custom Reports ............................................................................................................................ 12
Infrastructure .......................................................................................................................................... 14
Popular Workbooks ................................................................................................................................ 18
Data Sources ........................................................................................................................................... 22
Publishing Custom Reports to SharePoint .................................................................................................. 23
Extending the Existing Dashboard .......................................................................................................... 23
Creating a New Dashboard ..................................................................................................................... 25
Conclusion ................................................................................................................................................... 30
Acknowledgements..................................................................................................................................... 31
Appendix ..................................................................................................................................................... 31
Introduction
PowerPivot for SharePoint provides visibility for IT into the activities of end users who are
building self-service Business Intelligence (BI) applications. The management experience for
PowerPivot for SharePoint is integrated with SharePoint Central Administration. The IT
experience for PowerPivot starts with PowerPivot Management Dashboard. The PowerPivot
Management Dashboard helps IT not only to find the mission-critical PowerPivot workbooks but
also to understand how data sources are used across the company and it helps IT to make
mission-critical decisions. This white paper provides a detailed overview of the PowerPivot
Management Dashboard, and it also demonstrates techniques for building custom reports on
top of the collected data. You can access the dashboard page from the SharePoint Central
Administration site (under General Application Settings, click PowerPivot, and then click
Management Dashboard). The starting point of the PowerPivot Management Dashboard is
shown in Figure 1. The dashboard has seven different Web Parts, and each Web Part shows
results\charts on collected usage information.
Figure 1: PowerPivot Management Dashboard page
Web Part # 1: This Web Part displays information about infrastructure; it shows the CPU and
memory usage for the PowerPivot Analysis Services service. It also contains a histogram of
overall query response for the PowerPivot service application.
Web Part#2: This Web Part contains links to the other pages in Central Administration.
Web Part#3: This Web Part is a Silverlight® control that displays a bubble chart. The chart has
axes that represent the number of users and the number of queries sent to a workbook. A
sliding bar indicates the date. As you move the pointer over each bubble, the name of the
workbook it corresponds to and the number of users that are connected are displayed, along
with the number of queries sent to the workbook. Also, as you move the date sliding bar, it
shows animation on bubble size which represents how the size of the workbook is growing over
time.
Web Part#4: This Web Part is a list view that shows how often a data source is used. You can
see how many users are connected to PowerPivot data sources, how many queries were sent,
and the size of the data source.
Web Part#5: This Web Part shows a report on the status of data refresh jobs, including jobs
that failed to run.
Web Part#6: This Web Part lists data sources, with their respective PowerPivot workbooks, that
failed on Data Refresh.
Web Part#7: This Web Part links to other reports and a data connection file (.odc) that in turn
links to PowerPivot management data. To extend the dashboard by including custom usage
reports, you can add other workbooks to this Web Part.
Usage Collection
Although a detailed discussion of PowerPivot usage infrastructure and collection process is
beyond the scope of this white paper, this section provides a brief introduction to the usage
collection process. This section starts by providing an overview of the workflow, and then it
shows you how to perform the individual steps. For a link to troubleshooting tips, see the
appendix.
The usage infrastructure allows us to record how the PowerPivot system and workbooks are
being used. It is similar to SharePoint ULS logging and based on Event Tracing for Windows
(ETW). The SharePoint Usage system generates usage files and collects data from various
SharePoint events. Usage files are binary files that contain data in the serialized format. Usage
data files (.usage) are collected in the SharePoint log directory (system drive->\Program
Files\Common Files\Microsoft Shared\Web Server Extensions\14\LOGS). By default, .usage
files are created every 30 minutes. As shown in Figure 2, PowerPivot system service (also
known as the MidTier service) uses the SharePoint ETW process to generate .usage files.
Figure 2: Shows the workflow of usage data collection
There are two SharePoint timer jobs (abbreviated to TJ in the figure), which must run in order to
move usage data from .usage files to the PowerPivot database, and a PowerPivot health timer
job, which collects health information about the application server where PowerPivot system
service is running.
To manage configuration and collection settings, start at the Central Administration site, where
PowerPivot-related events are also listed, as shown in Figure 3. Click Monitoring, click
Reporting, and then click Configure usage and health data collection.
Figure 3: Configure usage and health collection page
By default, only four PowerPivot related events are selected.
Event
Loads
Connections
Requests
Unloads
Description
Occurs when a PowerPivot workbook is
loaded as an Analysis Services database.
Occurs when a connection is opened to a
PowerPivot database.
Logs statistics about requests made to a
PowerPivot database.
Occurs when a PowerPivot database is
unloaded.
None of these events is required; if you clear a check box, usage data that corresponds to that
event is not collected. If you do choose to clear one or more check boxes, a set of health rules
generates a message alerting you that certain kind of usage information won’t be collected.
The timer jobs are located on the Central Administration site. To view them, click Monitoring,
click Review job definitions, and then click View All.
Figure 4: Timer jobs
Usage Data Import timer job: As shown in Figure 2, this timer job moves .usage files from the
log directory to the centralized SharePoint logging database. By default, it runs every 30
minutes. To change the setting of the timer job, on the Central Administration site, click
Monitoring, click Timer Jobs, and then click Review job definitions.
Figure 5: SharePoint Usage Data Import timer job schedule page
Usage Data Processing timer job: This timer job moves usage data from the SharePoint
logging database to the PowerPivot database. By default, it runs once every 24 hours, between
1:00 AM and 3:00 AM.
Figure 6: SharePoint Usage Data Processing timer job schedule page
PowerPivot Health Statistics Collector Timer Job: This timer job collects health information
such as CPU and memory usage from every application server in the farm where the
PowerPivot system service (the Analysis service) is running. It then moves this data into the
PowerPivot database directly. By default, this timer job runs every 15 minutes.
Figure 7: PowerPivot Usage Health collector timer job schedule page
Finally, usage data is collected into the PowerPivot database in the usage tables for the
respective PowerPivot service application. Figure 8 shows the location of the tables.
Figure 8: Usage tables under the PowerPivot service application database
PowerPivot Management Dashboard Data
The underlying data for the PowerPivot Management Dashboard is provided as a PowerPivot
workbook and stored on the Central Administration site. After usage data is collected into the
PowerPivot database, the PowerPivot Management Dashboard Processing timer job updates
the workbook on the Central Administration site. By default, the Dashboard Processing timer job
runs every 24 hours, in the middle of the night, after the Usage Data Processing timer job
completes. After the Dashboard Processing timer job is finished running, it processes (using Full
process) usage data into the PowerPivot cube, which is stored at the Central Administration
site. To view the cube, click Site Actions, click View All Site Content, and then under
Document Libraries, open the PowerPivot Management folder.
Figure 9: PowerPivot Management folder location
Figure 10: An individual PowerPivot Management data folder
As shown in Figure 10, the folder name is a GUID that serves as an internal identifier for the
respective PowerPivot Service Application. This folder contains a PowerPivot Management
Data workbook. This workbook contains the PowerPivot cube that has all the usage data, some
of which is displayed on different Web Parts on the dashboard page. This folder contains 22
different folders; each folder represents a specific language that PowerPivot Management
Dashboard supports. Inside each folder are locale-specific Excel workbooks that are been built
using the PowerPivot management data cube; for example, the 1033 folder contains workbooks
in English, and the 1041 folder contains workbooks in Japanese. For a list that maps locale IDs
to languages, see Appendix 2.
Note: PowerPivot Management Data workbooks contain just the data to be used on the report,
not the actual report. The actual reports are in the locale-specific folders.
Dashboard Cube Architecture
After you run the dashboard processing timer job, you can navigate the actual cube data by
opening the PowerPivot Management Data workbook using the PowerPivot client. If you go to
PowerPivot window, you will notice that this workbook contains twelve tables, which contain the
usage data.
Figure 11: PowerPivot Management data in PowerPivot client
You can browse these tables to see the existing data. If you go to the Design tab in the
PowerPivot window, you can see the existing relationships by clicking Manage Relationships.
Figure 12: PowerPivot Management data relationships
You can also open the PowerPivot field list to see different calculated measures that are defined
in the Loads, Connections, Requests, and Health tables.
Figure 13: PowerPivot field list showing custom calculated measures
Creating Custom Reports
This section describes how to create reports that use the existing dashboard data. This section
also explains the three major categories of reports on the dashboard (Infrastructure, Popular
workbooks, and Data sources) and includes examples of custom reports in these categories,
based on the existing data. The dashboard includes a data connection file (.odc) that links to the
PowerPivot management data.
Figure 14: Reports Web Part on PowerPivot Management Dashboard page
The Reports Web Part on the dashboard is linked to a regular SharePoint document library. You
can use the PowerPivot Management Data file to create reports with the data in Excel.
However, you must first edit the connection string in the .odc file.
Important: Before you open the .odc file, save the file on your desktop, and then right-click it to
edit it in Notepad. Locate the “<odc:ConnectionString>” tag, and then remove the “Embedded
Data = False” property from the connection string.
Figure 15: PowerPivot Management Data ODC file in Notepad
Remove the following highlighted property on the connection string:
Provider=MSOLAP.4;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=;Data
Source=http://<servername>/PowerPivot Management/<guid>/PowerPivot Management
Data.xlsx;MDX Compatibility=1;Safety Options=2;MDX Missing Member Mode=Error;Edit
Mode=0;Embedded Data=False
After you make the change, save the .odc file back on the Central Administration site under the
specific locale folder. After you refresh the dashboard page, you will see an updated .odc file
under the Reports Web Part. Double-click the file to start Excel. In Excel, you can now see
measures and dimensions that you can use to build custom PivotTable reports and charts.
Figure 16: PowerPivot Excel client connected with PowerPivot Management Data ODC file
The following section describes how to create each type of custom report.
Infrastructure
The usage data in this category contains information about CPU\Memory usage on the
application servers where PowerPivot system service is running and information about the
workbooks that have been loaded into the memory or unloaded from the memory. The three
major fact tables in this category are Loads, Unloads, and Health. These fact tables are related
to other dimension tables such as Servers, Documents, Time, and Date.
The Loads fact table stores information about the PowerPivot workbooks that have been used in
the SharePoint farm. This table contains information such as the application server (where
Analysis Services is running) on which the sandbox is loaded, the size of the workbook, the size
of the sandbox when it is loaded onto the Analysis Server, and user login information. Inside the
PowerPivot Management Data workbook, the Loads fact table is related to other dimension
tables (as shown in Figure 17).
Figure 17: Relationship diagram for the Loads table
Time and Date are regular time and date dimension tables. The Date table contains fields for 32
different languages that are supported in SharePoint. It also has a field for Today, which is the
last date the data was collected in the cube.
Figure 18: Table schema for Servers, Users, Date, and Time tables
The Servers table contains the machine names and Analysis Services instance names of all the
application servers where PowerPivot system service is running in the SharePoint farm. The
Users table contains information such as user login, name, email, and job title. For every load
event, an entry is logged in the Loads and DataSources table, even in the case of two different
load events with the same DatabaseID. These two tables have a many-to-many relationship,
and the relationship is built using two intermediate tables: Documents and DocumentVersions.
The Documents table contains information about every PowerPivot workbook that a user
uploads to a SharePoint site. DocumentVersions, another dimension table in the PowerPivot
management data cube, contains all the unique DatabaseID values that result from loading a
workbook into the memory, making connection to a workbook, sending requests, or unloading a
workbook. The DocumentVersions table is a view in the relational database.
Figure 19: Relationship diagram among Loads, Documents, DocumentVersions, and
DataSources tables
The Unloads fact table is related to the same dimension tables as the Loads table is in the
PowerPivot management data cube (as shown in Figure 20).
Figure 20: Relationship diagram for the Unloads table
The Health fact table contains CPU and Memory usage information of all the application servers
where the PowerPivot system service is running in the SharePoint farm. This table is connected
to the Time, Date, and Servers dimension tables (as shown in Figure 21).
Figure 21: Relationship diagram for the Health table
The next example shows how to create other reports on top of the collected data. When you
double-click the .odc file, Excel opens, displaying a blank sheet on which you can create a
PivotTable. On the right-hand side of the window, the PivotTable field list is displayed, where all
the measures and dimensions are listed from the PowerPivot management data cube.
Here is an example in this category.
Problem statement: As an IT administrator, I want to know how my application servers are
doing in terms of number of loads, connections, and requests in the SharePoint farm.
Solution: Build a custom report using PowerPivot in Excel. Figure 22 shows a screen shot of
such a report. It lists application servers where PowerPivot system service is running and shows
the total number of loads, connections, and requests that have been made to each of the
servers. It also lists the average CPU and Memory usage on each server. Furthermore, you can
slice the data with day of the week or with a particular date to see usage on the server for that
given day.
Figure 22: Custom report
To generate this report, select MachineName and AnalysisServiceInstance from the Servers
dimension table on the Row Labels. You can modify the PivotTable options so that result can be
displayed in a tabular format as shown in Figure 22.
Figure 23: Servers table under PowerPivot field list
To show the required counts, select respective measures from the PivotTable field list. Select
the Count of Connections measure from the Connections table; for loads, select the Count of
Loads from the Load table; for requests, select the Count of Requests from Requests table; and
then select CPU\Memory from Health table (as shown in Figure 24).
Figure 24: PowerPivot field list with selected dimensions and measures
After you add all the dimensions and measures that contain the relevant data, you get a report
in the form of a PivotTable. To insert slicers that enable you to view data by date or day of the
week, under PivotTable Tools, click Options, and then click Insert Slicer.
Popular Workbooks
The usage data in this category contains information about the connections that have been
made to the PowerPivot workbooks and the requests that have been sent to these workbooks.
The two major fact tables in this category are Connections and Requests. These fact tables are
related to other dimension tables such as Servers, Documents, Time, and Date.
The Connections fact table stores information about every single connection that has been
made to sandboxes in the farm. This table contains information such as user login, client IP
address, type of connection (through ECS, AMO, ADO MD, and so forth), and application server
ID on which connection has been made. The Connections fact table is related to other
dimension tables (as shown in Figures 25 and 26).
Figure 25: Relationship diagram for Connections table
Figure 26: Relationship diagram for Connections table
For connection events, similar to loads and unloads, an entry is logged in the Connections and
DataSources tables, because a user can connect to an existing workbook or can connect to a
new workbook and, therefore, connection events don’t necessarily have an associated load
event. The Connections table is related to the DataSources table using the Documents and
DocumentVersions tables.
Figure 27: Relationship diagram among the Connections, Documents, DocumentVersions, and
DataSources tables
The Requests fact table stores information about every single request that has been made to
sandboxes in the farm. This table contains not only the information about the user and the
application server on which the request has been made, but also the information about the type
of queries that were issued during the request. For PowerPivot service applications, the query
requests are divided in these five buckets: Trivial, Quick, Expected, Long, and Exceeded.
Settings for these buckets can be changed on the PowerPivot service application setting page
at the SharePoint Central Administration site. The Requests fact table doesn’t store the actual
MDX query, but rather the number of queries under different buckets that were sent against
sandboxes. This fact table is also connected to other dimension tables like Connections, Loads,
and Unloads (as shown in Figure 28).
Figure 28: Relationship diagram for Requests table
Here is an example in this category.
Problem statement: As an IT administrator, I want to know which workbooks in the SharePoint
farm have the most connections and requests made.
Solution: Build a custom report using PowerPivot in Excel. Figure 29 shows a screen shot of
such a report. It lists the workbook URL and shows the connection and request counts,
respectively. Furthermore, you can also slice the data on a given day of the week.
Figure 29: Custom report
To generate this report, select Url from the Documents dimension on the Row Labels. Select
DataSource Connections Count and DataSource Requests Count on Values in the PowerPivot
field list (as shown in Figure 30).
Figure 30: PowerPivot field list with selected dimensions and measures
After you add all the required dimensions and measures, you get a report in the form of a
PivotTable. Now, under PivotTable Tools, you can add a slicer to show day of the week on the
report.
Data Sources
The usage data in this category contains information about the data sources that have been
used by PowerPivot workbooks. The DataSources fact table stores every single data source
that has been used by any active PowerPivot workbook in the farm. This fact table is connected
to the Documents and DocumentVersions dimension tables, as shown in Figure 31.
Figure 31: Relationship diagram for DataSources table
Here is an example in this category.
Problem statement: As an IT administrator, I want to know the authors who have created their
workbooks on a given data source and how many times their workbooks have been accessed in
the SharePoint farm.
Solution: Build a custom report using PowerPivot in Excel. Figure 32 shows a screen shot of
such a report. It lists the data source, catalog information, the author's name, and the number of
times that data source has been accessed.
Figure 32: Custom report
To generate this report, select Source and Catalog from the DataSources and AuthorFullName
from the Documents dimension respectively. Then, select DataSource Count as a measure on
the Values, as shown in Figure 33.
Figure 33: PowerPivot field list with selected dimensions and measures
Publishing Custom Reports to SharePoint
After you have created custom reports on management dashboard data, you can either publish
them to the existing PowerPivot Management Dashboard or you can create a new dashboard
page on the SharePoint Central Administration site. This section walks you through both
methods.
Extending the Existing Dashboard
There are two ways to add your Excel workbooks into the existing dashboard: from the
dashboard itself or from the library. From the PowerPivot Management Dashboard page, add
your Excel workbooks under Reports Web Part, as shown in Figure 34.
Figure 34: Add a document from Reports Web Part
From the document library where PowerPivot management data files are stored (click Site
Actions, click View All Site Content, and under Document Libraries, open the PowerPivot
Management folder, and then click on the GUID folder), add the files under the specific locale
folder. Figure 35 shows this method for the English language.
Figure 35: PowerPivot Management data folders
After you add the files, you can edit the PowerPivot Management Dashboard page to show your
reports. To edit the dashboard page, on the Page menu, click Edit Page, as shown in Figure
36. The existing dashboard page becomes editable, and you can add a new Excel Web Access
(EWA) Web Part or modify any existing Web Part. The following section describes in detail how
you can add your own EWA Web Part.
Figure 36: Edit dashboard page link
Finally, after you are done editing the dashboard page, click Stop Editing to save your
changes.
Figure 37: Stop Editing button
Creating a New Dashboard
Before you create a new dashboard page, you may want to save your custom reports in a
document library on Central Administration site. To create a new document library, go to all site
content (under Site Actions, click View All Site Content) and create a new document library,
as shown in Figure 38.
Figure 38: Creating new document library at Central Administration
After you create a new document library, you can upload all of your files to it. Before you create
a new dashboard page that contains EWA Web Parts, make sure that the SharePoint Server
Enterprise Site Collection features are enabled. On the Site Settings page, under Site Collection
Administration, click Site collection features, and under Site Actions, click Manage site
features, as shown in Figure 39.
Figure 39: Site settings page at Central Administration
For site collection, ensure that the Active button appears next to the SharePoint Server
Enterprise Site Collection features setting.
Figure 40: Site collection features settings page at Central Administration
Now you can create a new dashboard page by creating a custom Web Part Page. Click Site
Actions and then click More Options. In the Create page, click Web Part Page (as shown in
Figure 41).
Figure 41: Creating a new Web Part Page
Enter a name for the page, select a layout of your dashboard, and enter the location (your
document library) where you want to save this Web Part Page (as shown in Figure 42).
Figure 42: New Web Part Page
The next page displays all the blank Web Parts. To add your own custom reports, click Add a
Web Part.
Figure 43: Web Part edit page
To add an Excel Web Access (EWA) Web Part, under Categories, click Business Data and
then under Web Parts, click Excel Web Access Web Part (as shown in Figure 44).
Figure 44: Adding an EWA Web Part
After you add the EWA Web Part, you can click on the tool pane link to open edit the properties
of the Web Part.
Figure 45: Linking an EWA Web Part to a workbook
In the tool pane, select the workbook that you want to link with the Web Part. You can also
modify other Web Part properties such as height, width, and description.
Figure 46: Customizing Web Part properties
Note: when you add a new Web Part, you will see a PowerPivot category that lists all the
existing Web Parts from the PowerPivot Management Dashboard. Currently, there is a bug in
the system that prevents the addition of these existing Web Parts to a new page. However, in
future updates we hope to provide this functionality so that administrators can leverage
PowerPivot Web Parts.
Conclusion
PowerPivot for SharePoint provides many features in terms of underlying data and technology;
the PowerPivot Management Dashboard is just the tip of this iceberg. I hope the information that
we provided in this white paper will open new horizons for IT users.
For more information:
http://powerpivot.com/: PowerPivot official site
http://blogs.msdn.com/powerpivot/: PowerPivot official blog site
Did this paper help you? Please give us your feedback. Tell us on a scale of 1 (poor) to 5
(excellent), how would you rate this paper and why have you given it this rating? For example:


Are you rating it high due to having good examples, excellent screen shots, clear writing,
or another reason?
Are you rating it low due to poor examples, fuzzy screen shots, or unclear writing?
This feedback will help us improve the quality of white papers we release.
Send feedback.
Acknowledgements
I would like to acknowledge the SQL Server Analysis Services team for giving me the inspiration
and support to accomplish this task. I would like to thank John Hancock, Artur Pop, Dave
Wickert, Lee Graber, and Adrian Dumitrascu for their tremendous support and guidance; without
their help it would not have been possible for me to achieve this task.
Appendix
1. Diagnostic guide on Usage and the PowerPivot Management Dashboard:
http://powerpivotgeek.com/troubleshooting/diagnostic-guide-for-usage-and-thepowerpivot-management-dashboard/
2. List of locale IDs with descriptions: http://msdn.microsoft.com/enus/goglobal/bb964664.aspx