De juiste Azure SQL DB Pricing Tier voor méér Logging I/O throughput

Wist je dat Logging I/O vaak de nummer één bottleneck is bij het laden van data? Helaas staat de Azure SQL Database altijd op ‘Full’ recovery model (i.t.t. ‘Simple’ recovery model, wat nog wel kon on-premise).

Gebruik je een Azure SQL Database en sta je op het punt om véél data te laden middels BULK INSERT (of SSIS Fast Load)? Dit gaat enorm helpen!

 
Vanaf ‘BC_Gen4_8‘ kun je genieten van 48 MB/s ‘Log rate limits’:
Meer info: https://docs.microsoft.com/en-us/azure/sql-database/sql-database-vcore-resource-limits-single-databases

 
Brent Ozar heeft hier onderzoek naar gedaan:
https://www.brentozar.com/archive/2019/02/how-fast-can-a-21468-mo-azure-sql-db-load-data/

Dus…snel even opschalen (BusinessCritical), data laden en weer netjes afschalen (Standard).

 
Opschalen:
(uitvoeren op [master])

BEGIN TRANSACTION
ALTER DATABASE [STAGING] MODIFY (Edition=’BusinessCritical‘, service_objective=’BC_Gen4_8‘)

WAITFOR DELAY ’00:00:03’

WHILE
(
SELECT TOP(1) slo.service_objective JobOutcomeSTG
FROM sys.databases d
JOIN sys.database_service_objectives slo ON d.database_id = slo.database_id AND d.name = ‘STAGING
) <> ‘BC_Gen4_8
BEGIN
WAITFOR DELAY ’00:00:03’
END

COMMIT TRANSACTION

 
Afschalen:
(uitvoeren op [master])

BEGIN TRANSACTION
ALTER DATABASE [STAGING] MODIFY (Edition=’standard‘, service_objective=’S0‘)

WAITFOR DELAY ’00:00:03’

WHILE
(
SELECT TOP(1) slo.service_objective JobOutcomeSTG
FROM sys.databases d
JOIN sys.database_service_objectives slo ON d.database_id = slo.database_id AND d.name = ‘STAGING
) <> ‘S0
BEGIN
WAITFOR DELAY ’00:00:03’
END

COMMIT TRANSACTION

 

Een belangrijke bevinding is dat de performance van ‘BC_Gen4_8‘ vergelijkbaar blijkt te zijn als ‘P1‘.
Heb samen met een collega een test uitgevoerd met het inladen van ca. 5,5 GB (5 bestanden) naar Staging en het scheelde slechts enkele seconden tussen beide Pricing Tiers.

Wat wel een flink verschil is, zijn de kosten voor ieder:
– P1 op € 392,15 per maand (250GB)
– BC_Gen4_8 op € 3.640,55 per maand (250GB)
(Factor x 9,3)

Kortom, ‘P1’ is meer dan voldoende.
 

 

Nieuwsgierig naar de mogelijkheden van Azure en DevOps binnen uw organisatie?
Neem dan contact met ons op: clint.huijbers@monkeyconsultancy.nl