The following test cases have been tested using the preceding methodology:
The objective of this test is to check the scale-out performance of SQL Server pods across the Kubernetes cluster. Three pods containing 16 CPUs per pod configuration are deployed on each node scaling to 24 pods across eight worker nodes. 24 HammerDB instances generate the OLTP load simultaneously by running a HammerDB tool. 1:1 mapping is considered between the HammerDB instances and SQL pods to simulate the client/server scenario.
The following figure shows 24 pods (16CPUs/pod) TPM performance on an eight-node Kubernetes cluster:
Figure 16. Scale out TPM numbers
The preceding test results show that approximately eight million TPM is achieved with only 1.08 millisecond read and 2.47 millisecond write database latency.
This test focuses on scaling up SQL Server pods with a 32-CPU per pod configuration. Two pods are deployed on each node scaling to 16 pods across eight worker nodes. There are 16 HammerDB instances that generate the OLTP workload simultaneously. SQL Server pods and HammerDB instances are mapped in a 1:1 ratio depicting a client/server scenario.
The following figure shows 16 pods (32 CPUs/pod) TPM performance on an eight node Kubernetes Cluster:
Figure 17. Scale up TPM numbers
The preceding test results show that the maximum TPM achieved is eight million TPM under 1 millisecond read and 2 milliseconds write database latency.
Note: The test results shown in this solution architecture are achieved without enabling the Forced Unit Access (FUA) feature.