Rock Solid SQL Server Management - Presentation Transcript
Red Rock Consulting Rock Solid
Red Rock Consulting Overview
Australian-owned company; established in 1998
Focused on providing the best solutions using Microsoft SQL Server & Oracle technologies
SQL Server Group
Support
Consulting
RockSolid Product
Over 350 staff with offices in Sydney, Melbourne, Brisbane, Adelaide, Canberra, Wellington and Auckland
Microsoft Gold Certified Partner
Government endorsed supplier
Member of UXC - ASX Top 300 listed business solutions company
Overview Tony Bain, Rock Solid Product Manager
12 years SQL Server DBA Management experience
Former SQL Server MVP
Author (SQL Server 2000 Stored Procedure Handbook, SQL Server 2000 From Novice to Pro, Data Warehousing with SQL Server 2000 Analysis Services, Building an Effective Data Layer with SQL Server 2000 and VB.NET)
Frequent speaker at Microsoft Tech Ed
Overview The Rock Solid Product
RockSolid software currently provides automated DBA support for more than 10000 commercial instances
One of the worlds largest IT Services Company uses RockSolid to provide outsourced DBA support to large Australian customers
Several of the largest banks in Australia—(w/2006 revenues of AUD$19B)—manage their large SQL database infrastructures with RockSolid
RockSolid is developed in Microsoft .NET & is a group of Windows Services, ASP.NET Web Site, ASP.NET Web Service, TSQL and Reporting Services Reports
RockSolid is over 500,000 lines of code
Product team of 10
Development, testing, documentation, support
Overview The Rock Solid Product
Overview Rock Solid Architecture Data Store Client Agent Server Agent Web Service Analysis Agent Notification Agent Web Portal Report Library Site SQL Servers Client Agent Site SQL Servers
Deployment Model: Enterprise
RockSolid is fully installed onsite
Licensed on perpetual license model
Site RockSolid
Deployment Model: Enterprise - Cloud Enabler
Seamless management between local & cloud based instances
Allows organizations to start a transition to cloud based SQL infrastructure
Site RockSolid
Deployment Model: Service Provider
Allows a Service Provider to manage multiple customers
Service Provider has a “global” view of all customers
Customer has a “local” view of just their site
Site RockSolid Site Service Provider
Deployment Model: SaaS
Multi-tenanted RockSolid installation
Sites are independent and managed locally by site resources
SaaS provider can make available “best practice” defaults to SaaS clients
Site RockSolid Site
Goal: “Allow DBAs to manage any number of SQL Server Instances to the same service quality possible if they were just managing one.”
Core Concepts – A Constant High Robust Service Level
Virtualized Management
Automated Management
Real Time SQL Server Analysis
Issue Escalation, Notification & Change Control
Information Availability
A Constant High Robust Service Level Virtualized Database Management
A Constant High Robust Service Level Virtualized Database Management
Virtualized Database
All the configuration, management, security and recovery options that effect the database
Not just “SQL Server” settings, but the monitoring and management of the database
Virtualized Instance
All the configuration, management, security options that effect the Instance
Again not just “SQL Server” settings, but the instance management, patching and availability settings.
A Constant High Robust Service Level Virtualized Database Management Hierarchy
Instance Hierarchy
All the configuration, management, security and recovery options that effect the database
Settings are inherited from the parent, and can overridden at the children
Database Hierarchy
All the configuration, management, security and recovery options that effect the database
Not just “SQL Server” settings, but the monitoring and management of the database
Service Provider Group Site Domain Instance Bucket Site Domain Instance Database
A Constant High Robust Service Level Virtualized Database Management Routing
Routing allows databases to be automatically managed to standard on discovery
Routing ensures databases are not “forgotten” about
Prod Test Dev XYZ DB_Test DEF ABC
A Constant High Robust Service Level Virtualized Database Management Management Set Prod Test Dev
A Constant High Robust Service Level Real Time SQL Server Analysis
Monitoring
Our monitoring of SQL Server is highly detailed and specific to SQL Server
Monitoring is carried out for Analysis and Reporting
Our monitoring of SQL Server is comprehensive
Analysis
RockSolid does all the expected reactive checks
Proactive Checks are key point of difference
Uses relevant historical information to isolate potential issues
Examples:
Backup space in advance
tps decrease
Growth rate increase
Security login activity
Blocking data (blocker, blockee, blocking query) SQL Server Version, License, Clustering,Edition Information Database User Database User Roles Server Role Members Data Database File (space, type, used etc) Database File Groups Stored Procedure checksums Table (rows, space etc) Indexes (space etc) Databases Internal Memory Status (DBCC MemoryStatus) Connection counts Database Virtual File Stats SQL Agent jobs SQL Agent job steps SQL Agent job schedules SQL Agent job histories Instance Wait Stats (select * from sys.dm_os_wait_stats) SQL Configuration (sysconfigures) SQL Registry keys (backup location, log location etc) Backup histories (sysbackups, backupsets etc) Logins SQL Server Error Log rows SQL Server Error Log sizes Profiler Login Failed Event Profiler Login Completed Event Profiler Object Create Event Profiler Object Modified Event Profiler Object Dropped Event Profiler RPC:Completed Profiler SQL Batch Completed Profiler Recompile Profiler Database Auto Srhink Event SQL Agent Error Log Windows Service Status Disk Information Disk Usage Index usage (2005) Index recommendations (2005) Selective Query Plan (showplans) SQL Server Build Server Role Membership Authentication Mode Database Ownership SQL Login Password Policy Compliance Disk Allocations and Usage Instance Configuration Disk Growth and Projected Capacity Backups Failing Backups not running or not scheduled Service Availability Log Shipping Issues Log Backups not run DBCC Checks not run Database options in violation of standard Instance options in violation of standard Transactions per second rate CPU Pressure I/O Pressure Common Query Performance Blocking issues Database Growth rate issues Error Log Issues Login Failures Security Issues Memory Pressure Job Executions times abnormal Users performing administrator functions Changes occurring without change control New Index recommendations Unused Index removal recommendations Performance Issue Analysis
Cost of SQL Server Management Automated Issue Resolution
DBA actions are defined as activities
RockSolid contains a comprehensive business rules engine which organizes activities into resolution processes. Resolutions use best practices.
Performance Decrease Backup Failure Disk Space Issue Shrink Data File Remove Old Backups Shrink Log File Backup Database Check Blocking Check Open Trans Kill Non Critical Spid Shrink Data File Remove Old Backups Shrink Log File Remove Old Backups Backup Database Check Open Trans Check Blocking Kill Non Critical Spid Create Job Start Job Run Script Change DB Option Apply Service Pack Create Database Create Login Create Object Remove Database Restore Database
Cost of SQL Server Management Automated Issue Resolution
Fault Resolution
Availability Failure
Service Failure
Job Failure
Backup Failure
I/O Corruption
Disk Space Issues
Performance Degradation
Repeated Login Failure
Error Log Errors
Replication Failures
Log Shipping Failures
Task Resolution
Creating
Databases, Logins, Users, Roles
Assigning Permissions
Altering Database Configuration
Altering Instance Configuration
Apply Service Packs
Backing up a Database
Move Database / Data File
Restoring Databases from Backup
Database Ownership
Create / Alert / Drop jobs
Run Script
Update Statistics
A Constant High Robust Service Level Automated Database Management
A Good Operational DBA process is flowchartable
Numerous automated management tasks exist e.g.
Index Maintenance
Data File Management
Automatically resizing data files during maintenance windows
Statistics Management
Backup Management
Database Consistency Checks
Patch Management
Error Log Management
History Table Management
CPU Affinity & Parallelism Management
Detailed Functionality Example: Index Management
Index management approach is different to “typical” approach.
Using calendars DBA assigns times when Index Maintenance is allowable
RockSolid decides how to use that time to full potential
RockSolid evaluates what indexes to maintain in that window based on
Index size
Index fragmentation
Index usage
Index relevance to “common queries” (query plan analysis)
Index rebuild history
Large chunks of time and not necessary to maintain indexes. Small pockets of time between batch processes etc can be used to their full potential to maintain the database
Cost of SQL Server Management Zero Screen Time
Normal DBA operations can be fully completed without requiring log in to the SQL Server itself to carry out the tasks
Task Completion Time Frame
Tasks are completed faster as login access is not required
Tasks are completed more accurately as task is implemented as per request approved by change approvers
Tasks are carried out using a consistent approach and methodology
Security
Does not require DBAs to have login access to SQL Server
Enforces all changes to have a history and have change records
Certain tasks can be prevented from certain users.
Cost of SQL Server Management Reduced Investigation & Resolution Timeframes
Data Gathering & Presentation
When an issue is passed to a DBA for manual resolution, an error message is not simply passed
Instead all the detailed relevant information required to resolve the issue is passed to the DBA for immediate analysis.
Cost of SQL Server Management Reduced Investigation & Resolution Timeframes Eventing
Eventing is the capture and recording of every task, change, process or situation of interest that occurs within a SQL Server instance
Events are not issues, events are simply things that have happened
Events are categorized based on their impact on areas such as performance, security, recoverability and availability.
Examples:
Backup completed, index create, table altered, query run for first time, application detected for first time, login failed, login succesful, data file grown, statistics update, stored procedure plan recompiled……
Events can then be used for analysis in the context of issues.
For Example:
A stored procedure is failing, what changes have been recently made and by who…
Or, I can see that performance of this query has slowed down significantly, but why?
16/10/2007 10:00 Index "ix_TableABC_Index1" was dropped by Login "DOMAIN oms" 16/10/2007 10:13 Common Query "SELECT * FROM ABC WHERE A={numericvalue}" query plan recompiled 16/10/2007 10:20 Common Query "SELECT * FROM ABC WHERE A={numericvalue}" performance changed by more than 70% 16/10/2007 10:40 Table ABC statistics update automatically by SQL Server 16/10/2007 11:45 Table ABC long term exclusive locks causing 5 concurrent process to blocked for 120 seconds 16/10/2007 17:00 Table ABC Index "ix_TableABC_Index2" offline rebuild completed successfully
Detailed Functionality Performance Management
Executed queries are parsed to isolate root query
Root query is then aggregated to show try impact of query execution
Server Agent SELECT a,b,c FROM xyz WHERE Y=10 SELECT a,b,c FROM xyz WHERE Y=30 SELECT a,b,c FROM xyz WHERE Y=50 SELECT a,b,c FROM xyz WHERE Y={numeric} EXEC proc_DEF ‘ON’,1,’10/2/2007 EXEC proc_DEF ‘OFF’,5,’12/2/2007 EXEC proc_DEF {string},{numeric},{date} Sp_executesql ‘SELECT a,b,c FROM hij WHERE Y=@P1’,’int’,’1’ SELECT a,b,c FROM hij WHERE Y={numeric}
A Constant High Robust Service Level Reduced Investigation & Resolution Timeframes
Capacity Planning
Real time projections of I/O, CPU and Memory resources
Configured hardware “lead time” to provide heads up when resources are reaching capacity
Capacity Planning Analysis
Show me this database with double the users
Show me the infrastructure requirements for this instance in 24 months based on historical growth
Show me the infrastructure requirements for this instance in 24 months based on irregular growth
0 comments
Post a comment