• The AWS MySQL RDS instances should be contained in a VPC. This provides some network security which you will need in place to provide any publicly consumed service.

    I’m not very familiar with Azure but as long as you can connect Azure’s VPC with your AWS VPC over VPN you will have the network connectivity in place but all of that inter-connectivity will drastically increase your costs. This will defeat most advantages you gain from best-in-class pricing options by placing some of your resources in Azure.

    Even without a VPN connecting your two VPCs the data transfer between Azure and AWS will add costs at both ends. This is not just performance but a pricing issue.

    Now let’s talk about high availability. Within AWS you can leverage a replicated read-only database for your read operations and it will exist in another availability zone (different data center).

    Using both platforms isn’t a bad idea for high availability but you are building dependence on Azure back to AWS and that is a bad idea. What happens when either platform has an outage? Essentially you’ve more than doubled (because of the inter-connectivity issues) your chance for failures which will happen.

    Now lastly let’s find that cloud-tech guy who runs this. I’m an AWS guy. I can learn Azure pretty quickly but I keep up with AWS and it would be a huge challenge to keep up with Azure and AWS at the level of familiarity and competence I can maintain with just AWS. You might be able to take this on by yourself but it will surely complicate the solution you deliver as BOTH systems are inter-connected.

    So you’ve added latency, increased risk, increased costs, harder to support and complicated your management of your cloud solution.

    If you were going MySQL on AWS and MS-SQL on Azure and building two front ends with two back ends that provided high availability that would be a benefit. You have added no benefits and only additional costs. There is no additional value added so it’s a terrible idea.