基于元模型的通用数据抽取技术实现

时间:2011-11-05 12:22  作者:小编  点击:
  在数据迁移领域中,数据的抽取是至关重要的组成部分,本文从实际出发,提出了一种基于元模型的数据抽取方法,实现了数据抽取与业务模型在操作层面的分离,解决了因模型变化而导致的数据迁移策略的变化。实现了通用性。关键词:数据迁移;元模型(,.072750):,,,.:;最新传奇引言数据迁移是一项复杂、繁琐的丁作,也是一件很有意义的事情。数据迁移大致可以分为抽取、转换、装载3个步骤。数据抽取是根据实际需求对旧系统中的数据进行筛选,选择必要的待迁移数据。转换步骤是根据新旧系统数据库的映射关系进行的,首先比较两个系统中数据类型的差异和联系,找出合理的对应关系,然后进行适当的转换。
  数据装载是通过数据迁移工具或自行编写的程序将抽取、转换后的结果数据加载到目标数据库中11。在数据迁移领域中,数据抽取一直以来都是一件复杂并且繁琐的工作,目前,大多数的业务级的数据迁移方式,只能针对具体的数据模型,定制具有针对性的迁移策略,一旦数据模型或者上层应用发生了变化,那么必须重新定制迁移策略,从而导致数据迁移的不稳定性。为了解决这一问题,提出了一种基于元模型的数据抽取技术,解决了因为模型变更而导致的迁移策略的变化,实现了通用性。2设计思想一种业务数据有可能存储在不同的数据表中,表与表之间通过外键进行关联,当要迁移一种业务数据的时候,往往要将与之有关系传奇的其他表中的数据一起迁移出来,这就是所谓的级联迁移。这种级联是双向的,一方面要把指定数据下游的相关联的数据迁移出来,并且为了保证数据的完整性,还必须把指定数据上游的数据一并迁移出来。设计思路在于?百过一套定义数据模型的元模型,将表与表之间的关联进行抽象,实现一套通用的数据迁移方式。元模型中定义了数据模型中的表名,表中的字段,字段的类型,精度,外键,唯一键等有关数据模型的基本信息。
  通过读取元模型,自动拼写相关的命令以及与之相关的上游下游数据表。元模型的生成一般可以通过数据库自带的系统表实现,以所研究的数据库为例,通过访问系统竺":奠20壤1翟1.技06巧与訇《黾涉表等可以生成一套完整的元模型。
  通过元模型,能够完整地实现业务数据以及上游下游相关数据的访问,但是这种方式在编程实现以及维护上还存在一定的问题,对此对元模型进行了抽象,将表与表之间的拓扑关系抽象成图的操作,图中的顶点对应于表游先锋,图中的边对应于表与表之间的外键联系,通过对图的遍历从而达到访问数据的目的。
  在经典的图论中对图中的对象作了一些限制121:(1)两个特定定点相关联的边不能多于一条。(2)图中不能出现从自身到自身的边。而在数据模型中,这两点都可能出现,因此对图进行了扩展,允许这两种情况出现。3技术实现3.1元模型的生成元模型是对创建一个富含语义的模型所需要的构造元素和规则的一个精确的定义。元模型是关于如何建立模型、模型的语义或模型之间如何集成和互操作等信息的描述,是对某一特定领域建模环境的规范定义,它定义了该领域的语法和语义,能够表示该领域内的全部系统[31。
  专门设计了一套元模型模块,此模块主要完成从数据库中读取元模型信息构建元模型,根据表名得到表的结构,拼接查询语句等功能3.2数据内存对象的设计在数据抽取模块中,为了统一的应对应用系统中的所有数据表,设计了一套通用的数据存储结构。;用一个字符数组来对应表中的一行数据,所有的数据类型全部转换成字符型,这样做有以下的好处:(1)结构简单,可以适应所有的数据表。(2)字符型的数据结构在构造命令时无需进行数传奇据数据库与信息管理类型转换。其缺点在于用字符型存储数据,效率比较低。3.3统一的数据类型读取方式采用提供的接实现数据的读写操作。接根据不同的数据类型,需要调用不同的函数实现数据的访问操作。为了设计一套统一的数据读取方式,在元模型中定义了一套数据类型用以表示一系列常用的数据类型如:通过数据字典中有关列的类型的名称解析,将数据类型统一存储在元模型当中。
  在编程实现的过程中,又定义了一套枚举类型:?=1,=2,优秀,;在元模型读取中将列的类型转换为类型,然后定义了一甬数指针数组:(+,):(+,);(+,);(43)(,)=,,;通过这种方式,将根据不同的数据类型调用不同的函数的过程,转化为对函数指针数组的操作,从而实现了数据读写函数接的统一。3.4数据抽取命令的实现以研究的数据模型为例,所有的主键都都是一个12位有效数字的长整型,因此在构建命令的时候,采用+主键的方式,构造其查询语句,对于其子数据采用?+夕键的方式,构造查询语句。逻辑操作符是99中的标准语法,支持此语法的查询操作。在数据抽取的过程中,将所有查询的数据的主键全部进行缓冲,根据元模型动态地构建查询命令,其流程如下:(1)根据数据数上选择的数据的主键值进行数据查询,并存储主键值。(2)根据图的遍历生成的数据访问路径,选择下一个要查询的数据。(5)构建完整的命令,并查询数据。(6)存储主键,选择下一个查询数据。3.5数据抽取功能的设计在研究的数据抽取技术中,采用了图这种数据结构来抽象数据与数据之间的关系,将表与表之间的关系抽象成图的边,通过图的遍历达到访问子数据的目的。图中的数据采用邻接表的存储方式。图的遍历采用广度优先遍历的算法,使用一个临时队列,通过计算顶点的入度和访问次数达到遍历的目的。假根据厄模犁初始设置选定数据所在的表为初始顶点计算强连通分量与联通八度广度遍历强连通分量假访问数据庳将数据写入文件将访问数掘的主键存人缓冲遍历足垒[逆向遍所所有联通人度不等于人度的琐点访问数据库将数据写入史件生成?条甘人时的访路径笙查图1数据抽取流程如图1所示。4结语研究在数据库中采用数据字典的方式构建元模型,在其他的商业数据库中也可以找到替代的方式。除此之外,基于元模型的数据抽取方式,在数据迁移本网络游戏这一点正确领域中具有较好的通用型,适用于绝大多数的数据模型,相信在今后的研究中会越来越受到欢迎。
  。
------------------------------------------------------------------------------------------------------

上一篇:体验虚拟化妆软件的魅力
下一篇:宫腔镜治疗子宫黏膜下肌瘤382例分析

相关文章内容导读

利用替换功能为试卷排版
雷霆麒麟你居然将侧宗玄门假气练下了十浮
111区捷报-我之所见
8196
BosonNetsim软件在计算机网络实验教学中的应用
基于地理信息系统的芝罘区土地整理与分析
两种武器之〖裁决之杖与井中月〗
驳之姐妹篇
玩家们决不会在侵占者眼前垂高高昂的尾髅
呵呵,传奇文化(十区雷霆二)2.

  国内最大的魔兽世界游戏资源网! |
Email: kefu114@obooo.com.cn    资讯电话:13812146671
Copyright 2010-2012 By doosf.com All Right Reserved .
鄂ICP备09025006号-1