首页 > 代码库 > SqlServer性能优化分割提升性能分布式视图(七)
SqlServer性能优化分割提升性能分布式视图(七)
分布式视图:
1.将大表分割到多个服务器上存储
2.物理上与逻辑上都存在多个表
3.通过视图实现对分布到多个服务器表进行访问
4.整合网络负载平衡
链接两台数据库:
建立同样的数据结构:
create table Sales(c1 int not null,c2 int) alter table Sales add constraint pk_Sales_c1 primary key (c1) alter table Sales add constraint ck_Sales_c1 check(c1 between 1 and 100)
--后一太数据库 101---200
点击新建链接服务器:
创建视图:
create view v_sales as select * from Sales union all select * from [localhost\Src1] HRDB.dbo.Sales
在第二台服务器上建立与第一台服务器的链接 和上面的步骤一样
执行下面的语句:
insert v_sales values (2,2) insert v_sales values(200,200)
报错:(保证分布式事物可用)
开启:
在次执行报错:
改成这样:
set xact_abort on insert v_sales values (2,2) insert v_sales values(200,200)
执行下面的语句:
结果如下:
执行下面的更新语句:
第一台服务器没有全在第二台服务器上:
由此可见:分布式视图可以有效的解决系统性能问题,将大表不同的记录范围---分在不同的服务器上,然后通过视图进行表的操作,有效的平衡服务器负载的流量
分割提升数据的访问:
数据的放置:
1.数据放置的原则:
1.在不同的无力磁盘或RAID上创建文件组
2.将常用的连接查询中的表放置到不同的文件组
3.将访问频繁的大表放置到不同的文件组
4.日志文件存放在单独的磁盘
5.将Tempdb数据库放置到快速的磁盘或RAID上
SqlServer性能优化分割提升性能分布式视图(七)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。