Tag Archives: sql server database development

Using SQL Server Resource Governor To Optimize SharePoint 2013 Performance

When first introduced, SQL Server did not quite had the number of value added features that it boasts of today. Some of the features that have been added include Query Editor T-SQL debugger, schemes for alternative keyboard shortcuts, Query Editor Snippets, advisor for Database Recovery, GUI for Extended Events, Query Editor IntelliSense, and so on. Resource Governor, which was a new addition to SQL Server 2008 provided internal mechanism for management along with control of resource consumption through processes and connections. To control management of resources, previously we had to resort to Windows System Resource Manager but Resource Governor has made the job easier.

sql server developersResource pools, classifications along with workload groups comprise of the Governor. The server’s physical resources are collected by the pools and then they can be used for workload group assignment. Groups of connections that are classification based are known as workload groups and they belong to a single pool which is limited by the intake of physical resources that it can perform. This results in exertion of a holistic control over the impact level of user connection on server.

With the enhancements made to Resource Governor you will be able to govern performance effectively, especially in case of machines that have many CPU cores. The following are the enhancements that have been made:

  • A new option called CAP_CPU_PERCENT for pools that will allow means for setting limits on usage of CPU resources, providing greater predictability.
  • Another option called AFFINITY meant for resource pools that will allow mechanism for affinitization of resources to NUMA nodes as well as schedulers, providing better isolation of resources of CPU.
  • Support for almost 64 resource pools which is far more than the 20 which was previously supported so that larger machines can be better partitioned between increasing workloads.

The Governor can be implemented very easily. First, enable it by right clicking and selecting ‘enable’. This will create two default resource pools along with two default groups of workload. The workload groups are assigned to the resource pools; so configure them properly and the feature of the Governor will start functioning.

The performance of SharePoint 2013 can be optimized or improved by using Resource Governor. Search Database can be optimized in a number of ways. Amongst them, the one with the use of Resource Givernor is the best. When search crawling takes place, apart from the crawled web servers which are hammered, a lot of resources of SQL Server are used. If there is only a single SQL Server, it will affect your databases and you surely do not want your users to get annoyed if they have to bear with slow SharePoint farm during their work. Using the feature will ensure limited RAM or CPU usage of Search databases during average working hours.

The feature can also be configured so that search databases’ resource usage may be limited during working hours, but not during non-working hours. Executing the code in SQL Server Management Studio will give the desired results. Resource Pools need to be created for this, one for off-work hours and another for under-work hours. Next two Workloads Groups must be created and then associated with the Pool that corresponds with it. Next, Classifier function has to be created so that the feature chooses the correct Workload Group. The function may be adjusted according to your needs as well as requirements. Verify the set up.

For the best results the entire configuration of the Pool along with Classifier logic should be tested as well as verified so that they work optimally within the environment. One thing to remember while working with the Governor is that it can work only with Database Engine; support is not provided for processes like Reporting Services, Integration Services or Analysis Services.

You can hire developers from top database development company in India who can help you build your projects within allocated budget and time schedules.

We provide SQL server application development services. If you would like to know more about the expertise of our SQL server developers, please get in touch with us at Mindfire Solutions.

Advertisements