When it comes to technology, every organization out there is looking to improve performance, regardless of what type of tier it might be. Consumers today expect results as quickly as possible and without any interruptions of service. Relational database platforms such as Microsoft SQL Server are not any different.
When using SQL Server, there are many hardware and workload factors that affect how the database engine performs. The storage infrastructure is a critical factor that can make or break your SQL Server instance. While being CPU constrained with an over-sized workload can drown your server in a sea of data requests, limiting throughput, memory is the most critical element of database performance. SQL Server works with data entirely within its process memory space. When a query is executed, if the data to provide the query’s results, which are contained in a data page are not in the buffer pool (memory), SQL Server will retrieve the data from storage. It then places it into the memory buffer and reads or modifies the data page as requested. With enough RAM, your database could entirely reside in memory which would provide the best performance outcome possible and minimizing the amount of physical I/O required. Unfortunately, most SQL databases are much larger than the amount of RAM on the systems.
Condusiv’s V-locity product can really help to boost the performance of SQL Server. V-locity is an I/O reduction software that resides between the database engine and available memory for the Windows operating system. V-locity has two methods to help improve performance. The first being a write optimization engine that helps eliminate inefficient write operations between the operating system and the storage. Secondly, V-locity provides an extremely intelligent, patented data caching layer with free server memory in the dynamic read-access (DRAM) space. Utilizing both of these methods together will result in increased performance of your SQL Servers.
Install and Usability
Installing and configuring V-locity is quick and painless. Featuring a reboot-less install/update offering, the install allows you to get the software up and running at any point in time without having to wait for a scheduled maintenance window. This means that you can take advantage of the results as quickly as possible.
With a simple to use web-based dashboard, managing V-locity is not complicated nor time-consuming. As seen in the screenshot below, it only has two tabs to configure and manage the entire installation.
Testing of V-locity was done on a Windows 2016 Standard virtual machine with 16GB of RAM, 2 logical cores, and SQL Server 2017 Developer Edition (Build 14.0.3037). Utilizing both IOMeter and HammerDB, several rounds of testing were performed. IOMeter allowed us to include testing of various block sizes and random vs sequential writes & reads.
The results of IOMeter are shown below, with the ratio of reads vs writes and random vs sequential displayed. The block size of the test is also shown, and you can see the 64k block size had a significant performance increase with V-locity.
If you look closer at the above results, you will notice that with a 64k block size, which most SQL Server installations probably are, showed a 136% improvement.
A further analysis looking at the dashboard, V-locity informs us that it has reduced overall read I/Os by 48% and reduced write I/Os by 4%. While in this case, the write I/Os are significantly less than the reads, a 48% reduction in reads will have a vast performance impact for the better on your applications. Note this dashboard is showing reduction rates since the installation of the product, however, the dashboard can be configured for various time periods to suit your reporting needs.
If you have an environment with a large amount of data and memory to spare, after our in-house testing, Condusiv’s V-locity product looks to be a great solution to help improve the performance of your applications running on MS SQL, without having to buy and add expensive new hardware. Condusiv offers a 30-day trial to install on any virtual server.