数据采集工具及数据采集方法

文档序号:6650675阅读:3259来源:国知局
专利名称:数据采集工具及数据采集方法
技术领域
本发明涉及数据采集技术,尤其涉及一种数据采集工具及数据采集方法。
背景技术
在国际信息资源领域受到广泛关注的开放档案信息系统参考模型(Reference Model for an Open Archival Information System,简称 0AIS)是一项基于数字信息长期保存与获取的国际标准(IS014721 :2003),这也是当前国内外数字档案馆建设的重要参考依据。在OAIS系统之外,三个与OAIS系统相互独立、相互作用的实体组成了外部环境,它们分别是信息生成者、外部管理、用户。这其中,信息生成者是指利用OAIS参考模型,对信息进行长期保管的个人、机构或第三方系统,信息生成者将需要长期保存的信息及相关元数据移交给档案馆。对于现阶段的数字档案馆建设项目来说,信息生成者主要是指机关档案室和下级档案部门,特别是这些单位现有的、定期产生档案数据的业务系统、办公自动化 (OA)系统、档案室管理系统。OAIS模型只对信息生成者和档案馆之间的移交协议进行了定义,但并没有给出数据采集和移交的具体方式,而这恰恰是数字档案馆项目建设中最常碰到的问题。结合实际的数字档案馆的情况,对应真实的数字档案馆的模型可以抽象为如下的三个阶段收馆藏档案数字化以及各种电子文件的收集。收集的渠道包括电子公文归档、数字化加工(包括纸质档案扫描加工和声像档案模数转换)、电子文件中心归档、在线上报、 脱机上报等各种方式。管(存)档案整理、档案著录、档案鉴定、数据管理等管理操作以及数据存储备份、光盘离线存储、缩微处理、数据迁移等保存操作。按照文件生命周期理论,对电子档案进行生命周期的管理。用档案资源的信息发布并提供检索利用。通过各个网域面向不同用户提供各种档案信息服务,包括网站信息发布、网上利用服务平台、多媒体档案利用、档案检索、档案借
阅等等。这其中如何解决电子文件的采集接收问题是现阶段数字档案馆项目建设中的关键问题,但迄今为止依然没有一种可以适应大多数情况下数据采集的通用软件工具出现。

发明内容
本发明旨在提出一种能够从异构数据源采集收据的工具及方法。根据本发明的一方面,提出一种数据采集工具,从数个异构数据源采集数据,该数据采集工具包括表示层工具、逻辑层工具和数据层工具。表示层工具连接到各个数据源的页面展现层,在各个数据源的页面展现层进行数据采集,表示层工具仅访问数据源的页面展现层。逻辑层工具连接到各个数据源的逻辑层,数据源的逻辑层提供数据接口供逻辑层工具进行数据交换。数据层工具连接到各个数据源的数据层,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。在一个实施例中,表示层工具包括数据抓取工具,数据抓取工具解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。页面展现层是展示的页面是HTML页面。在一个实施例中,逻辑层工具包括应用程序接口工具和服务总线工具。应用程序接口工具在数据源提供程序调用接口,应用程序接口工具对所述程序调用接口进行封装和调用以获取数据,所述程序调用接口包括胃必 &代、01^、(^乂、把妨8册11。服务总线工具在数据采集工具和数据源之间建立数据总线,以Web Service方式提供接入规范,数据源按照接入规范的提供Web Service接口实现数据源与数据采集工具之间的数据交换。在一个实施例中,服务总线工具包括数据交换引擎,数据交换引擎提供透明的数据通信和透明的数据查找并采用统一的数据安全机制。在一个实施例中,数据层工具包括数据导入工具和数据管道工具。数据导入工具在数据源产生移交文件包并将移交文件包导入数据采集工具,数据导入工具导入基于XML、 Excel、DBF、TXT格式的移交文件包。数据管道工具与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,数据管道工具与 Oracle> MSSQL Server、DB2、Sybase、Access、Foxpro 数据库建立数据结构匹配关联。根据本发明的另一方面,提出一种数据采集方法,从数个异构数据源采集数据,该数据采集方法包括表示层采集步骤,从各个数据源的页面展现层进行数据采集,表示层采集步骤仅访问数据源的页面展现层;逻辑层采集步骤,在数据源的逻辑层提供数据接口,并通过数据接口进行数据交换;数据层采集步骤,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。在一个实施例中,表示层采集步骤包括解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。在一个实施例中,逻辑层采集步骤包括在数据源提供程序调用接口,对程序调用接口进行封装和调用以获取数据,程序调用接口包括WebPart、DLL、OCX、JavaBean,逻辑层采集步骤还包括在数据采集工具和数据源之间建立数据总线,以Web Service方式提供接入规范,数据源按照接入规范的提供Web Service接口实现数据源与数据采集工具之间的数据交换。在一个实施例中,数据层采集步骤包括在数据源产生移交文件包并将移交文件包导入数据采集工具,数据导入工具导入基于XML、Excel, DBF、TXT格式的移交文件包,数据层采集步骤还包括与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,数据管道工具与Oracle、MS SQL Server, DB2, Sybase、Access、Foxpro数据库建立数据结构匹配关联。本发明的数据采集工具及数据采集方法通过表示层、逻辑层、数据层三个层面,多种采集方式的组合运用来达到从各种异构数据源中采集数据的目的。
图I揭示了根据本发明的一实施例的数据采集工具的结构图。图2揭示了根据本发明的一实施例的数据采集方法的流程图。
具体实施例方式参考图I所示,本发明揭示了一种数据采集工具,该数据采集工具从数个异构数据源50采集数据,该数据采集工具包括表示层工具10、逻辑层工具20和数据层工具30。表示层工具10连接到各个数据源的页面展现层,在各个数据源50的页面展现层, 例如HTML页面上进行数据采集。表示层工具10仅访问数据源的页面展现层。在一个实施例中,表示层工具10包括数据抓取工具11,数据抓取工具11解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。表示层工具10根据各个数据源的电子档案最终页面展现(HTML)实现数据采集,不需要对数据源的基础数据结构进行全面分析,也不需要对数据源的逻辑设计进行深入了解,更不需要数据源生成移交文件包或者提供应用程序接口,而只需要通过对特定数据显示页面结构(HTML源码)的解析,就能实现数据源页面显示内容和目标系统数据结构之间的对应关系,完成数据采集。由于这种数据采集方式能够做到用户在数据源的页面上看到的内容就是实际采集到的内容,因此也被称之为“所见即所得”的数据采集方法,其核心是网页源码的解析和元数据抽取(通常被称为 “网页爬虫”技术)。“网页爬虫”的原理是从一个或若干初始网页的URL开始,在抓取网页的过程中,根据一定的网页分析算法过滤与主题无关的链接,保留有用的链接并将其放入等待抓取的URL队列;然后根据一定的搜索策略从队列中选择下一步要抓取的网页URL,并重复上述过程,直到达到系统预设条件时停止。将“网页爬虫”技术应用于电子档案数据采集领域,最需要解决的并不是URL的层层深入抓取网页问题,而是已抓取网页源码的解析和元数据抽取问题。由于数据源的异构性、多样性和复杂性,在网页解析过程中需要结合最终用户的业务知识并参考电子档案元数据标准,根据数据源页面的实际显示结果对爬虫程序进行配置,建立数据源页面显示内容和目标系统数据结构之间的对应关系,从网页源码中抽取档案移交所需的元数据存入目标系统,最终实现数据采集。在一个实施例中,表示层工具10和数据抓取工具11具备以下功能能够解析指定URL的网页、抽取移交元数据; 支持增量抽取,可设置抽取的范围,也可设置为增量抽取,已抽取的数据不会重复抽取; 支持条件抽取,可以设置条件,只抽取符合条件的数据; 支持多种部署方式,既可以部署在数据源本地进行单点采集,也可以部署在档案馆远程服务器上进行多点并发采集; 支持任务监控功能,采用轮询机制,一发现数据源新产生待移交数据即进行主动抓取实现数据捕获操作; 支持格式转换和封装功能,对于抽取后得到的电子档案元数据能够按照标准进行文件格式转换并制作移交数据封装包。对于爬虫程序而言,支持的配置功能包括但不限于 可以配置数据源登录页面的访问地址(查询页面地址需要自动获取);
可以配置数据源的登录用户名/密码; 可以配置数据源查询界面的查询条件; 可以配置数据源查询界面信息点和目标系统数据库字段之间的对应关系; 可以同时采集条目数据以及链接指向的电子全文数据; 支持查询结果的自动翻页。逻辑层工具20连接到各个数据源的逻辑层,数据源50的逻辑层提供数据接口供逻辑层工具进行数据交换。在一个实施例中,逻辑层工具20包括应用程序接口工具21和服务总线工具22。应用程序接口工具21在数据源提供程序调用接口,应用程序接口工具21对程序调用接口进行封装和调用以获取数据,程序调用接口包括胃66 &代、01^、(^乂、把妨86&11。程序调用接口没有可视化的操作界面,而且需要针对数据源提供的具体接口情况进行二次开发,但应用程序接口工具21会预留常见接口(Web Part、DLL、OCX、JavaBean等)的调用集成方法,最常见的方法是对其进行接口封装,比如针对DLL的JNI封装或者针对Web Part 的Web Service封装等。服务总线工具22在数据采集工具和数据源之间建立数据总线,以WebService方式提供接入规范,数据源按照接入规范的提供Web Service接口实现数据源与数据采集工具之间的数据交换。在一个实施例中,服务总线工具22包括数据交换引擎23,数据交换引擎23提供透明的数据通信和透明的数据查找并采用统一的数据安全机制。数据交换引擎23对传输中的数据进行了内容转换、格式转换、压缩和加减密,用于保证数据在传输过程中的一致性、完整性和安全性。数据交换引擎,包括支撑技术、数据处理和数据服务三部分支撑技术包括排队机制、同步机制、异步机制等数据交换基础性支撑技术,并支持 FTP、HTTP、File Stream、Socket等常见数据传输方式,支持断点续传。数据处理包括数据模式管理、数据路由与转换、数据加密与存储等数据处理功能。数据服务包括数据交换服务、数据校验服务、数据访问服务和数据更新服务。数据处理部分和数据服务部分功能简要介绍如下 数据模式管理各应用系统通过数据交换引擎进行数据交换操作时,都指示有数据模式参数,以表明要请求和操作的数据是什么。数据模式管理的另一个功能就是可以进行格式转换可以将某一消息中的数据重组为新的消息,因此它就可以为另一个应用程序所用。可以将数据模式管理服务想象为一本通用的辞典,可以理解应用程序的“语言”,并知道应用程序信息的哪一部分是有用的。数据模式管理拥有强大的剖析和模式匹配方法, 这是它能够理解消息格式的原因所在。这些方法相结合,几乎可以描述所有消息格式的结构。消息格式由各个部件组成,每个部件都描述了消息内的相应域。用部件的模式来描述消息时,就可以将各个域重新组合,构成新的消息。 数据路由与转换在比较简单的情况下,某一消息可能只有一个接收应用程序。 而比较复杂的情况是,有两个(或更多)的接收应用程序。为支持所有这些情况,需要能够将消息发送到任意数目的接收应用程序。请注意,每一个接收应用程序都要求使用不同的消息格式。为了实现真正灵活的解决方案,需要能够根据每条消息中的实际数据,动态地制定格式转换和路由决策。
数据加密与存储在数据交换和转储过程中,某些机密性数据需要在存储到目标数据库前加密。这样即使是数据库管理员也无法直接从目标数据库中读取机密数据。整个数据加密存储服务由三部分组成数据加密使用加密算法对数据进行加密,机密性数据在进数据库前需要加密。数据解密使用解密算法对数据进行解密,机密数据从数据库取出时需要解密。机密数据配置指定哪些表的哪些信息是必须加密的。 数据交换服务提供数据交换的API程序调用接口,采用Web Service方式进行封装,便于相关应用系统集成。集成之后,不但源系统和目标系统之间可以进行数据交换, 接入数据交换引擎的任何系统之间都可以两两进行数据交换。 数据访问服务对应用系统提供查询源数据库和目标数据库的数据访问服务, 采用Web Service方式进行封装,便于相关应用系统调用。 数据更新服务对源数据库提供数据更新轮询服务,一旦发现源数据库数据发生变化,自动更新目标数据库,采用Web Service方式进行封装,便于相关应用系统集成。 数据校验服务不同来源的数据在转储到目标数据库时,可能会发生一致性冲突。当数据的不一致情形发生,需要有相应的处理规则触发,去校验对应的记录。数据校验服务采用Web Service方式进行封装,便于相关应用系统集成。数据交换引擎23为数据的交换建立一个稳定、可靠、快捷、便利的高性能数据传输通道,实现对多种传输方式并按照既定的流程传输数据;实现对发送和转发信息的完整性和保密性保护、实现发送人和转发人的身份鉴别和不可抵赖;可以通过配置选择发送方式、密级设定决定加密措施将数据加密和压缩组织成规定的数据包格式发送到指定的目的地;从数据包提取有关信息,将信息解密解压,根据数据的完整性和合法性;提供自动接收和人工审核确认接收、自动生成交换日志等功能。数据层工具30连接到各个数据源50的数据层,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。在一个实施例中,数据层工具30包括数据导入工具31和数据管道工具32。数据导入工具31在数据源产生移交文件包并将移交文件包导入数据采集工具,数据导入工具导入基于XML、 Excel、DBF、TXT格式的移交文件包。数据管道工具32与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,数据管道工具32与Oracle、MS SQL Server>DB2>Sybase>Access>Foxpro数据库建立数据结构匹配关联。数据管道工具32是一个通用于各种数据库类型,能够实现各种异构数据库之间数据交换以及数据库和文件(比如XML)之间交换的工具,具体实现以下功能支持但不限于以下三种类型的数据源(包括源数据库和目标数据库):大型关系型数据库0racle、SQL Server、DB2、Sybase 等。单机版关系型数据库MySQL、Foxpro> Access等。文本文件XML、TXT和EXCEL等。数据管道工具32支持的功能包括 可视化连接各类数据源(包括源数据库和目标数据库)。 数据管道功能数据库之间的数据同步和交换,可视化选择对应表和对应字段。 导入导出功能将数据库中的数据导出成一定格式的文本文件,将一定格式的文本文件导入数据库。
条件设置功能允许设置源数据表的查询条件(包括各种比较操作符和逻辑操作符)。 多种更新方式针对目标数据库支持创建表(create)、重建表(replace)、清空更新(refresh)、全部更新(update)、增量更新(append)等多种更新方式。 日志记录功能在导数据过程中记录出错情况、记录数、进度等相关信息,并在界面上显示。 版本保存功能用户定义了一个数据管道之后可以将定义的结果保存起来便于下次再次使用。 测试功能可以进行数据库(包括源数据库和目标数据库)连接测试以及导数据之前的测试。 多表关联功能除了一对一单表导数据操作之外,还可以进行多表关联操作 (可以采用数据库视图的方法解决)。参考图2所示,本发明还揭示了一种数据采集方法,该方法从数个异构数据源采集数据,该数据采集方法包括S40.表示层采集步骤,从各个数据源的页面展现层进行数据采集,表示层采集步骤仅访问数据源的页面展现层。在一个实施例中,表示层采集步骤S40包括解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。S41.逻辑层采集步骤,在数据源的逻辑层提供数据接口,并通过数据接口进行数据交换。在一个实施例中,逻辑层采集步骤S41包括在数据源提供程序调用接口,对程序调用接口进行封装和调用以获取数据,程序调用接口包括Web Part、DLL、OCX、JavaBean,逻辑层采集步骤S41还包括在数据采集工具和数据源之间建立数据总线,以Web Service方式提供接入规范,数据源按照接入规范的提供Web Service接口实现数据源与数据采集工具之间的数据交换。S42.数据层采集步骤,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。在一个实施例中,数据层采集步骤 S42包括在数据源产生移交文件包并将移交文件包导入数据采集工具,数据导入工具导入基于XML、Excel、DBF、TXT格式的移交文件包,数据层采集步骤S42还包括与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,数据管道工具与0racle、MS SQL Server、DB2、Sybase、Access、Foxpro数据库建立数据结构匹配关联。图2所示的数据采集方法的细节步骤与图I所示的数据采集工具相对应,此处不再重复描述。本发明的数据采集工具及数据采集方法通过表示层、逻辑层、数据层三个层面,多种采集方式的组合运用来达到从各种异构数据源中采集数据的目的。
权利要求
1.一种数据采集工具,其特征在于,从数个异构数据源采集数据,该数据采集工具包括表示层工具,连接到各个数据源的页面展现层,在各个数据源的页面展现层进行数据采集,表示层工具仅访问数据源的页面展现层;逻辑层工具,连接到各个数据源的逻辑层,数据源的逻辑层提供数据接口供逻辑层工具进行数据交换;数据层工具,连接到各个数据源的数据层,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。
2.如权利要求I所述的数据采集工具,其特征在于,所述表示层工具包括数据抓取工具,数据抓取工具解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。
3.如权利要求2所述的数据采集工具,其特征在于,所述页面展现层是展示的页面是HTM L页面。
4.如权利要求I所述的数据采集工具,其特征在于,所述逻辑层工具包括应用程序接口工具和服务总线工具;所述应用程序接口工具在数据源提供程序调用接口,应用程序接口工具对所述程序调用接口进行封装和调用以获取数据,所述程序调用接口包括Web Part、DLL、OCX、 JavaBean ;所述服务总线工具在数据采集工具和数据源之间建立数据总线,以Web Service方式提供接入规范,所述数据源按照接入规范的提供WebService接口实现数据源与数据采集工具之间的数据交换。
5.如权利要求4所述的数据采集工具,其特征在于,所述服务总线工具包括数据交换引擎,数据交换引擎提供透明的数据通信和透明的数据查找并采用统一的数据安全机制。
6.如权利要求I所述的数据采集工具,其特征在于,所述数据层工具包括数据导入工具和数据管道工具;所述数据导入工具在数据源产生移交文件包并将移交文件包导入所述数据采集工具, 所述数据导入工具导入基于XML、Excel、DBF、TXT格式的移交文件包;所述数据管道工具与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,所述数据管道工具与Oracle、MS SQL Server, DB2、Sybase、Access、Foxpro数据库建立数据结构匹配关联。
7.一种数据采集方法,其特征在于,从数个异构数据源采集数据,该数据采集方法包括表示层采集步骤,从各个数据源的页面展现层进行数据采集,表示层采集步骤仅访问数据源的页面展现层;逻辑层采集步骤,在数据源的逻辑层提供数据接口,并通过数据接口进行数据交换; 数据层采集步骤,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。
8.如权利要求7所述的数据采集方法,其特征在于,所述表示层采集步骤包括解析数据源的页面展现层展示的页面的源码或者从数据源的页面展现层抽取元数据。
9.如权利要求7所述的数据采集方法,其特征在于,所述逻辑层采集步骤包括在数据源提供程序调用接口,对程序调用接口进行封装和调用以获取数据,所述程序调用接口包括Web Part、DLL、0CX、JavaBean,所述逻辑层采集步骤还包括在数据采集工具和数据源之间建立数据总线,以Web Service方式提供接入规范,所述数据源按照接入规范的提供Web Service接口实现数据源与数据采集工具之间的数据交换。
10.如权利要求7所述的数据采集方法,其特征在于,所述数据层采集步骤包括在数据源产生移交文件包并将移交文件包导入数据采集工具,数据导入工具导入基于XML、Excel, DBF、TXT格式的移交文件包,所述数据层采集步骤还包括与数据源建立数据结构匹配关联,通过数据源和数据采集工具的字段匹配将数据从数据源导入数据采集工具,所述数据管道工具与Oracle、MS SQL Server, DB2、Sybase、 Access、Foxpro数据库建立数据结构匹配关联。
全文摘要
本发明揭示了一种数据采集工具,从数个异构数据源采集数据,包括表示层工具、逻辑层工具和数据层工具。表示层工具连接到各个数据源的页面展现层,在各个数据源的页面展现层进行数据采集,表示层工具仅访问数据源的页面展现层。逻辑层工具连接到各个数据源的逻辑层,数据源的逻辑层提供数据接口供逻辑层工具进行数据交换。数据层工具连接到各个数据源的数据层,在数据源产生移交文件包或者与数据源建立数据结构匹配关联,通过移交文件包或者数据结构匹配关联获取数据。本发明还揭示了数据采集方法。该数据采集工具及数据采集方法通过表示层、逻辑层、数据层三个层面,多种采集方式的组合运用来达到从各种异构数据源中采集数据的目的。
文档编号G06F17/30GK102609769SQ201110021458
公开日2012年7月25日 申请日期2011年1月19日 优先权日2011年1月19日
发明者张志红, 张曙华, 杨安荣, 路斌 申请人:上海中信信息发展股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1