excel msolap powerpivot oledb transports tcptcp ssas server (1) server= ; data source= ; how used:...

75
Deep Dive on PowerPivot Technologies Dave Wickert Principal Program Manager Microsoft Corporation SESSION CODE: BIE401

Upload: andrea-young

Post on 13-Jan-2016

225 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Deep Dive on PowerPivot TechnologiesDave WickertPrincipal Program ManagerMicrosoft Corporation

SESSION CODE: BIE401

Page 2: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

All three PowerPivot architectural areasClient overall architectureCool ‘in the belly of the beast’ demoSharePoint components

Querying (both from outside the farm and ECS)Data refreshGalleryMgmt Dashboard

Engine overall architecture

Outline

Page 3: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Let us start with the Client

Page 4: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAP

PowerPivotOLEDB

Transports

TCP

SSASServer

(1) SERVER=<server-name>;DATA SOURCE=<server-name>;How used: regular client-server connectionJust like SQL 2000, SQL 2005, SQL 2008

PivotTable

Traditional OLAP client-server connections

Page 5: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAP

HTTP

PowerPivotOLEDB

Transports

TCP

(2) =http://<web-server>/mdmdpump.dll;How used: Existing SSAS ‘data pump’ connectionSQL 2000, SQL 2005, SQL 2008

Web

DataPump

SSASServer

PivotTable

Native http connectivity

Page 6: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAP

HTTP

PowerPivotOLEDB

Transports

TCP

(3) =http://<SP-server>/sales.xlsx;How used: PowerPivot SharePoint connectionNew in PowerPivot

SharePoint Farm

PivotTable

Native http connectivity

Page 7: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

Client add-in

Page 8: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

ADOMD.NETAMO

Client add-in accessing data

Page 9: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

ADOMD.NETAMO

PowerPivot in-proc engine

In-proc Engine

Page 10: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

ADOMD.NETAMO

PowerPivot in-proc engineSERVER=$EMBEDDED$;How used: PowerPivot embedded connectionNew in PowerPivot

HTTP

PowerPivotOLEDB

Transports

TCP

INPROC

PivotTable

In-proc Engine

Page 11: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

ADOMD.NETAMO

PowerPivot in-proc engine

File Open:• Excel opens file and reads the data in the

workbook to its own memory• If there is a MSOLAP connection that contains

an embedded workbook, Excel streams the data into MSOLAP using a streaming interface.

• Data is loaded into the in-proc engine (there are temporary files written on disk)

File Open

Page 12: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

EXCEL

MSOLAPPowerPivot Addin

ADOMD.NETAMO

PowerPivot in-proc engine

File Save:• User hits ‘Save’• Excel sees that there is an embedded

PowerPivot connection and calls the stream read on MSOLAP

• MSOLAP reads the data from the in-proc engine and streams it back to Excel

• Excel writes the PowerPivot in-proc data to the workbook

File Save

Page 13: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

File Format

File Format:• OpenXML• Easy to see what is happening

o Just rename the .xlsx to .zip and browse it• PowerPivot data stored as a single file associated with the embedded

connection• Backup of the SSAS database• Can unzip the file, extract the embedded data to a ‘.abf’ file and do a

restore by-hand if you want on a PowerPivot SSAS instance

Page 14: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

A cool “in the belly of the beast” demoDave Wickert

DEMO

Page 15: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

SharePoint Farm

EXCEL

MSOLAP

ADOMD.NETAMO

PowerPivot Addin

PowerPivot In-Proc Engine

SSASServer Web

DataPump

SSASServer

PivotTable

So . . . in summary

Page 16: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

SharePoint Farm

EXCEL

MSOLAP

ADOMD.NETAMO

PowerPivot Addin

PowerPivot In-Proc Engine

• User does a Save-As against a workbook with SP as the destination

• User does a “Publish to SharePoint”• Webdav file copy (SharePoint site looks like a

file share)• User goes to SharePoint doc lib and does a file

upload

Fastest!

How to files get to SharePoint?

Page 17: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Now let’s switch to the Server

Page 18: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

AS

PWS

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Other PowerPivot-enabled SP Farm(s)

WFE

ExcelDesktop

Application

InternetExplorer

SSASServer

SQL ServerInstance

TCP

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

On the server-side we are building towards . . .

Page 19: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

SharePoint Farm

InternetExplorer

SharePoint as a portal

Page 20: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

SharePoint Farm

InternetExplorer

SQL ServerInstance

Config DbContent Db(s)

SharePoint as a portal

Page 21: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Rendering an Excel Workbook

SharePoint Farm

InternetExplorer

Page 22: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

App Server SharePoint Farm

Application

InternetExplorer

SQL ServerInstance

Config DbContent Db(s)

Rendering an Excel Workbook

Page 23: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server SharePoint Farm

Application

InternetExplorer

SQL ServerInstance

PowerPivotOLEDBProvider

Config DbContent Db(s)

Rendering an Excel Workbook

Page 24: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Application

InternetExplorer

SSASServer

SQL ServerInstance

TCP

PowerPivotOLEDBProvider

Config DbContent Db(s)

Rendering an Excel Workbook

SSASServer

WebServer

Page 25: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Other PowerPivot-enabled SP Farm(s)

WFEApplication

InternetExplorer

SSASServer

SQL ServerInstance

TCP

PowerPivotOLEDBProvider

Config DbContent Db(s)

Rendering an Excel Workbook

Page 26: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Let’s take a step back and look at in-coming PowerPivot requests

Page 27: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

App Server

PSS

AS

PWS

SharePoint FarmExcelDesktop

SQL ServerInstance

Config DbContent Db(s)PowerPivot Db(s)

PowerPivot on-demand loading and routing

PSS = PowerPivot System Service(aka the “Midtier Service”)

AS in SharePoint integration mode(aka the “Engine Service”) the SSAS service we all know and love

PWS = PowerPivot Web Service

Page 28: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PowerPivotOLEDB

Transports

SharePoint Farm

Application

InternetExplorer

SQL ServerInstance

PowerPivotOLEDBProvider

Config DbContent Db(s)

Rendering a workbook with embedded PowerPivot data

SERVER=$EMBEDDED$;PowerPivot embedded connection

. . . Or . . .

SERVER=HTTP://SPSERVER/SITE/DOCLIB/SALES.XLSXPowerPivot ‘linked’ server

CHANNEL

Page 29: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

PowerPivotOLEDB

Transports

SharePoint Farm

Application

InternetExplorer

SQL ServerInstance

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

Rendering a workbook with embedded PowerPivot data

Page 30: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

AS

PowerPivotOLEDB

Transports

SharePoint Farm

Application

InternetExplorer

SQL ServerInstance

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

Rendering a workbook with embedded PowerPivot data

Page 31: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

AS

PWS

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Other PowerPivot-enabled SP Farm(s)

WFE

ExcelDesktop

Application

InternetExplorer

SSASServer

SQL ServerInstance

TCP

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

PowerPivot and SharePoint Overall Architecture

Page 32: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

AS

PWS

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Other PowerPivot-enabled SP Farm(s)

WFE

ExcelDesktop

Application

InternetExplorer

SSASServer

SQL ServerInstance

TCP

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

PowerPivot and SharePoint Overall Architecture

Page 33: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

EWS

ECS

OtherOLEDB

Providers. . .

App Server

PSS

AS

PWS

HTTP

PowerPivotOLEDB

Transports

SharePoint Farm

Other PowerPivot-enabled SP Farm(s)

WFE

ExcelDesktop

Application

InternetExplorer

SSASServer

SQL ServerInstance

TCP

CHANNEL

PowerPivotOLEDBProvider

Config DbContent Db(s)PowerPivot Db(s)

PowerPivot and SharePoint Overall Architecture

Page 34: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Per service applicationContains:

Instance Map – a collection of tables that indicate what databases are on located on what servers and their state, loaded or cachedUsage information – events for: connection, query response histograms, load, unload and Server+SSAS healthData refresh schedules (per workbook)Data refresh history results (success + failures)

PowerPivot database

Page 35: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

ECS

OtherOLEDB

Providers

. . . PowerPivotOLEDBProvider

App Server

STSC2WTS

PowerPivot Security Infrastructure

Page 36: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

ECS

OtherOLEDB

Providers

. . . PowerPivotOLEDBProvider

App Server

STSC2WTS

Uses S4U• Domain controller• 2-way trusts

PowerPivot Security Infrastructure

Page 37: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

WFE

EWA

ECS

OtherOLEDB

Providers

. . . PowerPivotOLEDBProvider

App Server

STSC2WTS

AppServer

PSS

PowerPivot Security Infrastructure

Page 38: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data refresh

Page 39: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 40: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 41: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 42: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 43: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 44: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 45: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 46: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data Refresh

Page 47: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

(1 min)

(data refresh job)

(SharePoint content db)

AS

.xlsx

PowerPivot Timer Job Infrastructure

Page 48: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

(1 min)

(data refresh job)

(SharePoint content db)

(sources)

AS

.xlsx

PowerPivot Timer Job Infrastructure

Page 49: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

(1 min)

(data refresh job)

(SharePoint content db)

AS

.xlsx

PowerPivot Timer Job Infrastructure

Page 50: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Data refreshtimer job

(every 1 min)

PowerPivot System Service

MainDR thread

Slot#1

Slot#2

Slot#3

• Multiple jobs can be running in parallel• Maximum concurrency is a property of the AS Engine instance

• Default amount of memory 4GB• Max is the # of CPUs

• Shared across all of the PowerPivotservice applications (we use a mutex tocontrol this)

Page 51: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Gallery

Page 52: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

• Built ondoclibtemplate

PowerPivot Gallery

Page 53: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

• Silverlightcontrol

• Thumbnailscalc’ed inbackground

• Hooks innew contenteventsbeing firedin SP OM

PowerPivot Gallery

Page 54: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

• But other UIas well . . .

• Excel launched linked to workbook

• Setup data refresh schedule

PowerPivot Gallery

Page 55: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

• Regulardoclibview

• Reach backand do whatever SharePoint provides

Such as: check-in/out, approvals, workflow, versioning, revert content, view and change permissions, . . .

PowerPivot Gallery

Page 56: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Gallery RestrictionsTo prevent information exposure

If .xlsx: Any ‘refresh on open’ connections

must be an embedded PowerPivot data Or if linked case must be in same doc lib as the sourceIf .rdl: All connections must be to PowerPivot workbook contained

in same doclib as the Gallery

Else ‘lock’ icon is displayed

verses

Page 57: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Mgmt Dashboard

Page 58: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Customer Insider Session – Microsoft NDA Only

PowerPivot Mgmt Dashboard

Page 59: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Based on two sources:Usage data (see architecture slides earlier)Data refresh schedules and history

Usage data kept in PowerPivot workbook stored in CA document library (see demo)Can use canned reports or your own

Feel free to extend the reports and add your own

PowerPivot Mgmt Dashboard

Page 60: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

xyz.usage files(written asynchronously

using ETW; samefolder as ULS)

.usage

Events collected:• Connections• Query histograms• Load and Unload

PowerPivot Usage Infrastructure

(5 min)

Page 61: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

WSS_Loggingdatabase

(centralized)

(30 min)

.usage

Events collected:• Connections• Query histograms• Load and Unload

PowerPivot Usage Infrastructure

xyz.usage files(written asynchronously

using ETW; samefolder as ULS)

(5 min)

Page 62: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

WSS_Loggingdatabase

(centralized)

PowerPivotApplicationDatabase(s)

(one per serviceapplication)

(30 min)

(daily)

.usage

Events collected:• Connections• Query histograms• Load and Unload

PowerPivot Usage Infrastructure

xyz.usage files(written asynchronously

using ETW; samefolder as ULS)

(5 min)

Page 63: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

WSS_Loggingdatabase

(centralized)

PowerPivotApplicationDatabase(s)

(one per serviceapplication)

(30 min)

(daily)

.usage

Events collected:• Connections• Query histograms• Load and Unload• Server health

PowerPivot Usage Infrastructure

xyz.usage files(written asynchronously

using ETW; samefolder as ULS)

(15 min)

(CPU & memoryusage for msmdsrv)

(5 min)

Page 64: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

PowerPivot Application Database

SharePoint Content

Database

SharePoint Content

Database

SharePoint Configuration

Database

Microsoft SQL Server 2008 R2

Microsoft SharePoint Server 2010

Web Applications

PowerPivot Gallery

Excel WebAccess

Excel Web Services

Service Applications

User-Defined Functions

Excel Calculation Services

Excel Workbook

External Data Sources

PowerPivotSystem Service

Analysis ServicesOLE DB Provider

PowerPivot Management

Dashboard

PowerPivot Web Service

WCF TCP HTTP

Analysis Services Service

VertiPaq Engine

Internet Explorer

PowerPivot for Excel 2010

BusinessApplication

Data Cache

Client Libraries

Analysis Management

Objects (AMO)

ADOMD.NET

Analysis Services OLE DB

Provider

XLSX

SharePoint Timer Service

Usage Data Import

Usage Data Processing

PowerPivot Data Refresh

PowerPivot Health Statistics Collector

PowerPivot Mgmt Dashboard Processing

PowerPivot Setup Extension

Timer Jobs:

SharePoint Content

Database

PSS

WSS_Loggingdatabase

(centralized)

PowerPivotApplicationDatabase(s)

(one per serviceapplication)

(30 min)

(daily)

.usage

Events collected:• Connections• Query histograms• Load and Unload• Server health

PowerPivot Usage Infrastructure

xyz.usage files(written asynchronously

using ETW; samefolder as ULS)

(15 min)

(CPU & memoryusage for msmdsrv)

PowerPivotUsage

Workbook(one per service

application)

(daily)

(runs aninternal datarefresh job)

(5 min)

Page 65: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Engine

Page 66: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Engine Architecture

Formula Engine

XMLA & MDX

VertiPaq SE

Parsing and query preparation

Block computation

On-disk files loadedInto memory ondatabase open

Page 67: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

VertiPaq Storage Engine

Optimized for in-memory operation; no paging(But we do have on-disk files for transactional integrity)Column-oriented; high compressionExpressions evaluated natively by storage engine (where possible)No aggregates

Page 68: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Summary

We’ve reviewed PowerPivot’s architectural components for the client, midtier and serverAreas:

Client overall architectureSharePoint components

Querying (both from outside the farm and ECS)Data refreshGalleryMgmt Dashboard

Engine overall architecture

Page 69: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Web siteshttp://powerpivotgeek.comhttp://powerpivotpro.comhttp://powerpivot-info.com(lots of links off of those)

BOLhttp://msdn.microsoft.com/en-us/library/ee210682(SQL.105).aspx

Resources

Page 70: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Related Content

Breakout Sessions (session codes and titles)BIE303 - Deploying and Managing PowerPivot for SharePoint 2010BIE401 - Deep Dive on PowerPivot TechnologiesBIE403 - Real-Time Business Intelligence with Microsoft SQL Server 2008 R2BIP301 - So Many BI Tools, So Little TimeBIP302 - Enabling Real-time Business Insight, Analytics and ReportingBIU201 - Building Sophisticated BI Applications Using Microsoft PowerPivot for Microsoft ExcelBIU203 - Delivering Self-Service BI in Your Organization Using Microsoft Excel, Excel Services, and Microsoft PowerPivotBIU302 - Enriching Microsoft PowerPivot for Microsoft Excel Applications Using DAX (Data Analysis Expressions)BIU303 - Using Microsoft Office 2010 with PowerPivot to Analyze SAP BW Data

Page 71: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Related Content

Interactive Sessions (session codes and titles)BIC06-INT - SQLCAT: PowerPivot Best Practices and Enterprise Case StudiesBIE04-INT - Building Custom Extensions to the PowerPivot Management DashboardBIE22-INT - Tips and Tricks for Troubleshooting a Microsoft SQL Server PowerPivot for SharePoint InstallationBIP09-INT - Unleash the Power of PowerPivot in Your EnterpriseBIU01-INT - Accelerating Adoption of PowerPivot: Demos, Learning, and Guidance from Internal MSIT TAP TeamsBIU02-INT - Budgeting Solution Built with PowerPivotBIU04-INT - Data Analysis Using Microsoft Excel 2010BIU05-INT - DAX Patterns in PowerPivot

Page 72: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Related Content

Hands-on Labs (session codes and titles)BIE03-HOL - Working with ATOM Data Feeds in Microsoft SQL Server 2008 R2 Reporting ServicesBIO03-HOL - Managing Microsoft PowerPivot for Microsoft Excel 2010 Solutions in SharePoint Server 2010BIU01-HOL - Creating Reports with Microsoft PowerPivot for Microsoft Excel 2010 BIU02-HOL - Defining DAX Calculations with Microsoft PowerPivot for Microsoft Excel 2010 BIU03-HOL - Loading and Preparing Data in the Microsoft PowerPivot for Microsoft Excel 2010 Client

Product Demo Stations (demo station title and location)TLC-68 - Microsoft SQL Server PowerPivot for Excel 2010

Page 73: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

Complete an evaluation on CommNet and enter to win!

Page 74: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL

© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. 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 provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Page 75: EXCEL MSOLAP PowerPivot OLEDB Transports TCPTCP SSAS Server (1) SERVER= ; DATA SOURCE= ; How used: regular client-server connection Just like SQL