如何缩放SQL Server 2008(或2012)?从根本上讲,我知道有两种选择:
放大:
如果受CPU限制,我可以清楚地看到从1个CPU内核变为2到4个内核。或者,如果RAM使用量猛增,只需增加更多RAM。假设没有应用程序级别更改,SQL Server 2008/2012是否真的采用了这种方法并按比例扩大规模?为了最大程度地减少猜测,假设我没有做一些愚蠢的事情,例如燃烧CPU周期,进行交叉联接等。
向外扩展:
目前还不清楚横向扩展如何工作。我的意思是,如果我在第一个SQL服务器旁边添加了另一个SQL服务器,该查询如何知道要在哪个服务器上运行?前面是否有一些负载均衡器(SQL Server软件随附它吗?)?是否需要更改应用程序级别才能向外扩展正常工作?还是我必须对数据进行分片,并具有根据数据分片键调用正确的数据库服务器的自定义代码?
希望能有更多有经验的人提供意见。