标题 | 自适应多终端数据采集系统关键问题研究 |
范文 | 蒋凌燕 摘 要:在互联网+时代,用户数据采集需求不断变化。以往针对多变的数据采集需求开发系统需要花费较高的经济和时间成本,而现存系统又往往不能满足数据采集的新需求。多终端自适应数据采集系统采用Web前后台框架新技术,对系统实现的一些关键问题进行分析,包括系统中采集的数据元模型如何定义,自适应式网页表单如何生成,多终端访问如何实现,核心数据如何传输和存储等,并探讨系统可扩展性和存在的问题,提出解决方案。 关键词:多终端;自适应网页;数据采集 DOIDOI:10.11907/rjdk.1511377 中图分类号:TP303 文献标识码:A 文章编号文章编号:16727800(2015)012001502 0 引言 随着互联网技术的发展,接入互联网的设备多种多样,移动终端对互联网的访问越来越频繁[1]。大量信息系统往往不能满足用户数据采集新需求,需要根据采集的数据内容设计专门的系统,一旦有新的数据采集需求来不及开发系统,又会回归原始的数据采集方法:发放电子或纸质表格,再进行繁琐的人工汇总和统计。开发自适应多终端数据采集系统尤为必要[2]。 1 系统功能设计 1.1 系统数据采集功能设计 系统中的用户角色分成可以发起数据采集的管理员和需要填写表单完成数据采集的普通用户。管理员根据实际需求来定义采集数据的表格或者表单结构,系统负责将表格内容转换成Web表单型页面,并生成元数据模型,当普通用户填写表单数据时,数据以元数据的模式存储到数据库中,当管理员完成一项数据采集任务时,系统将存储的元数据生成符合要求的表格文件并提供下载,同时表格文件存储在服务器上,可供多次使用。 1.2 自适应数据采集的原始数据模型 对于新的数据采集需求,自适应多终端数据采集系统由管理员角色的用户来发起数据采集任务,对于需要采集的数据原始模型采用可自定义的表单或者Excel表格转换为表单,通过上传Excel表格或者自定义表单来完成初步任务创建,系统负责将原始数据模型从Excel表格转换为数据库中的元数据,并生成用于数据采集的表单,在数据库中采用元数据的模式来存储用户输入的采集数据。 系统读取Excel文件的常用方法有以下几种:JDBC-ODBC Excel Driver、 jxl.jar、jcom.jar 、 poi.jar,本文选用jxl.jar库来实现原始数据模型的读取,Excel文件如图1所示,读取并转换流程如图2所示。 图1 定义需采集数据内容的Excel文件 图2 原始Excel文件转成元数据流程 读取Excel文件后在程序中存储成集合并转换成元素据,元数据存储到数据库中结构如图3所示。 图3 数据库中元数据结构 1.3 自适应数据采集表单生成 数据库中的元数据定义了数据采集的格式,在服务器端进行转化生成对应的表单页面,转换过程中使用struts2的部分服务器端标记。 首先在数据库中读取元数据,转换成集合遍历后生成对应表单元素,代码如下所示,使用struts的迭代标签生成。 1.4 支持多终端访问的前台页面 系统页面使用HTML5新特性配合前台框架技术JQuery实现多终端访问的支持,在系统前台页面设计中根据客户端屏幕的大小定义可变的布局,按照响应式页面来设计。响应式网页根据不同设备环境自动响应及调整,提供兼容不同屏幕分辨率、清晰度以及屏幕定向方式竖屏(portrait)、横屏(landscape),采用弹性栅格布局方式,页面在不同的分辨率环境下呈现不同的布局[3]。 数据采集页面通过脚本语句获取当前显示设备的窗口宽度和高度,再动态修改页面的大小和布局来实现多终端自适应页面的生成。同时,不同大小终端提供的用户体验也不同。PC机上大多利用键盘和鼠标,平板和手机采用触摸屏需要用手指控制。响应式页面除了页面适应以外还需根据用户输入方式提供多种操控方式和页面响应,需要对触摸屏的事件进行绑定和响应,这是响应式页面的用户交互特殊性的体现。 1.5 数据处理和存储 普通用户将数据输入采集系统后存储在数据库中,当任务书发起人(管理员)结束数据采集任务时,系统将数据库中的元数据转换为Excel表格文件,文件存储在服务器上并生成对应的文件信息存储于数据库中,管理员可以查看文件信息并下载对应的文件。 所采集的数据有两种存储方式,一种是数据库中的元数据,一种是用元数据生成的Excel表格,两种方式存储的数据用途不同,数据库中的元数据用于数据采集和页面显示功能,Excel表格文件生成后存储在服务器上,数据采集任务结束后供用户下载。元数据转换成Excel文件的流程如图4所示,生成的任务文件下载页面如图5所示。 2 系统可扩展性 数据采集系统在实际使用中往往面临大规模或者超大规模用户并发的问题,在大量用户并发使用时容易出现问题。同一个任务需要采集的用户数量较大时,链接服务器的并发访问达到一定的规模,会造成服务器响应变慢,影响用户体验。针对这一问题使用状况改善,可以使用已发布的新技术来解决。作为html5的重要部分,WebSocket可以完成更多的并发大量数据处理应用,解决了Web实时化的问题,相比传统httpWebSocket服务端可以推送(push)数据到Web客户端,减少数据传送量。 通过在浏览器和服务器之间建立双向连接,以基于事件的方式,赋予浏览器实时通信能力,服务器端和客户端可以同时发送并响应请求,而不同于HTTP的请求和响应[4]。数据提交部分功能用node.js实现,配合WebSocket技术来实现。通过Node.js 的事件驱动以及非阻塞I/O 模型来开发在分布式设备上运行的数据密集型数据采集实时应用。通过事件循环(event loop)的架构,提高所编写的可扩展性高的服务器的安全性和健壮性。同时配合HTML5的WebSock功能在前台实现客户端和服务器之间的直接数据传输连接,加快数据传输和响应的速度。数据采集功能采用Websock配合node.js更好地能更好地适应大量用户并发的应用环境,同时采用node.js开发的功能,相比传统服务器可以添加到已有的信息系统中,而不影响已有系统功能,数据采集系统的适应性将大大提高。 图4 元数据转换成Excel文件流程 图5 任务文件下载页面 3 结语 本文对多终端自适应数据采集系统的关键问题进行分析,设计系统功能,可以用于数据采集任务,使用方便,但也存在一些问题待解决。元数据在数据库中存储虽然解决了数据采集中用户数据结构多变的问题,但也带来了新的问题,所采集的数据需要修改或者查询时需要从数据库中取出元数据进行解析,当数据量达到一定规模时则降低了数据处理的速度,解决办法之一是针对一个数据采集任务在数据库中创建对应的数据表,当任务完成时将数据表删除,保留Excel文件在服务器上。同时处理的采集任务较多时也会造成数据库中有大量新建的数据表,这两种方式需要根据具体的使用环境来取舍。 本文数据采集系统的采集方式主要是用户通过网页表单的方式,下一步在系统功能扩展方面希望能拓宽数据采集渠道,从各种各样的外部硬件和数据采集终端设备中来采集原始数据并上传服务器处理。 参考文献参考文献: [1] SU JUNMING, TSENG SHIANSHYONG, LIN HUANYU. A personalized learning content adaptation mechanism to meet diverse user needs in mobile learning environments[J]. UserModeling and Useradapted Interaction, 2011,21(1):549. [2] 吕江峰.远程数据采集系统的设计与应用[J]. 中国新通信 ,2014(8):8384 [3] 陆钢,朱培军,李慧云,等. 智能终端跨平台应用开发技术研究[J].电信科学,2012,28(5):1417. [4] 工业和信息化部电信研究院.移动互联网白皮书[EB/OL].http://www.catr.cn/kxyj/qwfb/bps/201405/P0201405123394644 14386.pdf,2014(5):1516. [5] 毛新军,尹俊文.基于组织的分布式开放系统自适应机制孙跃坤[J];计算机学报,2013(11):2126. [6] 申文明,孙中平,张雪,等.生态环境移动数据采集系统研究与实现[J].生态学报, 2013(24):231245. (责任编辑:陈福时) |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。