Dashworks SMS-SCCM Scrape Performance Metrics
Transcription
Dashworks SMS-SCCM Scrape Performance Metrics
SMS/SCCMScrapePerformanceMetrics Neil Wheeler 12/17/2010 Contents Introduction ............................................................................................................................................ 2 Juriba Test Specification ......................................................................................................................... 2 Setup ................................................................................................................................................... 2 SMS/SCCM Server ............................................................................................................................... 2 Dashworks Server ............................................................................................................................... 2 SMS/SCCM Scrape - Initial Run ............................................................................................................... 3 SMS/SCCM Server Profile.................................................................................................................... 3 Sqlservr.exe - % Processor Time ..................................................................................................... 3 Sqlservr.exe – Private Working Set ................................................................................................. 4 SMS/SCCM Scrape - Incremental Runs ................................................................................................... 5 SMS/SCCM Server Profile.................................................................................................................... 5 Sqlservr.exe - % Processor Time ..................................................................................................... 5 Sqlservr.exe – Private Working Set ................................................................................................. 6 Introduction The Dashworks SMS/SCCM Scrape is the process Dashworks uses to import data from a source SMS/SCCM server. The Dashworks system runs the SMS/SCCM scrape periodically on a schedule defined in the management console, the default is for the scrape to run nightly at 0100. When there is more than one SMS/SCCM site configured the system will attempt to scrape them in parallel, the number of parallel processes is determined by the number of processors available to the system. Dashworks scrapes data from the tables defined in this document http://juriba.zendesk.com/entries/305835. The Dashworks SMS/SCCM scrape uses an incremental method for collecting data. Once the initial scrape has completed, subsequent scrapes use the time stamps built into the source tables to check for changes only. This reduces the amount of data to be scraped to only that which has changed. This document is designed to offer an insight into the performance impact of running the SMS/SCCM Scrape against an SMS/SCCM server. The performance impact described is specifically for the specified servers. The actual impact on a production SMS/SCCM server will vary based on many factors such as; server hardware, current server load, sql configuration etc. Juriba Test Specification Setup This test has been run against a single SCCM database. The database is 110Gb in size and has the data for 250,000 client computers. At the time of the scrape no other processes were running (except standard operating system processes) and no clients were connected to the database. SMS/SCCM Server Dell PowerEdge E5410 2 x Intel Xeon E5410 @ 2.33 GHz 8 Gb RAM Windows Server 2008 Standard x64 Microsoft SQL Server 2008 Microsoft System Centre Configuration Manager (SCCM) 2007 Dashworks Server Microsoft Virtual Machine 1 x Intel Xeon E5410 @ 2.33 GHz 2 Gb RAM Windows Server 2008 Standard Microsoft SQL Server 2008 SMS/SCCM Scrape - Initial Run On first run of the SMS/SCCM scrape a full import is taken from all required tables. This typically equates to 20-30% of the whole database. Total data scraped Total rows scraped Duration 28Gb 126,077,000 1h 29 SMS/SCCM Server Profile Sqlservr.exe - % Processor Time This metric describes the percentage of processor time consumed by the sqlservr.exe process during the SMS/SCCM scrape. The initial load on the CPU spikes as the scrape is started, this then reduced to 3 or 4%. The whole process averaged 3.5% CPU utilisation over its duration. Average (%) Minimum (%) Maximum (%) Duration (hh:mm:ss) 3.533 0.000 90.000 1:29:25 Sqlservr.exe – Private Working Set This metric describes the amount of memory consumed by the sqlservr.exe process during the SMS/SCCM scrape. The memory used by the sqlservr process over the duration of the scrape increased steadily, the main spikes coinciding with scraping some of the larger tables (Add_Remove_Programs_DATA has 45,000,000 rows for example). This is consistent with the expected behaviour for SQL Server. Average (Mb) Minimum (Mb) Maximum (Mb) Duration (hh:mm:ss) 4992 3826 6261 1:29:25 SMS/SCCM Scrape - Incremental Runs Where possible the SMS/SCCM Scrape uses the time keys built into the SMS/SCCM tables to only query for rows which have changed. Some tables in the SMS database are not time keyed so they need to be scraped in full each time, see this link for more information http://juriba.zendesk.com/entries/305835. This test run was started immediately after the initial scrape; therefore no data has changed in the SMS database. The metrics show the impact of the SMS/SCCM scrape comparing the rows already in the Dashworks database to those in the SMS database and scraping in full those tables which are not time keyed. SMS/SCCM Server Profile Sqlservr.exe - % Processor Time This metric describes the percentage of processor time consumed by the sqlservr.exe process during the SMS/SCCM scrape. The CPU load spikes when the SMS/SCCM scrape is comparing the time keys to determine which rows to scrape. This is expected to place a higher load on the CPU than simply requesting all rows, but in turn reduced the time taken for the scrape to run. Average (%) Minimum (%) Maximum (%) Duration (hh:mm:ss) 9.694 0.000 70.193 0:09:48 Sqlservr.exe – Private Working Set This metric describes the amount of memory consumed by the sqlservr.exe process during the SMS/SCCM scrape. The memory used by the sqlservr process over the duration of the scrape stays consistent during the run. This is typical for a SQL server that has already cached much of the data that is being requested. Average (Mb) Minimum (Mb) Maximum (Mb) Duration (hh:mm:ss) 5912 5656 5965 0:09:48