PerformancePoint Services Architecture

Learn about the PerformancePoint Services client, front-end web server, and application server architecture.

PerformancePoint Services in Microsoft SharePoint Server 2010 is a SharePoint Server 2010 service. Its multitiered architecture includes components on the client tier, the front-end web server, and the back-end application server. The following diagram shows a generalized view of the PerformancePoint Services architecture.

In this article
Client Tier Architecture for PerformancePoint Services
Front-End Web Server Architecture for PerformancePoint Services
Application Server Architecture for PerformancePoint Services

Applies to: SharePoint Server 2010

Figure 1. PerformancePoint Services architecture

PerformancePoint Services architecture

Client Tier Architecture for PerformancePoint Services

The client tier includes the browser and PerformancePoint Dashboard Designer.

PerformancePoint Dashboard in the Browser

The browser displays a dashboard in a SharePoint Server 2010 page. Dashboards contain interactive scorecard, report, and filter objects. Objects in the browser communicate with the PPSRenderingService Web service by sending AJAX features for ASP.NET requests and receiving responses in JavaScript Object Notation (JSON) format.

PerformancePoint Dashboard Designer

Dashboard Designer provides a rich authoring environment for creating and managing dashboard content. Dashboard Designer installs on a client computer by using ClickOnce, a Web-based deployment technology. Dashboard Designer communicates with the PPSAuthoringService Web service by sending SOAP requests and receiving XML responses. Users can also perform simple design tasks in edit mode in SharePoint Server 2010, such as adding Web Parts to a dashboard.

Front-End Web Server Architecture for PerformancePoint Services

The front-end web server runs on Internet Information Services (IIS). It hosts thin custom editors, PerformancePoint Web Parts, web services, and the application service proxy.

Custom Editors for PerformancePoint Services

Custom editors enable users to modify a custom PerformancePoint Services object, which is a native ReportView, Filter, or DataSource object that defines custom values for its properties. Custom editors run server-side in a SharePoint application instance, and they call objects in the PerformancePoint Services object model (the service application proxy and SPDataStore object). For more information about custom editors, see Editors for Custom PerformancePoint Services Objects or PerformancePoint Services Code Sample: Custom Report, Filter, and Tabular Data Source Objects.

PerformancePoint Web Parts

Scorecard, report, and filter objects are rendered in Web Parts on a dashboard page. PerformancePoint Web Parts implement Microsoft SharePoint Foundation 2010 connection interfaces, which enable them to send values to or receive values from other Web Parts that use compatible connection interfaces. Only one connection can be defined between any two Web Parts on a dashboard page. However, multiple endpoints can be connected within the connection, and multiple parameter values can be sent over the connection.

PerformancePoint Web Services

PerformancePoint Services uses two web services at the site-collection level to perform authoring and rendering tasks.

  • The PPSAuthoringService web service is used by Dashboard Designer to create, modify, and delete dashboard objects, retrieve dashboard content, and retrieve data from data sources.

  • The PPSRenderingService web service is used by Dashboard Designer and the browser to render dashboard objects.

The web services call the BIMonitoringServiceApplicationProxy service application proxy to make requests from the application server.

Note

Calling PerformancePoint Services web services remotely is not a supported development scenario.

Service Application Proxy for PerformancePoint Services

BIMonitoringServiceApplicationProxy exposes the PerformancePoint Services API to consumers, and it provides the communication channel between the front-end web server and the application server.

The front-end Web Parts and web services call the service application proxy to render dashboard content and run data source queries. Then, the service application proxy forwards these requests to the PerformancePoint Services service application. The proxy interacts with the load balancer on the application server and maintains separation between hosted domains and web applications by identifying the part of the farm that provides results.

The service application proxy communicates with the service application by using a Windows Communication Foundation (WCF) service interface. The service-oriented architecture of the WCF interface provides improved performance, security, and scalability.

Application Server Architecture for PerformancePoint Services

The BIMonitoringServiceApplication service application provides the middle-tier business logic for the PerformancePoint Services instance and performs the complex processing for PerformancePoint Services features. It stores annotations, temporary objects, and parameter persistence (users' filter selections) in a database instance.

See Also

Concepts

Development Scenarios with PerformancePoint Services

Other Resources

Overview of PerformancePoint Services architecture (TechNet)