An IT Pro Guide for Managing SharePoint’s BI Infrastructure


Published on

The Business Intelligence workload has significantly improved in SharePoint 2013. But to many administrators, it seems to be a confusing array of choices with a lack of clear guidance with how best to provision, configure, secure, and troubleshoot. This IT Pro-centered talk will focus on these four management challenges. In addition, we’ll also look at the layered BI architecture and partition out what functions SharePoint has versus SQL Server. If you are expected to support the underlying BI platform provided by Excel Services, PowerPivot, or Power View, you don’t want to miss this. Note: This slide share is designed for on-premises or IaaS SharePoint deployments.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

An IT Pro Guide for Managing SharePoint’s BI Infrastructure

  1. 1. S H A R E - T H E - P O I N T CONFERENCES 2014 Randy Williams stpevents
  2. 2. #seaspc Author Director of ACS
  3. 3. #seaspc Provision, Configure, Secure and Troubleshoot… Excel Services Power Pivot Power View
  4. 4. #seaspc  SharePoint Server 2013 Enterprise  SQL 2012 SP1 or SQL 2014 Enterprise  Used for PowerPivot & Power View  You can use older SQL versions for config, content, service app databases  Note: This session covers on-premises capabilities, not what you’ll find in Power BI in Office 365
  5. 5. #seaspc
  6. 6. #seaspc
  7. 7. #seaspc $server = "APP1" $identity = "contososp.excel" $appName = "Excel Services Application" $appPoolName = "Excel Services App Pool" $cred = Get-Credential $identity $appPoolAccount = New-SPManagedAccount -Credential $cred $url = "" $identity = "contososp.excel" $appName = "Excel Services Application" $appPool = New-SPServiceApplicationPool -Name $appPoolName -Account $identity New-SPExcelServiceApplication -name $appName –ApplicationPool $appPoolName -default Get-SPServiceInstance | where {$_.typename -eq "Excel Calculation Services" -and $_.Parent -like "*$server"} | ` Start-SPServiceInstance Get-SPExcelServiceApplication -identity $appName | New-SPExcelFileLocation -address "https://" -includeChildren $webApp = Get-SPWebApplication $url $webApp.GrantAccessToProcessIdentity($identity) New-SPWOPISuppressionSetting -Extension "XLSX" -Action "view" New-SPWOPISuppressionSetting -Extension "XLS" -Action "view"
  8. 8. #seaspc  If you use a unique app pool, make sure you run GrantAccessToProcessIdentity() on web app  If you use Office Web Apps, run New-SPWOPISuppressionSetting to have ECS render  Add/edit default file location when using SSL When troubleshooting, always double check your settings—if that fails, then review ULS logs!
  9. 9. #seaspc Understanding the data refresh problem
  10. 10.  Can ECS connect to the original data source to refresh worksheet data? #seaspc  Windows auth is the best choice, but when using NTLM you have delegation (double-hop) problems
  11. 11. #seaspc  Use Secure Store Service and store credentials to server within an SSS target application  Use one unattended service account or multiple target application IDs  Use Kerberos (KCD)  Use a standard (non-integrated) username & password  Store .ODC (office data connections) within trusted libraries and only allow trusted connected libraries
  12. 12. Try to delegate with logged on user’s credentials Use specific App ID from Secure Store Service Use unattended service account in Excel Services global settings #seaspc
  13. 13. #seaspc Configuring Excel Services Data Refresh
  14. 14. #seaspc
  15. 15. #seaspc PowerPivot is available in  Excel 2013 client application  PowerPivot is a preinstalled add in. Just enable it  Analysis Services in SharePoint mode  This is the server component provided by SQL Server  Excel Services calls into it when needed
  16. 16. #seaspc Excel Services is the hub for all PowerPivot features!
  17. 17. #seaspc  xVelocity engine used by Excel Services  Run on one or more SQL Servers (2012 SP1 or 2014)  Used when Excel workbooks with embedded data models are run in Excel Services  Embedded data model from Excel workbook is loaded and processed here  This can run alongside relational SQL instances, but for heavy analysis it should run on dedicated server(s)
  18. 18.  Install from SQL Server media  Installs as PowerPivot instance name  Grant Excel Services, PowerPivot, SSRS, and Farm accounts admin permissions #seaspc
  19. 19. #seaspc  PowerPivot instance runs on a dynamic TCP port by default  Edit C:Program FilesMicrosoft SQL Server MSAS11.POWERPIVOTOLAPConfigmsmdsrv.ini and change to a change to a fixed port  Add this fixed port and SQL Browser (TCP 2382, UDP 1434) to allowed firewall list  Test by using SQL Management Studio from a remote server
  20. 20. #seaspc  Add <servername>powerpivot to Excel Services Data Model settings  Name is not case sensitive
  21. 21. #seaspc  spPowerPivot.msi  Contains the latest drivers, plus  PowerPivot System Service handles scheduled data refresh  Management dashboard in Central Admin  PowerPivot Gallery (useful with Power View)  PowerPivot Configuration Tool simplifies the provisioning effort  Recommended to install on all SharePoint servers  Download from (SQL 2012 SP1) or (SQL 2014)
  22. 22. #seaspc Provisions additional PowerPivot capabilities  Scheduled data refresh allows users to configure when their workbooks are refreshed automatically. See  PowerPivot Management dashboard  PowerPivot Gallery (library template) Not required for basic PowerPivot features
  23. 23. #seaspc
  24. 24. #seaspc  Create a separate account for PowerPivot service and configure as default account (top page)  Modify “Create PowerPivot Service Application” to remove database GUID  Application pool assigned for PowerPivot service is not configurable  Doesn’t grant permissions properly for PowerPivot management dashboard
  25. 25. #seaspc #Reassign app pool $identity = "contososp.powerpivot" $appName = "PowerPivot Service Application" $appPoolName = "PowerPivot Service App Pool" $cred = Get-Credential $identity $appPoolAccount = New-SPManagedAccount -Credential $cred $appPool = New-SPServiceApplicationPool -Name $appPoolName -Account $appPoolAccount $serviceApp = Get-SPServiceApplication | where {$_.DisplayName -eq $appName} $serviceApp.ApplicationPool = $appPool $serviceApp.Update() #Grant app pool permissions to web applications (add other web apps if needed) $webApp = Get-SPWebApplication $webApp.GrantAccessToProcessIdentity("contososp.powerpivot") #Grant Excel identity permissions to central admin content database $identity = "contososp.excel" $centralAdminUrl = "https://contoso-wfe:2013/" $webApp = Get-SPWebApplication –IncludeCentralAdministration | where {$_.Url –eq "$centralAdminUrl"} $webApp.GrantAccessToProcessIdentity($identity)
  26. 26. #seaspc Level Features Install or Configure Client only • Interactive PowerPivot capabilities within Excel • Create data models • Excel 2013 • SharePoint is not required PowerPivot Server support • Interactive PowerPivot workbooks in the browser (slice, refresh) • Excel Services unattended service account • Analysis Services in SharePoint Mode • Register server in Excel Services All PowerPivot features • Access to workbooks as a data source from outside the farm • Schedule Data refresh • PowerPivot Gallery • Management Dashboard • Deploy PowerPivot for SharePoint 2013 Add-in • Run Configuration Tool
  27. 27. #seaspc Configuring Analysis Services in SharePoint mode
  28. 28. #seaspc
  29. 29. #seaspc  You must have SQL Server Reporting Services (SSRS) installed into the SharePoint farm in integrated mode  Also requires Analysis Services in SharePoint mode
  30. 30. #seaspc
  31. 31. #seaspc  Install SQL Server Reporting Services in SharePoint mode (SQL 2012 SP1 or SQL 2014)  Install SSRS in Integrated Mode on one or more SharePoint servers  Install rsSharePoint.msi on all WFE SharePoint servers (found on SQL disc)
  32. 32. #seaspc Install-SPRSService Install-SPRSServiceProxy $identity = "contososp.ssrs" $appName = "SQL Server Reporting Services Service Application" $appPoolName = "SSRS App Pool" $databaseName = "ReportingServices“ $cred = Get-Credential $identity $appPoolAccount = New-SPManagedAccount -Credential $cred $appPool = New-SPServiceApplicationPool -Name $appPoolName -Account $appPoolAccount $app = New-SPRSServiceApplication -name $appName –ApplicationPool $appPoolName ` -DatabaseName $databaseName $proxy = New-SPRSServiceApplicationProxy $appName -ServiceApplication $app Get-SPServiceApplicationProxyGroup | where {$_.FriendlyName -eq "[default]"} | ` Add-SPServiceApplicationProxyGroupMember -Member $proxy $url = "" $webApp = Get-SPWebApplication $url $webApp.GrantAccessToProcessIdentity($identity)
  33. 33. #seaspc  Once SSRS is installed and provisioned as described, Power View functionality is ready to go!  Just enable these site collection features:  Power View Integration Feature  PowerPivot Feature Integration for Site Collections  Power View reports can be created from Excel workbooks stored in a PowerPivot Gallery
  34. 34. #seaspc Testing PowerView
  35. 35. #seaspc Provision, Configure, Secure and Troubleshoot… Excel Services Power Pivot Power View
  36. 36. #seaspc For more information, see chapter 17
  37. 37. #seaspc
  38. 38. #seaspc Valued Supporters
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.