Forrards Blog

130 cents total
How to convert to Base64 and backwards via T-SQL

I want to share my way to convert a string to Base64 and back. Let me note that presented method is not the fastest, but it has one important advantage - it works OOB, without CLR functions. We need a test database and a table to use as an example:

Forrards
March 18, 2023
Performance and using of VARCHAR boxes as filters in SSRS reports

Very few people have thought about this performance killer. It is all about report parameter of text type.The initial situationThere was a table with about 45 million rows. Some columns in the table were VARCHAR and should have been filtered. As a result of filtering by 10 different parameters the total number of rows could have been significantly reduced. SQL Server was going for table scan in this case. Also there was a number of indexes defined on the table.

Forrards
March 18, 2023
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Subscribe to our blog

                             

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Buffer Pool Extension in SQL Server 2014 part 4: benchmark testing for update operations

One of my previous articles was devoted to carrying out a range of tests to compare speed of data read operations using BPE. But in real life we need not only read but also update data, that’s why I decided to check whether BPE has influence on performing update operations. Before running new tests we should take into account several crucial features. First of all insert, update and delete operations are logged, which means transaction log will be under load and a lot will depend on the disk subsystem. That’s why I made a pair of test measurements and then put the transaction log on a SSD to minimize its impact on the update operations. Another moment is that before data update SQL Server reads the page from Buffer Pool, then makes changes and marks the page as "dirty». Later the page is written to the disk through performing Checkpoint or Lazy Writer processes, and the first of mentioned processes may also affect the test results indirectly, so I turn it off. Thirdly, I write a query to change the data so that new data will be of the same size as the old data, which allows to prevent pages split. Fourth, Buffer Pool Extension can store only "clean" pages, consequently, update operations will "wash out" the data from it. But I will provide more details on this situation later and now let’s have a look at the configuration of the test bench.

Forrards
March 18, 2023
Migration of a large enterprise from SQL Server 2000 to 2014. Real life case.

This is a first article in a series of articles about real life database and IT infrastructure migration project which has been executed for a large US company which services are heavily dependent on fast and reliable database infrastructure. In this article we`ll give a brief description of the project, goals and actions taken. In further articles we`ll get deeper into details of each step of migration.

Forrards
March 18, 2023

Let's discuss your project or resource request

                       

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.