Google云SQL高可用性真的提高了可靠性吗?

Is Google Cloud SQL high availability really improving reliability?

我想创建一个 Google 云 SQL 实例,但我不确定是否选择高可用性。

据我了解,故障转移切换可能需要几分钟时间,不会立即完成,成本大约是常规实例成本的 2 倍。

只有在区域中断的情况下才会触发故障转移,而不会在数据库出现问题时触发。由于每月的正常运行时间至少为 99.95,因此每月最大中断可能性为 21 分钟。故障转移最多可能需要 5 分钟,我们可以假设 21 分钟的停机时间不是发生在单个事件上,因此是否真的需要订阅高可用性?

全区中断可能非常罕见,因此如果您不关心它,可能确实不需要 HA 实例。

HA 的一个优点是故障转移比重新启动更快。我们遇到过主实例获得 "stuck" 并且重新启动最多需要 30 分钟 (GCP ticket) 的情况。在这种情况下,故障转移到 HA 实例会更快。

(在 October 2019 之前,HA 故障转移实例也可以用于读取查询,从而避免需要额外的只读副本。随着从基于二进制日志的复制到基于磁盘的复制的变化,这是现在不是这样了。)

HA 故障转移不仅适用于整个区域中断。只要主实例停止响应超过一分钟,它就会启动。

事实上,它比重启更快,比重启更可靠,而且是自动的,这意味着当 mysql 崩溃时,它可以使您的停机时间大大缩短。

另外,申请SLA不需要HA吗,没有HA就不是多区域的,因此不能满足“Downtime”的定义

"Downtime" means (ii) with respect to Cloud SQL Second Generation for MySQL, Cloud SQL for SQL Server, and Cloud SQL for PostgreSQL: all connection requests to a Multi-zone Instance fail. https://cloud.google.com/sql/sla