当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用SQL实现分布式数据复制

ASP
asp生成三维饼图的函数
ASP下的简洁的多重查询的方法与函数 真不错
发一个ASP的ADODB类代码
A利用ASP小偷和Google实现在线翻译功能的代码
ASP类型网站结合动网论坛会员的方法
Asp下实现多表单域无组件文件上传的实例
asp制作中常用到的函数库集合
易心asp分页类 v1.0
asp中xmlhttp组件发包
检测是否为数字类型的asp代码
可以获得文件的文件名的asp函数
用asp实现访问远程计算机上MDB access数据库文件的方法
用ASP实现写IIS日志的代码
asp在IE浏览器中下载服务端上的各类文件的实现方法
asp汉字中文图片验证码的实现代码
asp WAP获取手机终端信息的一段代码
asp取得数组中的最大值的方法
用asp实现的截取指定格式字符串的代码
asp jmail发邮件 详细解析
ASP编程中连接数据库和数据库操作的常用代码

ASP 中的 用SQL实现分布式数据复制


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 215 ::
收藏到网摘: n/a

  复制的概念

  复制作为一个重要并且强大的技术,为分布式数据的存储和处理提供了有力支持。微软公司的SQL Server可以生成数
据的拷贝,并能把这些数据的拷贝分发到不同的地方,自动进行数据的同步,保持所有的数据拷贝具有相同的数据。SQL
Server采用一种称为“松散一致”的复制模式在两个数据库之间进行复制。这两个数据库既可以在同一台计算机上,也可
以在不同的计算机上,彼此通过局域网(LAN)、广域网(WAN)进行连接。

  我们公司在开发“西安市国家税务局内部网络信息系统”中,正是利用了SQL Server的复制功能,实现全西安市分布
的税收数据的复制同步。西安市国家税局包括市局机关和下属的18个基层征管分局,分布于西安市不同的地理位置,彼此通
过DDN专线或X.25专线连接,构成了西安国税局广域网。市局信息中心用Windows NT Server4.0 构建一个Windows NT的单
主域网络环境,下属每个分局有一台运行Windows NT Server 4.0或Windows NT Server 3.51的服务器,通过广域网加入到
单主域的环境中作为一台独立的服务器运行。各分局建有本分局的局域网,网络环境为Novell和Windows NT的混合网络环
境。

  全西安市所有的纳税人,均到指定的征管分局进行纳税登记、纳税申报。国税局用FoxPro开发了基于Novell网络环境
的税收征管软件,在各分局征收大厅由Novell的无盘工作站负责税收数据的录入,写入到Novell服务器上的数个DBF文件
中。由于税收征管数据分布在全市不同的征管分局,为全市范围纳税信息的检索和分析带来困难。

  新系统的开发,在原有基础上,编制专门的数据转换程序,把存储于Novell服务器上的DBF文件转换到本分局Windows
NT上的SQL Server数据库中。每个分局的SQL Server数据库与市局信息中心的SQL Server数据库进行复制,及时把最新的
税收数据传递到市局信息中心。这样在市局信息中心,就有了全市所有税收征管数据。信息中心建立Intranet Web站点,
用户的计算机只要连上各分局的局域网,或者通过Modem拨号到信息中心的RAS服务器,就可以用IE浏览器访问IIS服务器,
由IIS服务器向SQL Server服务器发出数据请求并把结果按HTML格式返回给用户浏览器。

  系统的设计采用客户浏览/服务器的多层结构方式,客户端采用标准的浏览器访问方式。用户在自己的计算机上安装IE
浏览器(WIN98、WINNT4.0中已内置IE4浏览器),输入Web 站点地址,就可以进入该系统。

  在中间层,由Internet Information Server完成大多数的用户业务规则的实现,例如对用户权限的限制、数据请求的
生成等。IIS会根据不同的用户所拥有的不同的权限,生成不同的页面。将来当业务规则发生变化时,只需要在Internet
Information Server上进行相应的更改,这种更改就会在系统的每一个用户下次访问系统时得到体现。

  在系统的最低层,由SQL Server大型关系数据库作为支撑。西安全市的税务数据是一个以GB为单位的大型数据库,纳
税数据表中的数据记录超过数百万条,在如此大量的数据中进行快速的数据检索和数据分析,一般的数据库软件是难以完
成的。SQL Server关系型数据库,较好地完成了用户提出的各种数据的检索要求,同时也正是利用了SQL Server的数据复
制技术,把近二十个分局的数据通过广域网复制到信息中心来,使用户能快速获取全市的纳税信息。

  该系统实现的一个重要部分就是各分局税收征管数据的复制。SQL Server的复制有以下几个特点:

  1.基于事务

  有复制标志的事务从源数据库的事务日志读出,并送到目的数据库。例如执行了一条Insert语句使源数据库的数据发
生变化,这条Insert语句会被写入到一个数据库中,我们称之为发布数据库(Distrbution)。在适当的时候,这条Insert
语句会送到复制的目的数据库并执行该Insert语句,以此保证两端的数据保持同步。

  2.以三种不同的方式使用服务器

  (1)出版(Publication):作为源数据服务器(在本系统中是各分局的SQL Server服务器),当标志复制的表
(Table)的数据发生变化时,产生该变化的事务被刻上复制标志,由日志阅读器(LogReader)把该事务送入分发数据库
(Distribution Database)。这些事务寄存在分发数据库中直到被传送到目的服务器。

  (2)分发(Distribution):包含有分发数据库。分发服务器接受出版服务器的更改事务,并保存到分发数据库中。在
适当的时候,把这些事务送入订阅服务器。缺省情况下,分发服务器与出版服务器为同一台计算机,当然也可以是不同的
计算机。

  (3)订阅(Subscription):接受出版服务器的出版数据。

  3.使用专用的SQL Server数据库作为复制数据的可靠队列

  SQL Server的复制采用“松散一致”复制模式,其特征是源数据与拷贝数据之间并不是在任何时刻都保持完全一致,
它们之间有一个延时。源数据库的变化,不是立刻反应到订阅数据库中,而是