A few devops conferences still go ahead, fully remotely, and it was a pleasure yesterday to be part of DevOps Pro Europe. Here are the slides of my talk “Serverless Databases: The Good, the Bad, and the Ugly”.
How to run MySQL on AWS – the recording of my short talk for Codemotion “Devs Lunch Box” is now available on the Codemotion platform. In about 10 minutes, I covered the main ways to deploy a MySQL (or a PostgreSQL) database on the largest cloud provider.
Still thinking that this was my last AWS exam, but very happy to have passed the AWS Certified Database – Specialty Beta Exam in January and be one of the first ones to hold the new certification.
Very happy that my post “What is an Availability Zone destruction? Should I care?” made it into the “Last Week in AWS” newsletter last week!
There are six different S3 storage classes on S3 and they differ in costs for storage, transition requests and retrieval requests. This is to cover all use cases or to make your AWS bill hard to forecast. Or both.
The old S3 Reduced Redundancy Storage is the past, and all the current classes share the same 11 9’s. They have different availabilities and SLAs but, they all have 6+ copies of the data stored on AWS servers.
Standard-IA or One Zone-IA?
But wait, how can Standard-IA and One Zone-IA share the same durability if the latter keeps all the copy of the same number of copies but only in a single AZ?
The devil is in the details: do you see that little asterisk in the table? The apparently insignificant note states:
Because S3 One Zone-IA stores data in a single AWS Availability Zone, data stored in this storage class will be lost in the event of Availability Zone destruction.
So even if the number of copies is the same and you can still boast your amazing 11 9’s to your customers, the resilience of the One Zone-IA option is not the same. Even Amazon suggests it for backups or easily re-creatable data only.
Unlike other S3 Storage Classes which store data in a minimum of three Availability Zones (AZs), S3 One Zone-IA stores data in a single AZ and costs 20% less than S3 Standard-IA. S3 One Zone-IA is ideal for customers who want a lower-cost option for infrequently accessed data but do not require the availability and resilience of S3 Standard or S3 Standard-IA. It’s a good choice for storing secondary backup copies of on-premises data or easily re-creatable data.
With that little asterisk, Amazon lets you figure it out yourself the risk and the cost of it. As it might vary across regions and zones too, they give you 11 9’s with a caveat. You pay 20% less but you are now in charge of risk management.
What is an Availability Zone destruction? How likely is that?
It might sound a silly question but if you have to assess yourself the likelihood, you need to know what they are talking about. There is no further asterisk or note, so you have to dig deeper and ask support to have the definition.
(…) If you would like I can open a request to have the definition ‘Availability Zone destruction’ added
OK, there is nothing specific in the S3 documentation but they still state that
Availability Zone destruction would include any event that causes multiple data centers to become unavailable including but not limited to fires, earthquakes, a flood, etc. A destructive availability zone event can be summarized as any event that would impact multiple data centers or a sizeable portion of the region the resources are located in.
Should I take the risk?
For business critical services it is always advisable to architect your solution to be highly available and fault tolerant to an AZ outage. But this is just risk management.
If you heavily rely on Standard-IA and think the chance of your “next unicorn” crashing are higher than an Availability Zone destruction, you might gamble on lower costs and higher margins. But bet a few dollars on an AZ destruction too. In both cases you would have a profitable exit (*)
(*) Talking about asterisks, if you try that or find out a bookmaker that takes the bet please let me know.
I am very happy to be back on stage at DevOps Pro Europe 2020 in Lithuania next March. Topic of the talk? “Serverless databases: the good, the bad, and the ugly” See you in Vilnius!