200个使用200个SQL Express数据库或1个SQL标准的站点?

假设您有Amazon EC2服务器。 什么应该使用较less的资源:

200个网站….

  1. 每个使用单独的SQL Express数据库 (总共200个,每个站点1个)
  2. 使用1个SQL标准数据库的所有站点?

这个问题只是关注这两个因素。 没有其他的应用。

谢谢你的帮助

  • 每个数据库不会超过1 GB

这200个网站是由您为其他个人派对吗? 你能给我们一些关于你在做什么的细节吗? 起初,我不太在意这方面的资源,更多的是关心问题和pipe理开销的分离。

有一点需要考虑的是,SQL Express数据库的数据大小上限为10GB,因此可能是您的决定性因素。 如果你的单一数据库增长超出你几乎饱和。

更多关于SQL Server版本的细节在这里

编辑:
有了200个可能的1GB数据库,你最好使用Standard,但是我也会考虑在那里使用单独的数据库。 Express有1GB的内存限制,而标准只受到主机操作系统的限制,这会给你更多的内存selectSQL。 至于哪一个使用较less的内存,很难说不知道你的数据结构。 在这个单一的数据库中,每个表格有200个副本,或者将所有200个数据的数据保存在一个副本的表格中? 你会看看那些可能影响内存消耗的索引大小的差异。 SQL将尝试尽可能多地将数据库加载到内存中,并通过configuration来允许它们。

JohnThePro还对Express中不支持的标准中提供的其他function做了很好的说明。

如果可以,请使用标准版。 不仅DB上有大小限制,还有其他一些因素,比如事务快照。

Express对于testing和开发是非常好的,但是现在你还活着,我推荐标准版。

看看这里更全面的function比较。

我相信一个数据库可以比200个数据库更有效地使用内存。 像查询计划这样的事情是每个数据库 – 所以如果每个网站都会使用完全相同的查询访问自己的数据库,那么最终将不得不为每个数据库至less构build一次该计划。 计划caching可能也是有限的,所以多个数据库塞纳里奥会减less有用的空间。 对于一个具有信息所有站点的表的数据库,查询计划只会生成一次,还有更多可以放入caching。

如果你知道所有站点的数据库不会超过4GB(或者愿意在那个时候更新),那么你可以用一个数据库做一个Sql express实例。

SQL Express团队发布了有关多租户托pipe的以下指南,请参阅SQL Server Express和主机 :

  • 共享主机:SQL Server Express Edition不build议用于共享(多租户)主机,因为规模限制和内存处理不能满足此类环境的要求。 SQL Server标准版或企业版是共享主机的最佳select。

  • 专用主机:所有版本的SQL Server(包括速成版)都推荐用于专用(单租户)托pipe环境。 SQL Server Express Edition是用低成本Windows Server产品提供免费SQL Server副本的好方法

您的scheme将落入共享托pipe的情况下,因此不推荐使用Express。

你是否正在谈论运行200个SQL Express实例,每个实例有1个数据库,1个SQL Server Standard实例和200个数据库?

SQL Server Express在其核心上使用与产品的更高版本相同的引擎。 您可以使用SQL Server Express运行200个数据库。 那么,如果由于Express技术限制而遇到性能瓶颈…升级到Standard。