Where manual operations stop being viable
Eliminated manual database operations across more than 300,000 Azure SQL databases using Azure Functions, and built the archival, replication and failover automation around them.
Cloud and Platform, 2019-2021, MYOB
At a few hundred databases you can operate manually if you have to. At three hundred thousand you cannot, and every routine operation that still requires a person is both a cost and an outage waiting for the right Tuesday.
Audit data was a related problem. It accumulated indefinitely in expensive transactional storage because there was no automated path to move it anywhere cheaper.
Moved recurring database operations into Azure Functions, using time-based triggers for scheduled work and durable functions where an operation needed to coordinate steps and survive a restart part way through.
Built archival in Azure Data Factory: SQL audit data migrated out to storage tables, and a process that automatically moves records older than three months into blob storage. That took the growth curve off the expensive tier without losing anything.
Around that, the resilience work: Azure SQL deployed with geo-replication, standby sync and tested failover, alerting through Azure Monitor, and Application Insights integrated across cloud services so a problem surfaces as a signal rather than as a support ticket.
Routine operations across the estate run without human involvement, which is the only approach that holds at that database count.
Storage costs came off the growth curve, and audit data retention became an automated policy rather than a periodic clean-up project.
Azure Functions, Azure SQL, Data Factory, Terraform, Application Insights, Geo-Replication