Google CloudSQL-每个数据库一个实例还是所有数据库一个实例?

时间:2019-04-03 05:56:51

标签: google-cloud-sql

试图找出更好的方法:

  1. 多个实例,每个数据库一个

  2. 单个大型实例,它将在内部容纳多个数据库

该场景类似于Jira Cloud,其中每个客户都有自己的Jira Cloud服务器和自己的数据库。 现在的问题是,最好是在一个大型实例中管理所有用户的数据库,还是为每个客户拥有一个数据库实例? 所选替代方案的利弊是什么? 首先想到的就是备份管理-如果特定客户的数据库与所有其他数据库位于同一大型实例上,我们是否能够恢复该客户数据库?

类似的问题,但在不同的情况和其他要求下-1-big-google-cloud-sql-instance-2-small-google-cloud-sql-instances-or-1-medium

1 个答案:

答案 0 :(得分:1)

此答案基于个人观点。由您决定要如何构建数据库。但是,最好使用多个较小的Cloud SQL实例,如Cloud SQL > Best practices文档中所述。

多个数据库的PROS

  • 管理大型实例比大型实例更容易。 (在上面提供的文档中)
  • 您可以为每个数据库选择区域和区域,因此,如果您的客户位于不同的地理位置,则可以始终为Cloud SQL实例选择最接近他们的区域,这样可以减少延迟。
  • 如果您打算有很多数据库,每个数据库中有很多表,每个表中有很多记录,那么这意味着实例将非常庞大。因此,在数据库开始扩展之后,备份,创建只读副本或故障转移副本并对其进行维护将需要一些时间。

但是,我建议,如果每个用户有多个数据库,请将它们放在一个Cloud SQL实例中,这样就可以每个用户管理一个Cloud SQL实例。例如您有100个用户,而User1有4个数据库,User2有6个数据库,等等。创建100个Cloud SQL实例,而不是每个数据库拥有一个Cloud SQL实例,否则最终会得到很多实例,并且很难管理多个实例每个用户。