基于JSON的异构数据库整合研究_毕业论文(41页).doc
《基于JSON的异构数据库整合研究_毕业论文(41页).doc》由会员分享,可在线阅读,更多相关《基于JSON的异构数据库整合研究_毕业论文(41页).doc(41页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于JSON的异构数据库整合研究_毕业论文-第 33 页基于JSON的异构数据库整合研究JSON Based Heterogeneous Database Integration Research目 录摘 要IAbstractII第1章 绪 论11.1 课题背景11.2 研究意义21.3 研究现状21.4 所做工作及文章结构3第2章 异构数据库整合52.1 数据库52.1.1 数据库简介52.1.2 本文所研究的数据库62.2 异构数据库62.3 异构数据库整合的背景和意义72.4 异构数据库整合的目标82.5 异构数据库整合的基本方法92.5.1 异构数据库整合基本方式92.5.1 异构数
2、据库整合常用方式102.6 异构数据库数据整合重难点122.7 本章小结12第3章 JSON与POJO之间的映射研究133.1 JSON的解码133.2 JSON与XML的比较163.3 JSON与POJO的相互转化173.3.1 POJO的序列化与反序列化183.3.2 将POJO转化为JSON203.3.3 将JSON转化为POJO213.4 将JSON融入ORM213.5 本章小结22第4章 异构数据库与JSON的映射研究234.1 JSON与异构数据库整合系统设计234.2 JSON与异构数据库的映射技术244.2.1 基于模板的映射方法244.2.2 基于数据库模型的JSON映射方法
3、254.3 将关系数据库的数据转化为JSON264.4 将JSON转化为关系数据库的数据274.4.1 单表映射274.4.2 多表一对多映射284.4.3 多表多对多映射284.4.4 映射算法总结294.5 本章小结29第5章 基于JSON的数据库映射中间件的开发、测试及评价315.1 开发平台简介315.2 中间件分析315.3 中间件设计335.3.1 选取工程335.3.2 选择框架335.3.3 框架整合使用335.4 编码实现中间件335.4.1 引入Spring和Hibernate345.4.2 将数据库的表映射为POJO类345.4.3 定义中间件访问接口345.4.4 单元
4、测试355.5 测试环境搭建355.5.1 系统环境355.5.2 使用Badboy录制脚本355.5.3 使用JMeter测试365.6 数据库映射中间件性能评价375.6.1 JMeter图形报表385.6.2 JMeter表格报表385.6.3 中间件性能分析395.7 数据库映射中间件功能评价395.8 本章小结40第6章 总结与展望416.1 总结416.2 展望41参 考 文 献42摘 要从数据库诞生到现在,经过长期的积累,互联网里有着相当数量的异构数据库系统。由于现代信息化建设的需要,许多系统需要去访问异构的数据库系统。对于以数据库为中心的系统的开发者而言,因为异构数据库的存在,
5、他们在开发、维护和升级的成本比常规单一的数据库系统要高的多。由于JSON是一种独立于任何计算机语言且与平台无关的通用数据交换格式,使用JSON作为数据交换格式,来整合异构数据库系统成为了一种可能。在此构思的基础上,本文在现有的基于XML的异构数据库系统整合方法的基础上提出了基于JSON的异构数据库系统整合方法,该方法可以大幅度的降低异构数据系统的开发、维护和升级成本,避免异构数据库系统带来的各种弊端,提高了程序开发的效率。本文主要研究了JSON与异构数据库数据的映射及其算法,具体包含以下内容:1) JSON作为异构数据库系统整合的数据交换格式的可行性;2) 将JSON转换为POJO;3) 将P
6、OJO转换为JSON;4) JSON与异构数据库之间的映射算法。为了验证方法的有效性,选择了三个异构的数据库系统,通过编码实现了基于JSON的异构数据库系统中间件。为了验证中间的性能,使用BadBoy和JMeter对中间件进行了测试。关键词:JOSN;异构数据库;POJO;Java;ORMAbstractBorn from the database to the present, long-term accumulation of the Internet with a considerable number of heterogeneous database systems. Due to
7、the needs of theconstruction of modern information technology, many systems need to accessheterogeneous database systems. For developers, database-centric system, becauseof the presence of heterogeneous databases, their development, maintenance andupgrade costs higher than the conventional single da
8、tabase system.Since JSON is a universal data exchange format that is independent of any computer language and platform-independent, using JSON as a data exchange format, to integrate heterogeneous database system has become a possibility. On the basis ofthis idea, proposed in the existing heterogene
9、ous database system XML-basedintegration method based on JSON-based heterogeneous database systems integration, the approach can significantly reduce the development of heterogeneous data systems maintenance and upgrade costs and avoid all the disadvantages ofheterogeneous database systems, improve
10、the efficiency of program development.This paper studies the JSON and heterogeneous database data mapping algorithmspecific to include the following:1) the JSON as the data integration of heterogeneous database systems to exchangethe feasibility of the format;2) convert JSON into POJO;3) convert POJ
11、O into JSON;4) JSON with heterogeneous database mapping algorithm.In order to verify the validity of the method, select the three heterogeneous database system, by encoding the JSON-based heterogeneous database system middleware. In order to verify the performance of the middle, use BadBoy and JMete
12、r to test themiddleware.Key Words: JOSN; heterogeneous databases; POJO; the Java; ORM第1章 绪 论在互联网还没诞生之前,数据库的应用还只是局限于军方、科研组织、政府机构。在互联网普及之后,数据库应用以井喷式的速度增长。比如我们每天使用的通信软件QQ,他需要使用数据库保存每个用户的各种各样的信息。比如邮件系统,我们草稿、已发送邮件、未阅读邮件、已阅读邮件和垃圾邮件都是保存在数据库里的。再比如铁道部的12306网上订票系统,火车票信息全部是保存在数据库里面。我们日常生活的方方面面都已经离不开数据库了。尽管数据库应
13、用如此之广,但是遗憾的是对于以数据库为核心的系统的开发者而言,不同数据库厂商之间的访问方式之间是存在不少差异的,即使是同一数据库厂商,其不同时期的产品的访问方式也是有差异的。这意味着同一应用系统更换不同的数据库或者升级数据系统都需要去修改源代码。同一应用系统同时访问多个异构数据库的情况也比较常见,这意味着开发应用系统时需要考虑不同数据库系统之间的差异。若多个数据库系统之间一直以异构数据库系统的的形式存在,这对现代企业信息化建设来说,其后期的开发、维护和升级成本将非常高。针对这种情况,有些研究人员提出各种各样的异构数据库系统整合方案,其中比较有代表性的方案是以XML作为数据交换格式的整合方案。1
14、.1 课题背景现代计算机应用系统无不以数据为核心,而数据的载体正是数据库,也称做数据仓库。性能优良、可靠性高、安全性高的数据库现在都被商业公司以产品化的形式推出来,比如IT巨头Oracle推出的11g,Microsoft推出的SQL Server系列,IBM的DB2和informix,Sysbase推出的Adaptive Server Enterprise12.5。也有免费开源的产品比如MySQL和PostgreSQL。数据库产品的现状可谓是百花齐放。问题随之而来,各个数据库产品之间存在着不小的差异。差异体现在:1) 不同数据库存储同一信息采用的数据类型可能不同。2) 标准的结构化查询语言SQ
15、L,在各产品实现时也作了一定的修改,比如加入了自己的方言和其他习惯。3) 不同平台对数据库访问的接口不同。这些平台主要有Java、PHP和Windows等,这些平台的访问方式各有差异。由于历史原因,在同一企业内部,往往存在着多平台。这与现在企业信息化建设所追求的信息同步、信息共享是背道而驰的。对应计算机应用系统的开发者而言,当需要跨数据库操作时,同样是苦不堪言,处理同一数据在不同数据库之间的差异,是件单调枯燥而费时的事情,非常影响工作效率。1.2 研究意义基于以上背景,ANSI制定出来SQL,以期望解决不同数据库之间访问差异的问题。在使用到数据库的的系统中,针对数据库开发往往使用SQL语言。尽
16、管SQL是由ANSI(美国国家标准协会)制定的标准,但不幸的是数据库厂商没有完全执行这一标准,所以存在许多不同版本的SQL语言。但是为了与ANSI标准相兼容,不同的数据库必须以相似的方式共同地来支持一些主要的关键词(比如 SELECT、UPDATE、DELETE、INSERT、WHERE 等等)。不同数据库的SQL之间也就只是一些主要的关键词是一致的,仅此而已,在其他方面或多或少存在着差异。仅仅依靠SQL来减少不同数据库之间的差异是远远不够的。现在数据库产品就是一个百花齐放的情形,现在正在应用的数据库系统在短期内都不会消失,而新的计算机系统又极可能采用了新的数据库系统,差异在不断的产生形成。在
17、这种情况下,如果有一个数据库中间件,对于开发者和使用者而言,直接访问中间件,由数据库中间件完成数据的访问,而数据库是透明的。这样就从数据库使用者和开发者角度消除了不同数据库产品之间的差异,从而极大的提高了数据库使用者和开发者的效率。1.3 研究现状因为不同数据库之间的差异会给数据库的使用者和开发者带来工作上的困扰。为了解决这个问题,现在主要有以下几种解决方案:1)开发数据互连(ODBC,Open Datebase Connectivity)。它是Microsoft开发服务架构(WOSA,Windows Open Services Architecture)中有关数据库的一个部分。开发数据互连通
18、过建立规范,提供了一组针对Windows应用程序了访问数据库的编程接口。这些编程接口主要利用SQL语句来完成其大部分工作。2)Java数据库连接(JDBC,Java Datebase Connectivity)。它是一组使用Java语言编写的类和接口的集合,为多种关系型数据库提供统一的访问。其本质是Java程序通过它执行SQL语句,从而访问数据库。3)Hibernate、MyBatis等基于Java的数据持久层框架。Java语言平台有大量优秀的开源框架,Hibernate和MyBatis都是非常优秀的开源数据持久层的框架。Hibernate和MyBatis的思想类似,只不过Hibernate更
19、加的“面向对象”。他们将数据库中的数据表中的数据项映射为Java语言中的简单Java对象(POJO,Plain Old Java Objects),然后在Java程序中就可以直接通过操作简单Java对象,从而间接操作数据库。这种映射关系又叫对象关系映射(ORM,Object Relation Mapping)。Hibernate和MyBatis的本质是对JDBC的封装,从而简化开发者访问数据库的工作,因而他们深受广大开发者的喜爱。4)采用XML作为数据库的通信格式的中间件。其思想是通过建立中间件,让应用程序直接访问中间件,然后中间件去访问各种异构的数据库。通过中间件可以屏蔽数据之间的访问差异,
20、开发者只需要知道怎么访问中间件就可以了,通过制定规范可以使任何平台的应用程序访问中间件是一致。以上研究中都只是一定程度上解决了某些特定应用中的问题。1)只是针对Windows平台提供了支持,2)、3)只是基于Java平台。4)的更具有全局性,哪怕以后平台再多,其规范也可以统一。但是其需要的解决的问题也和多,比如怎样将数据表中的数据项映射为XML格式的文本,XML的格式很繁琐不易于解析,XML格式笨重、性能不佳。1.4 所做工作及文章结构本文就基于JSON的异构数据库整合研究进行了一些研究和探索,在文中主要完成以下几个方面的工作:1 介绍异构数据库,并对异构数据库整合的主流方法进行介绍;2 研究
21、了使用JSON作异构数据库数据交换格式的可行性及其优势;3 研究了JSON与POJO之间的映射;4 研究了关系型数据库与JSON之间的映射;5 讲述了以SCM、QMS、BOM三系统的为例的进行异构数据库系统的整合中间件的开发过程;6 中间件测试。使用Badboy + JMeter组合,对中间件进行了压力测试,并对结果进行分析,得出中间件的各方面结论。本文的章节安排如下:第1章:绪论,首先介异构数据库系统的整合的的背景和意义,研究现状,本文作者所做工作以及本论文的章节安排。第2章:异构数据库整合,首先介绍了数据库、异构数据库、异构数据库整合的背景和意义,接着阐述了异构数据库整合的目标、异构数据库
22、整合的基本方法和异构数据库整合的重难点。第3章:JSON与POJO之间的映射研究,首先介绍了JSON,讲解了JSON优势,接着将JSON与XML作比较,再接着研究了JSON与POJO的映射,最后研究了如何将JSON融入数据库的ORM模型。第4章:异构数据库与JSON的映射研究,首先研究了JSON与异构数据库整合系统设计,接着研究了JSON与异构数据库的映射技术,最后研究了系型数据库与JSON的映射。第5章:基于JSON的数据库映射中间件的开发、测试及评价。在开发方法,首先对开发平台做了简单的介绍,接着对本文的中间件做了分析,再接着对中间的结构设计做了说明,最后介绍了下中间件平台的编码工作。在测
23、试和评价方面,首先介绍了测试环境的搭建工作,接着根据测试结果对中间件的性能做了分析,最后评价了中间的件的功能。第6章:总结,首先对全文做了一全面的总结,接着就本文需要做的进一步的工作做了说明。第2章 异构数据库整合将异构数据库整合的最终目的的是消除异构数据库带来的种种不便,其不便主要有:系统访问其他异构数据困难;对于异构数据库的数据需关注其类型转换;系统开发、维护、升级难度大。这些“难”都是对开发者程序开发者而言,对与最终用户来说是没有任何影响的。如果能够将异构数据库系统整合,广大程序开发者的效率将大大提高。对于异构数据库的整合要达到数据透明性和操作透明性,只有这样才算是完成了异构数据库的整合
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 JSON 数据库 整合 研究 毕业论文 41
限制150内