Logo
programming4us
programming4us
programming4us
programming4us
Home
programming4us
XP
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server
programming4us
Windows Phone
 
Windows Server

SQL Server 2008 R2 : A Performance and Tuning Methodology (part 1)

- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019
11/4/2012 6:00:37 PM

The Full Architectural Landscape

Understanding all layers of your implementation is critical to performance and tuning of your SQL Server application. Even the smallest aspect, such as locking, could be at the heart of your poor performing system. You just don’t truly know until you have evaluated all layers and all interactions that come into play in your SQL Server application. Figure 1 provides an overall perspective of all the layers of the architecture that you need to better understand and potentially tune.

Figure 1. The overall architectural landscape of a SQL Server implementation.


As you can see in Figure 1, your SQL Server environment sits at the heart of many different layers. They include the hardware (either physical or virtual footprint), memory, physical disks/devices, operating system, file systems, and database, to name a few. Quite often, a combined effort is needed between the infrastructure, application, database, and network teams to deliver the final, well-tuned SQL Server environment. If you can understand that you have not just a database problem or just an application design problem, you will likely be more successful at delivering “optimal” results when tuning your environment. You can treat Figure 41.1 as a checklist that you make sure you cover when doing performance and tuning. Then, when you make a change in one layer, you can make sure you test the full impact throughout all the other layers. Often, when you solve one issue in one layer, other issues bubble up to the surface of another layer.

Primary Performance and Tuning Handles

Now, let’s peel the onion a little more into the core architecture of SQL Server itself. Figure 2 shows the primary components within a SQL Server instance. The major issues to worry about at the instance level are the caches that comprise the memory pool and the number of CPUs available for processing to SQL Server itself (shown as white boxes, not dark ones). Of course, the disk I/O subsystem and files have to be carefully evaluated and used effectively as well. All other darker boxed items such as the SQL Server kernel are not within your control.

Figure 2. SQL Server instance architecture (memory, CPU, I/O).

The rule of thumb here is to treat these instance-level resources as “scarce” resources and monitor the CPU and disk I/O for their saturation levels (never exceeding 80%) and memory for its hit ratio and capability to service the desired amount of concurrent work at or better than the service-level requirements of your end users (even during peak usage times).

Figure 3 shows a more readily recognizable combination of “handles” that are the major areas a human can adjust to achieve optimal performance.

Figure 3. SQL Server handles available for performance tuning.


We’ve already mentioned CPU, cache/memory, and disk I/O; these and all the other handles listed in Figure 3 work together and must be considered together when doing performance and tuning. A change in a SQL statement affects what the optimizer (which makes decisions regarding how data is accessed in SQL Server) will do to satisfy the query. The correct index allows the query to get data the most effective way. The correct table design drastically affects updates, deletes, inserts, and reads. The number of CPUs available to SQL Server can invoke parallelism. What work is done in tempdb (and where tempdb is located) can improve performance by 1000%. The index and table level fill factor (free space), number of page splits, and page allocations being done within your databases can hurt you by 1000%. Hints to the optimizer can change the way execution is handled. And other issues such as materialized views, partitions, and file placement (at the disk subsystem level) directly contribute to the overall performance of every SQL execution. Even something as simple as locking (or deadlocks) and the consistent order of update operations within transactions can make or break an entire SQL Server implementation.

We explain a bit more of what to look for with the primary handles in the guideline section later. For most development or production support teams, tackling performance and tuning for SQL Server can truly be overwhelming. The next section describes an orderly performance and tuning methodology that most should be able to follow and use to yield great results.

Other -----------------
- System Center Configuration Manager 2007 : Making the Status Message System Work for You
- System Center Configuration Manager 2007 : Database Maintenance
- Connecting Dynamics GP to Microsoft Office 2010 : Improving reports by sending SmartLists to Word
- Connecting Dynamics GP to Microsoft Office 2010 : Building analyses by Exporting SmartLists to Microsoft Excel, Delivering flexibility by exporting Navigation Lists to Excel
- Oracle SOA Suite 11g R1 : Securing the credit card validation service
- Oracle SOA Suite 11g R1 : Introducing security policy management
- InfoPath with Microsoft Content Management Server Web Services : Cleaning up the Generated Form
- InfoPath with Microsoft Content Management Server Web Services : Creating the Controls in InfoPath
- Installing Exchange Server 2010 : Post-setup configuration (part 2) - Add a certificate to the Client Access Server role
- Installing Exchange Server 2010 : Post-setup configuration (part 1) - Configure a Send Connector to the Internet
 
 
Top 10
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 2) - Wireframes,Legends
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Finding containers and lists in Visio (part 1) - Swimlanes
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Formatting and sizing lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Adding shapes to lists
- Microsoft Visio 2013 : Adding Structure to Your Diagrams - Sizing containers
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 3) - The Other Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 2) - The Data Properties of a Control
- Microsoft Access 2010 : Control Properties and Why to Use Them (part 1) - The Format Properties of a Control
- Microsoft Access 2010 : Form Properties and Why Should You Use Them - Working with the Properties Window
- Microsoft Visio 2013 : Using the Organization Chart Wizard with new data
 
programming4us
Windows Vista
programming4us
Windows 7
programming4us
Windows Azure
programming4us
Windows Server