我们目前正在制作一个包含每个租户逻辑数据库的Web应用程序。我们当前的数据库设置全部托管在一个具有一个实例免费SQL Express版本的VM上。
所有数据库都是在服务器端动态创建的,并且每次经理注册时都会添加到同一个实例中。
但是,我预计在不久的将来我们可能遇到高可扩展性的问题,考虑到新SQL版本的成本,与多个数据库的一个实例相关的性能问题,未来的开发和管理。
我正在考虑从Azure开启弹性池结构,因为我们现在没有很多客户端,但我真的不知道它是否有利于价格和可扩展性一开始。
为了拥有超过100个客户端,用弹性池改变我的结构是否有益?
谢谢!
答案 0 :(得分:2)
弹性池非常适合具有特定使用模式的大量数据库。对于给定的数据库,此模式的特点是平均利用率低,利用率峰值相对较少。
您可以添加到池中的数据库越多,您的节省就越多。
但是,重要的是评估您的特定数据库集合是否可以从池中受益。您需要检查数据库的利用率模式,并注意峰值DTU和理想时间。
池的价格是池eDTU的函数。虽然池的eDTU单价比单个数据库的DTU单价高1.5倍,但池eDTU可以由许多数据库共享,并且需要的eDTU总数更少。
如果单个数据库的性能级别的DTU总和超过池所需的eDT的1.5倍,则弹性池更具成本效益。有关可用尺寸,请参阅eDTU and storage limits for elastic pools and elastic databases。
要确定最大并发峰值数据库数量,我建议您仔细阅读 - Maximum number of concurrently peaking databases