欢迎来到天天文库
浏览记录
ID:9619761
大小:53.50 KB
页数:4页
时间:2018-05-04
《事务处理技术在城域点播系统中的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、事务处理技术在城域点播系统中的研究与实现摘要事务处理是维护数据库应用系统中数据一致性的重要方式。本文分析了几种在分布式系统中实现事务处理的常用方法。结合城域点播系统,利用ADO事务处理技术提出了维护数据一致性的有效方案。关键词事务处理;VOD;ADO0引言数字电视城域点播系统是可覆盖全城的扩展的分布式VOD系统,为用户提供方便快捷、稳定流畅的高画质VOD服务。该系统采用多层分布式系统架构,后台数据库搭建在SQLServer2000之上,SQLServer2000是可缩放、高性能的关系型数据库管理系统,提供强大的事务处理功能,对
2、事务恢复主要采用基于事务日志机制来保证数据的完整性。由于系统面向更具体的要求和应用,SQLServer2000提供的隐性事务控制还不能完全满足系统的需要,而且还会造成应用程序性能下降。因此,本文讨论了如何在该系统中实现更全面、更完善的显式事务控制,从而实现数据的一致性和完整性,保证整个系统的安全、有效的运行。1SQLServer2OOO事务处理技术事务是一种能够把数据库的修改作为整体提交给数据库的机制,从而保证数据库的一致性。事务作为单个逻辑工作单元执行的一系列操作。必须具备四个属性:即原子性(Atomy)、一致性(Consi
3、stency)、隔离性(Isolability)和持久性(Durability),称为ACID属性。在DB-Library应用程序和T-SQL脚本中可以使用BeginTransaction,mitTransaction等语句描述事务,SQLServer2000可以按显式、自动提交或隐性模式启动事务,用MIT或ROLLBACK结束事务。SQLserver应用程序主要使用Transact-SQL语句或数据库API函数通过指定事务启动和结束的时间来控制事务。常用的数据库API有ODBC、OLEDB和ADO,不同的数据库访问方式的效率
4、和访问方式策略有不同,如ADO不支持隐性事务,OLEDB没有专门用来设置隐性事务模式的方法。2基于多层结构中显式控制事务几种方法2.1多层结构体系介绍多层结构系统由于其安全性、易扩展、易于实现分布式的数据处理方式等优势使其应用越来越广泛。多层系统中典型的是三层结构体系(如图1),客户端负责系统与用户的交互,企业逻辑,数据访问规则,合法性校验等放在应用服务器层,客户程序通过IAppServer接口与应用服务器通讯,通讯的协议可以是TCP/IP,D,MTS或CORBAT。应用服务器通过数据集控件访问数据库服务器。图1三层体系结构2
5、.2多层结构中显式事务控制几种方法2.2.1事务处理集中于客户端这种处理方式主要利用客户端的TClientDataSet组件,在其mandText属性中定义事务,通过IAppServer接口将定义的SQL语句传给应用程序服务器中的数据集组件,数据集组件通过BDE访问远程数据库服务器,并把含有事务处理的SQL语句传给数据库服务器,这样实现事务的控制。在正常情况下,系统可有效的控制事务,但若客户端在开始一个事务由于任何原因中断了客户端和数据库系统的通讯,由于此时数据表处于锁定状态,只有提交或回滚才能解锁,这必然影响到系统的正常运行
6、。2.2.2在数据库服务器端控制事务在数据库服务器后台,利用T-SQL语句定义存储过程或触发器来实现事务的控制.当应用服务器通过调用组件的方式执行相应存储过程时,数据库将自动完成数据的修改,从而实现事务的控制。但由于存储过程和数据集控件绑定,这将影响松散耦合系统的维护和功能的扩展,而且为满足系统不同的功能需求,数据库服务器将定义更多的存储过程或触发器来实现系统功能,这对数据库服务器的移植和维护带来一定的困难。2.2.3在应用服务器控制事务在中间层实现事务,由远程提交数据包给中间层由中间层来进行企业逻辑判断和事务处理,客户端只负
7、责提交数据包,不进行企业逻辑判断,数据包提交后即使网络中断中间层也可继续进行企业逻辑判断和事务处理,因为中间层处理时间短,不会影响其它用户。而且,后台数据库本身并不执行太多的操作,这将提高整个系统的执行效率。下面具体讨论如何在城域点播系统应用服务器中实现事务处理。3事务处理在城域视频系统中的实现3.1系统主要结构该系统软件开发环境选用Delphi7.0+SQLServer2000,采用C/S三层结构模式,客户端和应用服务器之间采用CORBA协议,实现在不同开发语言环境和异构系统之间数据交互,保证了整个系统运行的稳定性、高效性和
8、安全性。软件体系具体分成以下部分(如图2):1)应用服务器端:呼叫服务中心(CallCenter),是整个系统控制的中心,主要实现用户点播业务,启动点播服务器,与VOD点播服务器、运营管理中心保持通信,回复客户的各种信息查询要求等等。在内部实现上,主要由23个动态连接库(DL
此文档下载收益归作者所有