基于Web服务的学校数据采集平台的研究与设计
黄卫
摘 要:数据采集是信息系统的重要组成部分,随着信息技术工具在各部门的广泛普及,数据采集方式发生转变。文章提出了基于Web服务建立可互操作分布式应用程序的平台,其具有独立性、自发性、智能性,能很好地解决应用系统集成和跨平台问题,简化了持续的数据采集工作,以较低成本采集不同部门的异构数据,为数据分析和决策创造条件。
关键词:Web服务;XML;数据采集;信息系统
随着信息技术的广泛应用,各部门积累了丰富的数据,以提供相关信息,供决策过程所使用。这些数据存放于多个异构的、自治、分布的信息系统中,各部门数据无法实现共享和转换,面临着信息孤岛问题。数据研究机构为方便同平台的数据采集,往往不愿付出高成本重组现有系统。于是,采集、组织和分析来自不同部门系统的数据是成为管理信息系统(Management Information System,MIS)的设计和开发目的之一。在数据采集过程中,一是要关注数据的质量、准确性和异构性,将采集后的数据存储在一致的数据仓库中,为数据挖掘创造条件;二是采取有效的措施,解决异种数据的操作和共享难题。基于以上要求,文中论述了应用Web服务、管理代理(Agent)等技术,以较低成本采集不同部门的异构数据,为数据分析和决策创造条件。
1 相关技术
1.1 XML规范
可扩展标记语言(eXtensible Markup Language,XML)被设计用来传输和存储数据,是一种数据交换的格式,是W3C制定的文本标记语言规范,它利用标准的网络协议进行传输。XML是Web服务的基础,基于Web服务的协议规范都是XML来描述与表达的。其主要的优点在于它既是平台无关的,又是厂商无关的[1]。
1.2 Web服务
Web服务是一种松耦合的跨编程语言和跨操作系统平台的远程调用技术。表面上看,Web服务是一个应用程序可对外调用的应用程序编程接口(Application Programming Interface,API)。把调用这个Web服务的应用程序称为客户端,而把提供这个Web服务的应用程序称为服务端。从更深层看,Web服务建立了可互操作分布式应用程序的平台。只要可以通过Web服务标准对这些服务进行查询和访问,独立于不同的语言和平台,能很好地解决应用系统集成和跨平台问题[2-3]。
1.3 SOAP协议
简单对象访问协议(Simple Object Access Protocol,SOAP)是指定如何通过HTTP交换XML文档的协议规范,即SOAP协议= HTTP协议+ XML数据格式。它通过SOAP编码规则可以与现有通信技术最大限度地兼容[2]。
1.4 UDDI与Agent
通用描述、发现与集成服务(Universal Description Discovery and Integration,UDDI)是分布式Web服务的信息注册规范,用于通过使用Internet来描述服务,企业可以使用它对Web服务进行注册和搜索。UDDI系统引入Agent后,Web服务查询变得更智能化,减轻了管理信息系统的负担,提高了运行效率。当搜索服务时,Agent以SOAP消息格式向UDDI系统提出查询请求,并生成一个查询的Agent,以此来接收Web服务需求的SOAP消息。
2 数据采集系统的实现
2.1 数据采集系统工作机制
为解决异构数据源的数据采集,提出以Web服务作为基础架构的数据采集系统。教育系统内数据采集器如图1所示,其中包括Web服务、代理(Agent)系统、UDDI系统及实现异构的、分布式教育管理信息系统[4]。Web服务屏蔽异构系统的差别,外部通过服务接口响应的来自Agent的采集请求。UDDI是一种目录服务,企业可以使用它对Web服务进行注册和搜索。采集器的功能是各教育信息系统传递有用的采集数据,期间通过SOAP/HTTP来进行Web服务调用,最后采集至主管部门信息系统[5]。
2.2 Web服务的数据采集接口
该系统使用Web服务作为编程接口(见图2)来从异构环境中采集数据。它提供了一个平台,无论编程语言和操作系统如何,其中一个应用程序可以与另一个应用程序交换信息,支持不同网络文件的互操作性,即松耦合。各层级不需重组现有系统,以XML文件进行通信,定时的数据采集工作可以在任何级别上进行。register()方法用于登记不同层级部门网址;send()方法用于发送XML文件注册账户;get()方法用于获取数据。
2.3 数据采集系统的优越性
一般来说,由于联机输入数据量大、易出错,增加了联机通信的成本。即使引入传统计算机数据的采集方法,也是一个耗时的过程。此外,异构系统也不利于实时数据传输。基于Web服务交换异构平台数据速度快,成本低,不论平台和编程语言是什么,不用重新配置操作系统、数据库系统和应用软件,允许访问不同私有网络中的文件,自由地用HTTP协议进行通信。
3 数据采集方法
Web服务的工作模式是各层信息系统从DUUI系统查询Web服务接口,然后按要求格式向Web服务发送请求,以传递相关数据[6]。以教育系统内部数据采集为例,采集器运行大致经过以下几个过程(见图3)。
教育主管部门首先数据采集格式设计,将采集请求以XML格式向学校的Web服务提出服务请求。各层级参照执行该步骤,依次为:主管部门→大学→院系→班级。各校通过Web服务接口响应采集请求,并传回所采集的数据。比如:各大学提前手动采集大量数据,然后记录在学校的管理信息系统(异构系统)的数据库中。期间,Web服务主要负责将XML格式不同语义的数据转换成标准格式。当然,校区分散或具备软硬件的学校,也可建立类似的采集器,更高效、低成本地采集不同部门的异构数据。
数据采集过程中无法避免在同一地方可能采集大量表格,存在错误的条目和费时的纠错过程等问题。所以要对采集的数据进行必要的整理,清除无用数据。事实上,任何层级都可完成数据采集工作,并把这些数据作为原始数据进行进一步的分析,为政策制定者所用。
4 结语
一个合格的学校管理信息采集平台应该具有通用性、可靠性、实时性、共享性、能为政策制定者所用,实践表明该平台具备这些特点。Web服务使用的标准,如XML,SOAP,WSDL,為普遍所接受的,应用Web服务组件无需重新设计当前的学校系统,不受特定的物理位置、编程语言、平台、数据编码方式的限制,数据可在不同部门、不同平台之间共享,实现了低成本、开放性与智能性的结合。
[参考文献]
[1]SCOTT S. SOAP:XML 跨平台Web Service开发技术[M].北京:机械工业出版社,2002.
[2]郑子彬,吕荣聪.Web服务质量管理[M].杭州:浙江大学出版社,2013.
[3]BOOTH D,HAAS H. Web Services Architecture,W3C Working Group[J].Concurrency & Computation Practice & Experience,2004(5):72-81.
[4]JACKLE A, ROBERTS C, LYNN P. Assessing the effect of data collection mode on measurement[J].International Statistical Review,2010(1):3-20.
[5]王瑄,李燕.应用Web Services构建多层架构的高效.NET应用[M].北京:科学出版社,2005.
[6]马晓轩.Web服务与数据交换关键技术研究[M].北京:中国环境出版社,2017.