SPARK Performance Tuning

Understanding the Lifecycle

Phase 1
Deployment & Configuration
(Low Resource Demand)
Phase 2
Data Collection and Systems Buildout
(High Resource Demand)
Phase 3
Data Validation and Organizational Preparation
(Low Resource Demand)
Phase 4
Attestation Campaign
(High Resource Demand)
Phase 5
Post Campaign Sustainment
(Mid-to-Low Resource Demand)
Phase 6
SPARK Shutdown
(Low Resource Demand)

Phase 1 - Deployment & Configuration

Users Access
Admins
Resource Demand
Low
SQL
Scale to S2
S2 is recommended at the minimum
Function App
Scale to P1V3

The installation and configuration of the SPARK solution. Only admins will require access to the services so their will be a low demand them.

Phase 2 - Data Collection and Systems Buildout

Users Access
Admins
Resource Demand
High
SQL (>50K Sites)
Scale to P1
Azure Automation (>250K Sites)
Increase the automation accounts up to 10.
Duplicate the rb-spark-siteinventory-mgmt runbook to the new automation accounts.

Once the SPARK solution is setup and validated, the initial collection and analysis of the tenant sites will begin. During the analysis of the tenant sites, significant demand is placed upon the SQL server. It is recommended to scale SQL to a higher performance tier. This will allow the analysis to complete in much less time.

Phase 3 - Data Validation and Organizational Preparation

Users Access
Admins & Pilot Users
Resource Demand
Low
SQL
Scale to S2
Function App
Scale to P1V1

Now that the sites have been analyzed, we can start to work on the tasks required to go live. The system will have relatively low demand during this phase, so you can scale down. Data validation, user guides and testing will need to be completed prior to going live with SPARK.

Data Validation & User Guides (Admins)

Admins will start to analyze the sites that are Orphaned and Unreachable. A strategy will need to be created to handle these sites. You will often find and resolve issues that were previously unknown. Admins should also review sites that have a large number of admins and/or owners. This usually occurs with Teams sites. This information should be included in the User Guides that will need to be created for the site admins/owners to follow.

The User Guides should be reviewed and follow the governance in place. If governance does not exist, it’s recommended to define them as part of this phase.

Pilot Testing

A group of pilot users should be identified at the beginning of this phase. The User Guides will need to be completed prior to pilot testing. It’s recommended to utilize the pilot users for feedback of the guides as they test the system. This will help lead to a successful launch of the solution.

Phase 4 - Attestation Campaign

Users Access
Admins & Users
Resource Demand
High
SQL
Scale to S2
Function App
Scale to P1V3

The SPARK solution has been validated and tested with user guides ready for the site admins and owners to review in order to complete their attestation. The highest demand are expected during the following:

  • Immediately after the daily notification is sent
  • During the first two weeks of the attestation campaign

High demand will occur once the rb-spark-sendemail-toDL runbook executes and sends an email to the Distribution List Groups. You will need to review the recommended actions to take in order to reduce load and prevent service failures during your campaign.

Phase 5 - Post Campaign Sustainment

Users Access
Admins & Users
Resource Demand
High
SQL
Scale to S2
Function App
Scale to P1V3

Once the campaign has been mostly completed, there will be lower demand for the system. Based on the monitoring completed in the previous phase, you can scale the Function App and SQL down to a lower tier that will maintain the demand.

Phase 6 - SPARK Shutdown

Users Access
Admins
Resource Demand
Low
SQL
Scale to B1
Function App
Scale to P1V3
Turn off the function app
Azure Automation
Turn off the schedules

Although SPARK is meant to be a short term solution, it can be used for longer term. Reattesting for sites may be requested every months to ensure content is reviewed. If you choose to place the solution in a hybernated state, complete the following:

  • Turn off the Azure Automation schedules
  • Turn off the Function App
  • Lower the plan for SQL to B1

When you want to enable SPARK in the future, you will repeat Phases 2-6.


Table of contents