ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 一种实用的数据导入工具

一种实用的数据导入工具

原创 Linux操作系统 作者:zhangqid 时间:2009-04-27 20:52:10 0 删除 编辑

数据导入是项目实施过程中经常会遇到的问题,无论是在新系统上线,还是在日常的系统维护过程中,都会有不同格式的数据要导入系统的数据库中,如果采用界面录入,会耗费大量的人力物力,还不能完全保证数据的正确性。因此一个强大的数据导入工具对于项目的实施和系统维护是很重要的。在现实生活中,由于项目的差异和种种历史原因,不同的项目会有不同的数据格式,数据内容根据实际的业务又有很大的差异,数据导入工具要有很强的灵活性来支持多种不同的数据格式,而且可以支持不断变化的业务数据。

 

IBM根据多年的项目实施经验,在Websphere Commerce产品中提供了一种数据导入工具,为向数据库导入产品,库存,价格等信息提供了强大的支持。

数据导入工具使用了灵活的基础架构,使得导入数据快捷高效。这种架构使得只需使用一种工具,就可以实现了以下的流程:

1。从源文件或者外围系统读入数据

2。把源数据转化成业务对象

3。把业务对象转化成数据库对象

4。把数据导入数据库

如图所示,数据导入工具可以分为三个层次。

 

 

 

客户数据导入层

 

客户数据导入层包含原始数据读入器和业务对象读入器。原始数据读入器从原始文件读入数据并把输出数据传递到业务对象读入器。业务对象读入器接收原始数据读入器的输出,并把原始数据转化成业务对象。每个业务对象是整个系统中的通用实体对象,这就是说无论是在商店前端,还是后台编辑工具,数据导入工具中,都具备相同的数据模型。

 

客户数据导入层支持不同类型的数据源,比如CSV格式,XML文件格式,外部数据库以及ERP系统,可以同时使用多个原始数据读入器来支持不同的数据类型。数据导入工具缺省提供了CSV原始数据读入器,如果需要支持其他的数据源,需要创建客户化的原始数据读入器。

 

业务对象层

 

业务对象层负责把业务对象转化成物理对象,物理对象可以被持久到数据库层。

ID解析器是业务对象层的一部分,用来表示数据库表中的一行记录。如果这条记录在数据中已经存在,返回这条记录的主键,否则,创建新的对象并返回主键。

 

持久层

 

持久层负责把物理对象持久到数据库。数据库本地适配器把物理对象转化成数据库产品可以识别的文件格式,由数据库本地导入工具根据文件内容把数据导入到数据库。由于这种导入工具是数据库厂商提供的,所以效率很高。在初始化数据时,往往有大批量数据,在这种场景下可以用这种方式提高性能。

 

JDBC批量导入适配器使用JDBC批量导入API持久化物理数据,在做增量导入时,可以使用这种方式。

 

要使用数据导入工具,需要对以下三个文件进行配置,

wc-dataload.xml, wc-dataload-env.xml 和 wc-dataload-businessobject.xml.

这三个文件的功能如下:

wc-dataload.xml用来管理数据导入的顺序,wc-dataload-env.xml用来管理环境变量和全局属性,比如数据库名称,用户名,密码等。wc-dataload-businessobject.xml用来描述业务对象。

Snap1.gif

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21460414/viewspace-591992/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-04-23

  • 博文量
    3
  • 访问量
    20133