To validate the performance of the SQL Server 2019 on a containerized environment, an OLTP workload is simulated by using the HammerDB tool. OLTP workload typically runs a specific set of queries (read and write) against the database. These set of queries are called database transactions and is measured in TPM (Transaction per minute).
For this reference architecture, a sample database is populated with 100 GB of data on each SQL Server pod and multiple virtual user tests are run for a fixed interval of time against each pod to get optimal TPM numbers. The lab setup is configured as described in the section of this document. The following figure shows the test methodology:
The HammerDB tool is installed on dedicated VMs. These VMs are hosted on separate ESXi servers so that the CPU resources are not consumed from the worker nodes. A real-life scenario is stimulated where the clients are not running on the same nodes as the actual database. Therefore, the load is generated in a client/server model as shown in Figure 5, and the resources of the worker node are dedicated to the SQL Server pods only.
Note: In this reference architecture, we are testing with dedicated VMs running on VMware vSphere. Alternatively, the OCP worker nodes can be deployed on another virtualization platform or bare metal servers.
Each VM is running two HammerDB test tools (instances), each configured to a stand-alone SQL Server pod. Therefore, each VM is pointing to 2 SQL Server pods that are hosted on a dedicated worker node. A dedicated 25G connection is used between the ESXi host and the worker nodes for the client network. Multiple runs were performed by simulating the number of virtual users against the sample database that is populated on all the pods.