SQLServer分布式分区视图分解数据表

SQLServer分布式分区视图分解数据表,第1张

SQLServer分布式分区视图分解数据表,第2张

分区视图可以连接一个或多个SQL Server数据库中的数据。在开发水平分区的数据库环境时,可以使用分布式分区视图来连接来自不同服务器的分区表,这样数据看起来就像来自同一个服务器。

您可以设计这些视图。因此,如果您的潜在数据表结构设计得当,查询优化器就可以从该数据表中知道查询所需的数据,从而加快操作速度。一个设计良好的分布式分区视图也可以被更新、插入和删除。在本文的下一部分,我们将深入探讨它是如何实现这一操作的。

例子

在这个例子中,我们假设SalesHistory表非常大,如果表中的行水平记录在不同的服务器上,这将对我们有利。每台服务器上的SalesHistory表的表结构是相同的,但是,一台服务器存储该国东部的销售信息,而另一台服务器存储该国西部的销售信息。

我们根据Region字段和SaleID来区分表中的记录。其中SaleID字段是一个整数数据字段,我们为国家的不同地区设置不同的SaleID。

该字段对于设计概念非常重要,因为它是我们用作分区的关键字段。(注意:在缩小场景中设计表是极其重要的,因为表中的行不同于其他服务器上的行。)该字段集是分区键。

设计了很多SaleHistory表,salehistory表总是可以根据它的salehistory表来区分。我们可以通过检查约束来实现这一点。

我们将使用两个独立的SQL Server实例,在本例中,它们位于同一台计算机上。服务器的名字是Chapman,实例分别叫做实例A和实例B。这两个实例都是SQL Server 2005开发版本,允许远程连接以及Windows和SQL Server身份验证。

使用脚本创建SalesDB数据库,设置每个服务器的惰性架构验证选项,并使用此选项通过确保仅在真正需要服务器上的数据时才发出服务器链接请求来提高SQL Server的性能。

列表A中的脚本需要在两个数据库实例上运行。B list用于在SalesDB数据库中创建读者登录和用户。这个脚本还需要在两个数据库实例上运行。

列表a:

创建数据库SalesDB
执行sp _ server option
@ server = ' Chapman servera,
@optname = '惰性架构验证',@optvalue = 'true '


列表B:

创建密码为= '654asod3e**的登录阅读器!!'
使用SalesDB
从登录读取器创建用户读取器


列表C:

ServerA:
EXECUTE sp _ addlinkedserver
' Chapman serverb ',
' SQL Server '
EXEC sp _ addlinkedsrvlogin ' Chapman serverb ',
'false ',NULL,' reader ',' 654asod3e**!!'
ServerB:
EXEC sp _ addlinkedserver
' Chapman servera ',
' SQL Server '
EXEC sp _ addlinkedsrvlogin ' Chapman servera ',
'false ',NULL,' reader ',' 654asod3e**!!'


List C将在每个数据库实例上独立运行。该脚本在每台服务器上创建一个链接到另一方的链接服务器。服务器连接允许SQL Server依赖OLEDB数据源来执行命令,就像其他SQL Server一样。

我们使用上面脚本中创建的登录作为连接到服务器的安全上下文。这些链接的服务器允许我们从一个服务器查询到另一个服务器。

位律师回复
DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
白度搜_经验知识百科全书 » SQLServer分布式分区视图分解数据表

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情