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.