ImageVerifierCode 换一换
格式:DOC , 页数:44 ,大小:1.23MB ,
资源ID:1256330      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1256330.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库转换工具的设计与实现-毕业论文.doc)为本站会员(滴答)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

数据库转换工具的设计与实现-毕业论文.doc

1、 本 科 生 毕 业 设 计 论 文 数据库转换工具的设计与实现院 系_专业班级_姓 名_学 号_指导教师_年 月 日计算机科学与技术I摘 要本文设计与实现了一个数据库的数据转换工具,能够实现多数据源间的数据的导入导出和数据整合。该工具基于开源 ETL 工具 Kettle,使用纯 java 语言编写,可用于二次开发。而数据转换工具的设计是在 kettle 的源码基础上,进行功能扩展。 。数据库转换工具是在 kettle 的数据抽取、数据转换、数据加载三个方面的插件功能上进行了添加,从通用的数据库连接方式中分离出了 DM 数据库的连接,实现达梦数据库和 oracle 数据库之间的数据转换。总共增

2、加的步骤插件有 7 个。数据抽取:word 输入,word 文件作为数据源,兼容 doc 和 docx 格式的文件。数据以表格形式存储在 word 文件中,Word 输入是从一个 word 文件的表格中抽取数据;数据加载:word 输出,生成一个 docx 格式的文件,数据存储在word 文件的表格中;数据清洗:单位换算,支持长度、重量、频率、速度、功率及角度这 6 种单位的换算;字段清理,可根据设置的分隔符字符和位置清理掉其前或其后的字符串;提取数字,仅保留字符串中带符号的数字;全半角转换,将字符串中全角符号全部转换为半角符号;日期规格化,将不合法的日期规格化。关键字:kettle,元数据,

3、插件,数据转换,数据清洗,word 输入输出IIAbstractThe main purpose of this paper is to design and implement a data transformation tool to achieve data import and export from multiple sources and data integration.Kettle is an open source ETL tool,using pure java language,whose source code is able to be redeveloped.The

4、 tool is based on kettles source code to add the rules of data cleaning according to the problems when data is integrated between old database and new database.Kettle is an application that consists of a platform and plugin structure.In this topic,the modification of kettle is in plugin structure.We

5、 mainly add the function about data extraction ,data transformation and data loading,as well as separating the DM database connection from the general database connection.Totally,seven steps of plugin are added,including word input in data extraction ,that word files is regarded as a data source.Dat

6、a is stored in table.Data extracting from a table in word files.Word files supports doc and docx format., word output in data loading which generates a word whose extension is docx.Data is stored in table .and in data transformation, including unit conversion that supports 6 units conversion which i

7、ncluding length ,quality,speed,frequency,power and angle ; field cleaning, a string that can be cleaned before or after according to the setting of the separator string ;extraction of digital, Only the number with sign can be reserved in a string;full-to-half , ll full width symbols will be into hal

8、f width symbols;Date Standard ,it standardizes illegal date string.Key Words:kettle,metadata,plugin,data transformation,data cleaning,word input and output.III目 录(格式?)摘 要 .IAbstract .II1 绪论 .11.1 课题背景及目的 .11.2 课题国内外转换工具概况 .21.2.1 DM 数据迁移工具 .21.2.2 DMETL 数据交换平台 .31.2.3 Oracle Warehouse Builder .31.2.

9、4 Kettle.41.3 课题的主要工作和论文构成 .51.3.1 主要工作 .51.3.2 论文构成 .52 核心技术 .72.1 数据库驱动程序 JDBC.72.2 Apache POI 组件 .72.3 正则表达式 .82.4 元数据库 .93 Kettle系统结构简介 .113.1 Kettle 系统结构 .113.2 kettle 插件结构 .123.2.1 Kettle 的插件扩展机制 .123.2.2 步骤插件的组成 .143.2.3 步骤插件间的通信 .163.3 本章小结 .174 数据库转换工具的设计与实现 .184.1 转换的选择与不足 .184.2 新增插件 word

10、 输入 .194.2.1 Word 输入插件的注册及显示 .204.2.2 Word 输入插件的调用 .224.2.3 Word 输入插件的实例化 .224.2.4 Word 输入插件的实现 .234.3 新增插件 数据转换 .254.3.1 单位换算 .254.3.2 字段清理 .284.3.3 提取数字 .294.3.4 全半角转换 .304.3.5 日期规格化 .304.4 新增插件 word 输出 .314.5 新增功能 DM 数据库连接 .334.6 本章小结 .34结束语 .35IV论文总结 .35未来展望 .36致谢 .37参考文献 .3811 绪论1.1 课题背景及目的随着互联

11、网技术的发展与普及,信息交流速度加快,计算机给各行业带来了近乎革命性的变化。传统的办公方式,如纸质的信息传播存储、口头告知等效率低下,严重制约着企业的发展。由于信息技术的快速更新和实体间选择的差异,企业的不同部门使用不同的数据库管理系统的现象十分普遍。因此,异构数据库间数据转换的要求是十分普遍的,不同部门之间的数据交换问题也越来越突出。另外,当数据库系统升级时,为了最大程度地利用现有企业内外部的资源、避免重复开发导致的的浪费,异种数据库操作的问题也必须得到解决。在数据库需要使用外部数据时也存在着异构数据库操作问题。那些基于不同平台不同类型的分布式的关系数据库如 access,DM ,oracl

12、e 等需要数据共享和转换,如何实现异构数据间转换及如何提高其性能显得非常重要和迫切。关于数据转换工具的功能需求,只要从两个方面的要求来说:数据导入导出和数据整合。 数据的导入导出a. 提供达梦数据库与 oracle 数据库之间的数据转换工具;b. 提供 excel 文件与数据库之间的数据导入导出工具;c. 提供数据库到文本文件(txt、doc) 的导出工具。 数据整合数据整合是共享或合并来自于两个或多个数据源的数据,创建一个更多功能的应用的过程。课题中主要实现数据库数据结构的整合,为了实现旧数据库数据向新的数据库的导入导出,需分析新旧数据库的数据结构的变化,在保证源数据库表结构不变的情况下,在

13、中间过程对数据库表结构进行重整,使得数据能够完整、正确的导入到目标数据库中,从而到达实现数据整合的目的。数据转换工具将提供数据库之间的数据相互转换,如果只是库表字段不统一,那么将两表之间意思相同的字段进行对应,缺少的字段可以新增,Comment z1: 参考文献应该大部分都引用,可加上达梦的用户手册作为参考文献2多余的字段进行删减,然后利用转换工具将两表对应,实现数据库表之间的数据转换。1.2 课题国内外转换工具概况大多数的大型主流的数据库管理系统都有自带的或是所在公司研发的数据导入导出工具,现今也有很多的 ETL工具能够实现数据转换。这里主要介绍DM和 oracle数据库的数据导入导出工具以

14、及常见的开源 ETL工具。1.2.1 DM数据迁移工具武汉达梦数据库带有一个数据迁移工具,DM 数据迁移工具提供了主流大型数据库Oracle、 SQLServer、MySQL、DB2 、PostgreSQL、Informix、Kingbase、Sybase的模式、表、视图、序列、索引迁移到 DM13。它主要支持: ODBC数据源、JDBC 数据源的模式、表、视图迁移到 DM; DM数据库的模式、表、视图、序列、索引迁移到主流大型数据库Oracle、SQLServer、MySQL; DM数据库之间模式、表、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限的迁移; DM数据库模式、表、

15、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限迁移到 XML文件; DM数据库模式、表、序列、视图、存储过程/函数、包、类、同义词、触发器、对象权限迁移到 SQL脚本文件; DM数据库的表、视图数据迁移到文本文件; DM数据库的表、视图数据迁移到 Excel文件; DM数据库的表、视图数据迁移到 Word文件; SQL脚本文件迁移到 DM数据库; XML文件迁移到 DM数据库; 指定格式的文本文件、Word 文件和 Excel文件迁移到 DM数据库。Comment z2: 作为三级目录是否太短了点?31.2.2 DMETL数据交换平台达梦也有自己研发的一款 ETL工具 DMETL

16、。在数据转换方面,达梦数据交换平台提供丰富的数据源和转换规则。DMETL支持各种主流数据库(达梦、Oracle 、SQLServer、 DB2、 Mysql、Sybase、PostgreSql 等)的全量和增量数据抽取和装载,还支持TXT、CSV、Excel、XML 文件、消息服务器、LDAP 服务器、WebService 等数据的抽取和装载。DMETL提供的数据转换规则包括:联合、聚合、排序、设置变量、删除重复行、数据集查找、数据质量检测、行转列、列转行、SQL 脚本、数据集查找和数据清洗转换。其中数据清洗转换内置了 40多种的数据清洗规则,对于简繁体、汉字拼音、乱码处理、字符集转换、中文数

17、字的中国特有的问题提供内置的转换规则进行处理。数据清洗规则具体如 图 1.1所示。图 1.1 DMETL支持的数据清洗规则1.2.3 Oracle Warehouse BuilderOracle Warehouse Builder(OWB)12是 oracle公司于 1998年推出的一个集成工具,主要用于帮助企业构建数据仓库。OWB 提供了一个易于使用的图形环境,4用于快速设计、部署和管理商务智能系统。其功能包括:数据模型构造和设计、数据抽取、转换和装载(ETL),元数据库管理,数据仓库的管理和分析工具的整合。OWB 的核心领域为企业元数据管理、企业业数据集成、完整的系统设计、集成质量及开放性

18、。OWB 支持复杂的提取、转换和传输过程。OWB 通过oracle 提供的透明网关技术,从 ODBC 数据源、oracle 数据库和大型主机系统中快速提取和有效的装载数据。但是 DMETL 和 OWB 的使用具有局限性,它们属于各自特定的数据库管理系统的,较依赖于具体的数据库相关产品,通用性不强 3。1.2.4 KettleKettle 是一个开源的 ETL(Extract-Transform-Load 的缩写,即数据抽取、转换、装载的过程)项目,它是由纯 java 语言编写,具有较好的移植性,绿色无需安装,数据抽取方面性能高效稳定。Kettle 的目的是:把一种或多种数据源放入到一个 ket

19、tle 中,经过 kettle 对数据的处理,从 “水壶中流出”的是按某一种指定的数据格式存储的数据 14。ETL项目很大一部分工作是在做数据转换。在输入和输出之间,数据要经过检验、连接、分割、合并、转置、排序、合并、克隆、排重、过滤、删除、替换或其他操作。Kettle支持类型广泛的数据源和数据格式并从中抽取数据,数据源包括普通关系型数据库,如常见的oracle、MS SQL Server、IBM DB/2、 Ingres、MySQL和PostgresSQL;有分隔符或固定格式的ASCII码文件;XML文件;流行的办公软件,如Access数据库和Excel电子表格;一些ERP系统,如SAP/R

20、3、oracle E-Business Suite。还能从Web Service或RSS中获取数据。除了类型广泛的数据源外,kettle 也提供了丰富的转换功能。包括:值映射、去除重复记录、合并字段、合并记录、增加常量、增加序列、字段选择、字符串剪切(string cut) 、过滤记录、字符串替换(Replace in string) 、字段拼接(Concat Fields) 、拆分字段、排序记录、列转行、行转列(Row Normaliser) 、行扁平化、计算器、合并连接、AddXML、Add a checksum、Add value fields changing sequence、Clo

21、sure Generator、Example Plugin、Get ID from slave server、Number range、String operations、Unique rows (HashSet)、XSL 5Transformation、Split fields to rows。提供缓慢变更维度、查询值、行列转换、条件分割、排序、合并、连接、聚集这些最基本的数据整合功能。然而世界上没有哪一个工具能为你提供所有能想象到的数据转换的能力,kettle也是如此。这意味着必须要有扩展功能的方法。因为kettle 是开源的免费软件,是以java平台为基础开发出来的,适合于二次开发,可以

22、通过调用外部库或是第三方API来为工具扩展数据转化功能。尽管kettle有很多的有点,它也有许多的不足之处。Kettle不支持权限管理和批量装载功能。Kettle的数据抽取性能较不稳定,数据转换的速度较慢。1.3 课题的主要工作和论文构成1.3.1 主要工作数据转换工具的设计是在 kettle 的源码基础上,针对 kettle 在数据抽取、转换、加载功能这三个方面的缺陷,对其功能进行修改和添加。在数据导入导出方面,主要是增加了数据源 word 文件。在数据抽取和数据加载方面,分别新增插件 word 输入和 word 输出。Word 输入是以 word 文件作为数据源,兼容 doc 和 docx

23、 格式的文件。数据以表格形式存储在 word 文件中,Word 输入是从一个 word 文件的表格中抽取数据。 Word 输出是生成一个 docx格式的文件,数据存储在 word 文件的表格中。再有就是改进了 DM 数据库的连接功能,从通用的数据库连接方式中分离出 DM 数据库的连接,更加便于DM 数据库和 oracle 数据库之间的数据转换。数据转换工具是通过对数据的转换、清洗实现对数据库表结构和数据类型的整合,使得数据能正确的导入到目标文件或数据库中。实现过程中,在分析总结 kettle 自带的功能插件的缺点与不足后,在数据转换方面,最终设计增加的步骤插件有:单位换算,支持长度、重量、频率、速度、功率及角度这 6 种单位的换算;字段清理,可根据设置的分隔符字符和位置清理掉其前或其后的字符串;提取数字,仅保留字符串中带符号的数字;全半角转换,将字符串中全角符号全部转换为半角符号;日期规格化,将不合法的日期规格化。

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。