No ano passado, aumentamos ativamente o desempenho de bancos de dados grandes e pesados ​​em nossa nuvem. Ă€ primeira vista, parecia que tĂnhamos apenas 2 opções: sistemas de armazenamento baratos com discos lentos ou sistemas de armazenamento muito caros com discos rápidos.
QuerĂamos agilizar o trabalho de bancos de dados Microsoft SQL altamente carregados e, ao mesmo tempo, oferecer aos nossos clientes um custo de serviço favorável. Como resultado dos testes, montamos a solução " Cluster para bancos de dados Microsoft SQL carregados na nuvem ". Hoje vamos dar uma olhada no interior e adicionar um pouco mais de introdução tĂ©cnica e nĂşmeros especĂficos.
A postagem não pretende ser um mergulho profundo e não revela todas as nuances técnicas, mas apenas demonstra os resultados de nossos testes. Vou mostrar a você em que hardware, software e configuração de rede executamos os testes de desempenho do banco de dados, como os testamos e quais resultados obtivemos.
:
. :
- 1U. - - 2U, "" . 1U : .
10 U.2. NVM. , .
Intel Optane DC Persistent Memory .
Hardware compatibility list (HCL) Microsoft – .
.
Supermicro 1029U-TN10RT:
, - 1U, 2 Intel Xeon Scalable.
:
- – Ultra 1U SYS-1029U-TN10RT.
- CPU – 2 x Intel Xeon Gold 6246 (3.3GHz, 12C).
- Storage – 10 x Intel DC P4510 1TB NVMe SSD, 1DWPD.
- DRAM – 12 x 64GB DDR4-2666.
- Persistent Memory – 2 x 128GB DDR4-2666 Intel Optane DC PMMs.
- Network – 2 x 25GbE Mellanox ConnectX-4 Lx.
2,5 NVMe: 10 U.2.
. Windows Server 2019 Storage Spaces Direct. RAID – .
. . 3-way Mirroring, 3 .
. . . RDMA – . Mellanox ConnectX-4 Lx c RoCEv2 (RDMA over Converged Ethernet).
:
. "" . 150 c "" 40 GB, 50 . – 4:1, CPU – 60%. – 3, 3 TB .
.
CPU Oversubscription 4:1 |
|||
Pattern: t1, o32, b16k |
|||
Metrics |
100% Random Read |
90% Random Read/ 10% Random Write |
70% Random Read/ 30% Random Write |
IOPS per Volume |
475000 |
275000 |
169000 |
Latency per Volume |
0,2 ms |
0,2 ms / 0,4 ms |
0,2 ms / 0,4 ms |
BW (MB/s) per Volume |
7750 |
4500 |
2750 |
IOPS per VM |
9500 |
5500 |
3380 |
BW (MB/s) per VM |
155 |
90 |
55 |
IOPS per GB |
237 |
137 |
84 |
Pattern: t1, o32, b4k |
|||
Metrics |
100% Random Read |
90% Random Read/ 10% Random Write |
70% Random Read/ 30% Random Write |
IOPS per Volume |
509000 |
282000 |
190000 |
Latency per Volume |
0,12 ms |
0,12 ms / 0,33 ms |
0,13 ms / 0,36 ms |
BW (MB/s) per Volume |
2000 |
1150 |
780 |
IOPS per VM |
10180 |
5640 |
3800 |
BW (MB/s) per VM |
40 |
23 |
15 |
IOPS per GB |
254 |
112 |
76 |
Pattern: t1, o32, b2m |
||
Metrics |
100% Sequential Read |
|
BW (MB/s) per Volume |
19000 |
|
BW (MB/s) per VM |
380 |
|
. , , . 2:1 ( 25 ), CPU . : 100% 4 4 16 . .
FIO , .
DBaaS Microsoft SQL . 4 200 000 IOPS 1 100% 4k.
Windows Server 2019 Storage Spaces Direct. !