【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了基于JAVA_XML的分布式数据同步系统的 - 硕士论文相关资料,希望对各位网友有所帮助!
分类号 密 级 U D C 单位
代码 10151 基于JAVA/XML的分布式数据同步系统的 徐瑞雪 指导教师 张维石 职称 教授 学位授予单位 大连海事大学 申请学位级别 硕士 学科(专业) 计算机科学与技术
论文完成日期 201 1年5月 答辩日期 201 1年7月■Ij 答辩委员会主席 。
’ ■jfl/ ▲j、 舢丫 舢1 删8 四9 …6 舢6 胛8 舢8 THE DESIGN AND IMPLEMENTATIoN oF DISTRIBUTED DATA SYNCHRONIZATIoN SYSTEM BASED ON JAVA AND XML ^、。
0.1tJ A thesis Submitted to Dalian Maritime University In partial fulfillment of the requirements for the degree of Master of Engineering by Xu Ruixue (Computer Software and Theory) Thesis Supervisor:Professor Zhang Weishi 2011鼻I一 July 一 ●_ ^ ll? 大连海事大学学位
论文原创性声明和使用授权说明
原创性声明 本人郑重声明:本
论文是在导师的指导下,独立进行研究工作所取得的成果, 撰写成博/硕士学位
论文“基于JAVA/XML的分布式数据同步系统的”。
除
论文中已经注明引用的内容外,对
论文的研究做出重要贡献的个人和集体,均 已在文中以明确方式标明。
本
论文中不包含任何未加明确注明的其他个人或集体 已经公开发表或未公开发表的成果。
本声明的法律责任由本人承担。
学位
论文作者签名:盆盗窒. 学位
论文版权使用授权书 本学位
论文作者及指导教师完全了解大连海事大学有关保留、使用研究生学 位
论文的规定,即:大连海事大学有权保留并向国家有关部门或机构送交学位论 文的复印件和电子版,允许
论文被查阅和借阅。
本人授权大连海事大学可以将本 学位
论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫 描等复制手段保存和汇编学位
论文。
同意将本学位
论文收录到《中国优秀博硕士 学位
论文全文数据库》(中国学术期刊(光盘版)电子杂志社)、 《中国学位论 文全文数据库》(中国科学技术信息研究所)等数据库中,并以电子出版物形式 出版发行和提供信息服务。
保密的
论文在解密后遵守此规定。
本学位
论文属于: 保密口在 年解密后适用本授权书。
不保密口 (请在以上方框内打“√”)庵 }, …~:徐却鸟…名:罗P胆 日期:训年7月z日 , l ^眨;I. 中文摘要 摘要 数据同步的存在是因为计算机在存储数据的时候,不同的存储介质读写效率有较大差别,在读取数据的时候,系统会查看读写速度快的存储介质中是否有该数据的备份,如果有则可以直接读取这个备份。
这样系统可以减少对外存的访问,大大提高系统性能。
根据以上原理,数据同步技术可以帮助企业解决如何提高苤 一—,—————————————一———, ’统整体性能的问题。
企业的信息系统可以设计成由中心服务器和查询服务器组成。
根据特别的业务需求,中心服务器只负责客户终端的增加、删除、修改操作,查询服务器只负责客户终端的查询操作。
通过数据同步技术实现中心服务器和查询服务器的数据一致。
在客户端读数据的过程中,直接访问查询服务器。
这种方法极大的减小了中心服务器的负担,提升了系统的整体性能。
本文详细了基于JAVA/XML的分布式数据同步系统。
主要研究了 同构数据源的数据同步解决方案。
本文介绍了分布式数据库的基础理论和系统实现所应用的相关技术,分析了现有的数据同步解决方案,结合影响数据同步效率 的因素及解决方法,提出了一种基于控制变化表和XML的分布式数据库数据同步解决方案。
该系统基于JAVA和XML这两种与平台无关的技术,通过对现有的变化数据获取技术进行分析比较,采用了数据壁丝垄墨塑銮垡丝鱼』塞过錾握痊笪銮.化数据进行获取,利用XML文件作为中介存储来交换变化数据,进而达到数据同,_—————————一.步的目的。
该系统成功的应用于大连东软集团上海长途客运业务智能化信息系统,实现,熊竖Q筮必数据同步,达到了系统的要求。
关键词:数据同步;控制表;触发器;XML,■ .I E }‘| 英文摘要 ABSTRACT Data synchronization comes from data storage.The o巧eCt of data synchronization is data.In order to solving the question of efficiency,data synchronization has been created.According to the principle,data synchronization could help enterprise improve the problem of system performance.The information system of enterprise Can include center server and slave server.According to the special requiremems,center server is just responsible for insert or update or delete.In addition,slave server is just responsible for inquires.They can be synchromzed by data synchronization system to improve the performance of the information system. The paper designs and implements the distributed Data Synchronization System based on JAVA and XML.The rcsearch has been done in this paper on the data synchronization solutions.The paper first gave an introduction of the fundamentals of distributed database systems,as well as the relevant technologies to achieve these systems.Then a full analysis of nowadays available data synchronization methods Was presented by the author.Finally,based on the causes and solutions of data synchronization problems,the author put forward a“control table’’mode based trigger and data synchronization.The system Was based on Java and XML technologies,both of which had nothing to do、) ̄,im the platform.In the system,database trigger Was selected from all the existing data capture technologies after a thorough analysis to capture database changes and alter table Was employed to save all the changes.In the meanwhile,XML documents were used as an intermediary to store and exchange the data changes thus achieving the purpose of data synchronization.^ Finally,NEUSOFT information management system Was given as an example to which the Data Synchronization System.In the meanwhile,the system ensured the, system significantly realize the demands ofNEUSOFT. Key Words:Data Synchronization;Control Table;Trigger;XML, 目 录 目 录第1章绪 论…………………………………………………………………………….1 1.1课题背景及研究意义………………………………………………………….1 1.2国内外研究现状……………………………………………………………….1 1.3
论文的主要研究内容……………………………………………………………..2 1.4
论文的组织与结构……………………………………………………………..3第2章分布式数据库概述…………………………………………………………….4 2.1分布式数据库理论……………………………………………………………..4 2.1.1分布式数据库的概念…………………………………………………..4 2.1.2分布式数据库的特点…………………………………………………..4 2.2分布式数据库的模式结构和组成成分………………………………………。
5 2.2.1分布式数据库的模式结构……………………………………………。
5 2.2.2分布式数据库的组成成分………………………………………………6 2.3分布式事务定义和特征……………………………………………………….7 2.3.1事务定义和特征…………………………………………………………。
7 2.3.2分布式数据库中的数据更新…………………………………………..7 2.4本章小结………………………………………………………………………..8第3章实现分布式数据同步系统的相关技术介绍………………………………….9 3.1现有数据同步解决方案分析………………………………………………….9 3.1.1数据复制机制……………………………………………………………9 3.1.2ETL机制……………………………………………………………………………………1 O 3.1.30racle解决方案………………………………………………………..12 3.1.4SQL Server解决方案………………………………………………….12 3.1.5Sybase解决方案……。
…………………………………………………13 3.2影响数据同步性能的因素……………………………………………………13 3.3数据同步策略和关键技术分析………………………………………………….14 3.3.1变化数据获取技术分析………………………………………………。
14 3.3.2数据转换技术分析………………………………………………………17 3.4本章小结………………………………………………………………………20第4章分布式数据同步系统的设计…………………………………………………21 4.1需求分析………………………………………………………………………2l 4.1.1系统应用环境………………………………………………………….21 4.1.2需求概述……………………………………………………………….21 4.2基于变化控制表和XML的数据同步解决方案……………………………22 4.2.1系统体系结构…………………………………………………………22 4.3分布式数据同步系统各层的设计…………………………………………..23 4.3.1变化数据获取层的设计……………………………………………….24 4.3.2 XML文件生成/解析层的
设计……………………………………….26 4.3.3应用层的设计………………………………………………………….32 4.4本章小结………………………………………………………………………33第5章分布式数据同步系统的实现………………………………………………。
.34 5.1开发环境配置…………………………………………………………………34 5.1.1开发语言Java 1.6……………………………………………………..34 5.1.2集成开发环境Eclipse3…2……………………………………………..34 5.1.3中心数据库和查询数据库服务器Oraclelog…………………………34 5.2分布式数据同步系统各层的实现…………………………………………..34 5.2.1变化数据获取层的实现……………………………………………….34 5.2.2 XML生成/解析层的实现……………………………………………..36 5.2.3应用层的实现…………………………………………………………40 5.2.4系统运行结果…………………………………………………………43 5.2.5系统测试结果…………………………………………………………46 5.3本章小结……………………………………………………………………一47第6章总结与展望…………………………………………………………………一48 6.1
论文主要工作总结……………………………………………………………48 6.2未来展望………………………………………………………………………48参考文献…………………………………………………………………………..49致 谢………………………………………………………………………………………….52 基于删XML的分布式数据同步系统的 第1章绪论1.1课题背景及研究意义 随着信息化和网络技术的飞快发展,将信息化应用于企业日常工作中正变得非常普遍。
各个企业对信息管理的需求更加复杂,更加注重信息管理的效率问题。
在日益激烈的竞争中,信息系统的高性能、高安全性、高复用性是企业关注的焦点。
然而由于实施信息化地阶段性、技术性以及其它
经济和认为因素的影响,这些公司的信息化过程总会出现效率低的问题。
于此同时,伴随着企业信息化程度的增强,产生大量同源数据,企业出现了对数据的一致性和实时同步的需求。
很多企业的信息系统亟待解决数据上传下载效率低,访问服务器速度慢等
问题。
而这一问题通过建立有效地分布式数据库以及采用数据同步技术可以得到很好的解决。
本课题来源于大连东软集团上海长途客运业务智能化信息系统。
该
系统由中心服务器和查询服务器组成。
本课题主要研究该系统售票模块的数据同步功能。
售票终端通过访问中心服务器进行常规的增加、删除、修改等基本的业务操作,通过访问
查询服务器可以实现数据查询操作。
查询服务器有效地减轻了中心服务器的负担,提高了数据传输的整体效率。
在此基础上,中心服务器和查询服务器之间的数据同步问题就变得非常重要。
例如:售票终端在更改完中心数据库的系统数据后,查询数据库中必须做出相应的数据变更以确保售票终端查询数据的及时性,保证整体业务系统的正常运行。
目前实现此数据同步功能完全依靠购买软件。
虽然可以加快整体项目开发时间,但是花费颇高。
因此,自主研究中心服务器和查询服务器之间的数据同步技术是大势所趋。
从实际情况出发,对数据同步技术的研究不仅仅可以成为企业减小开支,还可以实现系统的复用性,能够将这种数据同步技术应用于其它相关项目中。
因此,可以说对中心服务器和查询服务器之间的数据同步技术的研究具有十分重要的意义。
1.2国内外研究现状 数据同步的理论研究工作在多个相关领域包括变化数据获取领域、数据复制技术领域、数据传输领域以及分布式数据库领域研究的共同促进下取得了很大的进步。
弋西 第1章绪论数据同步技术的分类研究、一致性研究、冲突研究等都发表了大量的文章。
而且各个数据库厂商都已经提出了独立的同构数据同步方案,很多非数据库厂商也针对数据同步提出了各自的解决方案。
总之,不管是从理论上还是从应用上来说,数据同步都取得了很大的进展。
国外各大数据库厂商中,Oracle利用触发器和存储过程,Sybase利用LTM(日志传输器)和RepAgent(复制代理),IBM使用CCD表和MQ,微软提出出版者/预订者
方案。
各种
开源数据库也提出了复制方案。
MySQL提出跟踪二进制日志的方案,PostgreSQL提出slony—I方案。
独立
软件开发商也开发出各种数据库同步产品。
国内目前在这方面开展研究
工作的有:人民大学的移动数据库金仓系统,对数据复制的理论和实现进行了研究,提出基于版本号的复制冲突检测和解决策略等。
全国公安系统CCIC(中国犯罪信息中心)应用基于UD.Tree的复制框架RAUT,提高大量数据复制情况下系统的整体性能眨1。
西安交通大学和北京航空航天大学提出的基于日志合并优化的数据同步机制。
1.3
论文的主要研究内容 本文主要的研究工作为: 1、分布式数据库的理论研究 本系统属于分布式数据库系统,因此对分布式数据库系统的理论研究是十分重要的。
分布式数据库的分层结构、并行性、数据的完整性与一致性、可靠性,都是设计本系统的基本依据。
2、数据同步解决方案的研究 本文分析和比较现有的数据同步解决方案后,才能根据具体的需求提出相应的解决方案。
本文在这一部分主要研究的是变化数据获取技术以及数据转换方法。
变化数据获取技术包括:基于触发器法、基于日志法、基于时间戳法、基于控制表法、基于快照法、基于API法、基于影子表法。
数据转换方法包括:JDBC和XML技术。
3、影响数据同步效率的因素 在固定的软硬件环境下,数据同步效率是决定一个系统解决方案好坏的关键。
本文 基于JAVA/XML的分布式数据同步系统的将根据对现有数据同步机制的分析,研究影响数据同步效率的因素,以此作为提出系统设计方案的基础。
1.4
论文的组织与结构 本
论文共分为六章: 第一章本文的绪论部分。
主要阐述了
论文的课题背景和研究意义,分析国内外的研究现状,最后介绍本文的主要研究工作内容以及
论文的组织结构。
第二章分布式数据库理论基础。
主要介绍了分布式数据库的概念、特点,分布式数据库的模式结构和组成成分,分布式数据库的组成成分,事务的定义和特征,以及分布式数据库的数据更新。
第三章数据同步的原理。
分析和比较了现有数据同步解决方案,具体分析了变化数据获取技术、数据转换技术,分析了影响数据同步效率的因素。
第四章分布式数据同步系统的设计。
分析数据同步实现的策略和关键技术。
针对本系统所处的背景,分析了系统所需解决的问题,给出系统模块的设计过程。
第五章分布式数据同步系统的实现。
给出系统模块实现的步骤以及运行结果。
第六章总结本
论文的主要工作,对下一阶段的工作提出展望。
第2章分布式数据库概述 第2章分布式数据库概述 本章首先将介绍分布式数据库的概念和特点,然后介绍分布是数据库的模式结构和组成成分,最后将结合
论文所要研究的主题,介绍分布式事务定义和特征以及在分布式数据库中的数据更新。
2.1分布式数据库理论2.1.1分布式数据库的概念 分布式数据库(DDB)是数据库技术与计算机网络技术相结合的产物。
一个分布式数据库是一个处理属于一些相关联的数据库的系统。
这些相联的数据库称作结点。
一般来说,它们地域上分布在一些由数据通信网络相联的不同物理场所。
结点也可以在同一机器上,这里关键是可以处理一些数据库的机制,而不必考虑其
通信线路的性质。
分布式数据库是由一组数据组成的,这组数据分布在计算机
网络的不同
计算机上。
系统中存在两种类型的用户:全局用户、局部用户。
全局用户看到的是分布式数据库的全局视图。
局部用户看到的是某一个结点数据库的局部视图。
2.1.2分布式数据库的特点 分布式数据库是数据库技术与计算机网络技术的统一,是集中与分散的统一。
根据分布式数据库的结构与功能,总结其特点如下: 1)分布透明性和冗余透明性:是指用户或用户
程序在分布是数据库操作中不用考虑数据的分布与冗余,这使分布式数据库与集中式数据库具有相同的外特性。
2)系统的分层结构:分布式数据库是一些相联的数据库的集合,整个系统的结构是分层的。
可以分为局部数据库与全局数据库、局部控制与全局控制、局部数据模型与全局数据模型、局部与全局数据操作语言等等。
局部与全局的概念是相对的,对上一级数据库来说是局部的,对下一级则是全局的。
3)并行性:数据的分布于冗余,大大提高了并行处理的可能性。
并行处理是分布式数据库的基本特点之一。
4)数据的完整性与一致性:分布是数据库中的数据虽然分布在不同计算机上,但 基于JAvA/X〕VlL的分布式数据同步系统的从逻辑上来看是一个整体。
分布式数据库允许每个结点有自主权,可以对自己管理的信息加以控制,有局部的责任制,但其各个部分的数据也可以集中控制管理。
这一特点防止数据库中的数据受到无效的更新,保证冗余数据的一致性,为用户提供有效的、争正确的数据。
5)可靠性:在分布式数据库中,单一部件的失效,不一定使整个系统失效,系统的弹性可以保持其余部分的正常进行。
分布式数据库可以通过多个不同的场所,冗余的存放数据来恢复失效的数据。
2.2分布式数据库的模式结构和组成成分2.2.1分布式数据库的模式结构 分布式数据库是基于计算机网络连接的集中式数据库的逻辑集合,保留了集中式据库模式结构的特色,又比集中式数据库模式结构复杂,其模式结构如图2.1所示: 图2.1分布式数据库的模式结.