sql >> Database teknologi >  >> RDS >> Mysql

MySQL på Azure Performance Benchmark – ScaleGrid vs. Azure Database

Microsoft Azure er en af ​​de mest populære cloud-udbydere i verden og en naturlig pasform til databasehosting på applikationer, der udnytter Microsoft på tværs af deres infrastruktur. MySQL er den største open source-database, der normalt hostes gennem Azure-instanser. Mens Microsoft tilbyder deres eget Azure Database-produkt, er der andre tilgængelige alternativer, som muligvis kan hjælpe dig med at forbedre din MySQL-ydeevne. I dette blogindlæg sammenligner vi Azure Database for MySQL vs. ScaleGrid MySQL på Azure, så du kan se, hvilken udbyder der tilbyder den bedste gennemløbs- og latencyydelse. Vi måler latens i ms 95. percentil latency.

Et overblik – TLDR

Læse-intensive arbejdsbelastninger

Under læseintensive arbejdsbelastninger formår ScaleGrid at opnå op til 3 gange højere gennemløb og har i gennemsnit 66 % bedre latenstid sammenlignet med Azure Database. Læs nu

Balancerede arbejdsbelastninger

Med et gennemsnit på 150 % bedre gennemstrømning og mindre end en tredjedel af latensen overgår ScaleGrid Azure Database for Balanced Workloads. Læs nu

Skriveintensive arbejdsbelastninger

Scalegrid opnår op til 4 gange højere gennemløb og i gennemsnit 64 % lavere latenstid på tværs af alle antallet af tråde sammenlignet med Azure Database til MySQL. Læs nu

Er du lige kommet i gang? Tjek den bedste måde at hoste MySQL på Azure Cloud-indlægget for at lære mere om optimering af din cloud-databaseimplementering.

MySQL Azure Performance Benchmark

I denne benchmark-rapport sammenligner vi MySQL-hosting på Azure på ScaleGrid vs. Azure Database til MySQL på tværs af disse tre arbejdsbelastningsscenarier:

  • Læse-intensiv arbejdsbyrde:80 % læser og 20 % skriver
  • Balanceret arbejdsbyrde:50 % læser og 50 % skriver
  • Skrive-intensiv arbejdsbyrde:20 % læser og 80 % skriver

Vi måler MySQL-gennemløbet og latensydelsen og måler gennemløbet i form af forespørgsler per sekund (QPS) og latens i form af 95. percentil (ms). Se vores Benchmark-konfigurationssektion under ydeevnerapporten for at se, hvordan disse tests blev konfigureret.

MySQL læseintensiv ydeevne

MySQL læseintensive arbejdsbelastninger er arbejdsbelastninger, der typisk er domineret af læseoperationer, såsom SELECT. Så en læseintensiv arbejdsbyrde ville være en, der søger i databasen oftere i forhold til at skrive til den. Percona har et godt indlæg om læse- og skriveintensive arbejdsbelastninger, hvor du kan lære mere.

Lad os tage et kig på gennemløbs- og latensydelsen af ​​ScaleGrid MySQL vs. Azure Database for MySQL:

Throughput

Tråde ScaleGrid Azure ScaleGrid Improvement
25 5.299 1.689 214 %
50 6.092 2.302 165 %
100 8.429 2.877 193 %
150 9.011 2.870 214 %
175 7.025 2.805 151 %
Som vi kan se fra ovenstående graf og præstationstabel, opnår ScaleGrid MySQL op til 3x højere gennemløb b> sammenlignet med Azure Database for læseintensive arbejdsbelastninger. Mens Azure Database for MySQL-gennemløbet er under 3.000 forespørgsler pr. sekund på tværs af alle trådscenarier, har ScaleGrid over 5.000-9.000 forespørgsler pr. sekund på tværs af tråde.

Latens

Tråde ScaleGrid Azure ScaleGrid Improvement
25 258 451 -43 %
50 101 670 -85 %
100 148 978 -85 %
150 309 1562 -80 %
175 1.089 1.678 -35 %
Mens Azure Database for MySQL-latens hurtigt stiger, efterhånden som antallet af tråde vokser, opnår ScaleGrid MySQL støt lav latens på tværs af alle trådtællinger . I gennemsnit har ScaleGrid til MySQL 66 % lavere latenstid end Azure Database for MySQL til scenarier med læseintensiv arbejdsbelastning.

Reducer din #MySQL-forsinkelse med 66 % på Azure med op til 3 gange højere gennemløbsydelseKlik for at tweete

MySQL Balanced Workload Performance

Balancerede arbejdsbelastninger udnytter nogenlunde lige store mængder af læse- og skriveoperationer.

Throughput

Tråde ScaleGrid Azure ScaleGrid Improvement
25 3.806 1.748 118 %
50 5.834 2.437 139 %
100 6.365 2.712 135 %
150 5.724 2.775 106 %
175 6.206 1.767 251 %
I gennemsnit forbedrede ScaleGrid MySQL-gennemstrømningen med 150 % i forhold til Azure Database til MySQL for afbalancerede arbejdsbelastninger og er over 2 gange bedre på tværs af alle antal tråde. Azure Database nåede maksimalt ud på omkring 2.775 forespørgsler pr. sekund ved 150 tråde, mens ScaleGrid opnåede 5.724 forespørgsler pr. sekund for det samme antal tråde.

Latens

Tråde ScaleGrid Azure ScaleGrid Improvement
25 76 390 -81 %
50 103 612 -83 %
100 240 943 -75 %
150 560 1.590 -65 %
175 560 2.199 -75 %
Vi ser endnu en dramatisk forbedring af latency-ydelsen for afbalancerede arbejdsbelastninger, hvor ScaleGrid MySQL-implementeringer er i stand til at yde mindre end en tredjedel af latensen sammenlignet med Azure Database til MySQL.

MySQL skriveintensiv ydeevne

Mens læseoperationer søger fra databasen, er skriveoperationer dem, der gemmer til eller ændrer databasen, såsom INSERT, UPDATE eller DELETE-forespørgsler. Skrivetunge arbejdsbelastninger er typisk dyrere end læseintensive arbejdsbelastninger, da operationerne bruger flere ressourcer. Lad os sammenligne ScaleGrid vs. Azure Database-gennemstrømnings- og latensydelse på tværs af MySQL skriveintensive arbejdsbelastninger.

Throughput

Tråde ScaleGrid Azure ScaleGrid Improvement
25 3.327 826 303 %
50 5.003 1.154 334 %
100 5.180 1.476 251 %
150 4.310 1.651 161 %
175 4.071 1.643 148 %
I vores skrivetunge scenarie er vi i stand til at se den største ydeevneforbedring, hvor ScaleGrid opnår op til 4x højere gennemløb sammenlignet med Azure Database . Dette er især tydeligt i vores scenarier med lav tråd, men selv ved 175 tråde klarer ScaleGrid stadig 2,5 gange bedre end Azure Database.

Latens

Tråde ScaleGrid Azure ScaleGrid Improvement
25 76 277 -73 %
50 101 383 -74 %
100 298 996 -70 %
150 760 1.740 -56 %
175 1.089 2.009 -46 %
ScaleGrid overgik Azure Database igen med et gennemsnit på 64 % lavere latenstid på tværs af alle antallet af tråde til skrivetunge arbejdsbelastninger.

Som vi kan se fra ovenstående rapporter, hjælper ScaleGrid dig med at øge din gennemstrømning betydeligt og reducere din latenstid i forhold til Azure Database-implementeringer til MySQL på tværs af læseintensive, skriveintensive og balancerede arbejdsbelastninger scenarier. For at lære mere om, hvordan disse to udbydere sammenligner på tværs af funktioner, kan du se siden ScaleGrid vs. Azure Database MySQL.

Benchmark-konfigurationer

Lad os tage et kig på de konfigurationer, vi brugte i ydeevnebenchmark:

Konfigurationssammenligning

Vi designede konfigurationen ved at bruge de mest sammenlignelige planer, der tilbydes mellem ScaleGrid og Azure Database. Der er kun mindre forskelle, og omkostningerne er de samme for de to udbydere:

ScaleGrid MySQL på Azure Azure Database for MySQL
Forekomsttype Dedikeret Large:Standard_Ds2_v2 2 kerner Generelt formål:2 kerner
RAM 7 GB 10 GB (5 GB hukommelse pr. vCore)
SSD 128 GB, Premium SSD-disk, 500 IOPS 167 GB, op til 500 IOPS
Implementeringstype 2+1 kvorum med semisynkron replikering +1 Læs replika asynkron replikering
Region Østlige USA Østlige USA
Support Inkluderet Standardplan ($100)
Anslået månedlig pris 400 $ 400 $

Sysbench-konfiguration

Konfiguration Detaljer
Værktøj Sysbench version 1.0.20
Vært Standard_Ds2_v2
2 kerner (2 vcpu'er, 7 GB hukommelse) i region øst i USA
# tabeller 100
# rækker pr. tabel 2.000.000
fordeling af tilfældige tal Special

MySQL-serverkonfiguration

Konfiguration Azure Scalegrid (dedikeret) Azure DB til MySQL
SQL-version 5.7.25 5.7.27
innodb_buffer_pool_size 4G 7.5G
innodb_log_file_size 1G 268M
innodb_io_capacity 500 500
innodb_io_capacity_max 1000 1000

Bemærk, at du hos ScaleGrid har avancerede muligheder for at tilpasse dine MySQL-konfigurationer. Dette giver dig mulighed for at tilpasse din implementering til dine applikationsbehov og optimere til ydeevne. Desværre tillader Azure Database ikke tilpasning af nogle af parametrene, så du sidder fast med standardkonfigurationerne, der er tilgængelige via deres platform.

For eksempel var vi i stand til at tilpasse InnoDB-logfilstørrelsen til 1 GB, hvorimod denne for Azure Database ikke kan ændres og har en standardværdi på 268M. Lær mere om begrænsningerne i Azure Database til MySQL.

Der er mange andre fordele ved at bruge Scalegrid MySQL til Azure. Se hele sammenligningen på vores ScaleGrid vs. Azure Database – MySQL Hosting-side.


  1. Lagring af krypterede data i Postgres

  2. Sådan opretter du en MySQL-database i cPanel

  3. Kan ikke oprette en forekomst af OLE DB-udbyder Microsoft.Jet.OLEDB.4.0 for linket server null

  4. Sådan opretter du en parameterforespørgsel i Access