WEB开发网
开发学院数据库MSSQL Server 关于SQL Server 群集的几个关键技巧 阅读

关于SQL Server 群集的几个关键技巧

 2008-09-02 09:58:56 来源:WEB开发网   
核心提示: 负载平衡 让我们首先揭穿这样一个常见误解,MSCS群集是用于获得高可用性的,关于SQL Server 群集的几个关键技巧(5),而非用于实现负载平衡,此外,如果您在这些服务器可用的情况下,只是为了支持群集就必须出去购置新服务器,SQL Server没有任何内置的、自动负载平衡功能,您必须通

负载平衡

让我们首先揭穿这样一个常见误解。MSCS群集是用于获得高可用性的,而非用于实现负载平衡。此外,SQL Server没有任何内置的、自动负载平衡功能。您必须通过应用程序的物理设计来实现负载平衡。这意味着什么?

随着表的逐渐增长,您可能会预料到性能会降低,特别是在涉及到表扫描操作时。当行数达到数百万或数十亿时,传统的解决方案会使用已分区视图,这种视图由若干具有相同结构、使用 union ALL 挂接在一起的表组成。此外,还会在适当位置放置 CHECK 约束来区分这些成员表,而这会阻止跨已分区视图复制数据。如果在 CHECK 约束中使用的列也是主键的一部分,则该视图是可更新的。

如果成员表在其自己的文件组中,则如果这些文件组中的文件分别位于不同的物理驱动器上,那么您会获得更佳的磁盘性能。这些表甚至也可以位于不同的数据库中。但是,在 SQL Server 2005 中,只要所有数据均在同一个数据库中,您就可以使用表分区,而表分区实现起来就容易得多了。

但是,假设您已经尽可能地利用了表分区或(本地)已分区视图,但性能仍然很低。如果您拥有 SQL Server 2000 或SQL Server 2005,就可以利用分布式已分区视图了。主要差别在于,成员表可以位于不同的 SQL Server 实例上,而且这些实例可以安装在 N+1 群集上。为什么鼓励您这样做?如果已分区视图中的任何一个成员表转入离线状态,则整个视图也将转入离线状态。使这些成员成为群集的一部分可以为您提供支持性能和实现负载平衡所需的可靠性。

您真的需要群集吗?

或许您有一些备用服务器无事可做,但这些服务器不在 Windows 目录的群集部分中。如果您在这些服务器可用的情况下,只是为了支持群集就必须出去购置新服务器,那么这是一种浪费可耻的行为。

上一页  1 2 3 4 5 6  下一页

Tags:关于 SQL Server

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接