一种基于流数据管理的宿舍监控系统

时间:2022-05-22 08:00:28

一种基于流数据管理的宿舍监控系统

摘要:宿舍自动化监控是学校信息化管理进程中具有重要意义的一步,而目前宿舍监控系统并不完善,因此研究设计了一个无线的基于实时数据流管理的室内环境监控系统。针对大学宿舍环境监控系统,基于最新的实时数据流管理技术,在系统管理模块加入查询处理层,并提出了适合系统的连续查询语言和查询计划以优化系统和提高系统的自适应性,设计并实现了基于数据流管理的宿舍监控系统。实验结果表明系统的性能可以满足大学宿舍监控数据处理的实时性和有效性的要求,能够对大型的宿舍环境进行高效监控、灵活地实时地查询和统计分析。

关键词:宿舍环境监控;实时数据流管理;查询处理层;连续查询语言;查询计划

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)08-1727-06

大学宿舍是大学生的第二个家[1],宿舍的管理越来越趋于规范化,只有通过先进的管理,才能保证大学生的综合素质不断提高,从而更加符合当今的社会需求。而目前宿舍管理很不完善,宿舍成员与管理者之间的沟通不方便,造成了现在大学生宿舍内有学生逃课,休息时间大声喧哗,严重影响他人休息,损坏设备无法及时报修,火警预报不健全造成火灾等现象。目前也有一些宿舍监控自动化的系统的研究,但是目前的系统在环境监控的准确性以及系统数据流的处理方面还很不完善,所以本文提出了基于流数据管理的宿舍监控系统的研究与设计的课题。

宿舍监测点比较分散,采用分布式系统比较合适,同时大量的环境数据需要海量的存储和高带宽的传输技术,在多数据源上分析数据需要在多个流上进行聚集和连接操作,使得采用传统数据库的监控系统不能满足人们的需求,而目前的数据流管理系统能够较好的解决数据流处理的一些问题。

本文通过传感器来采集室内的温湿度、亮度、烟雾、电流电压、声音数据,并把采集到的信息利用无线通信技术―ZigBee[2]汇集到网络控制中心,该控制中心[3]再通过串口把数据发送到PC机上,PC机上附带SIM300的通讯模块以便通过短信控制宿舍环境,并在PC机终端加入查询处理层,提高宿舍监控数据处理的实时性和有效性,提出了适合本系统的连续查询语言以提高系统的自适应性,研究设计了一个无线的基于实时数据流管理的室内环境监控系统,以解决上述各种问题。

1 系统模型

经过对目前智能监控系统[4]和国际上几个数据流项目[5]的研究分析,基于流数据管理的宿舍监制系统的实现需要解决以下关键问题:系统会采集大量的实时、连续、有序的值序列,如何处理并存储这些数据;宿舍中监测点分散、实时性差、布线麻烦,如何能方便实现系统同时能快速准确的监控宿舍的实时环境;系统能够提供预定义方式的查询,如何能够灵活地处理用户动态指定的查询要求。这些问题要求该系统具有以下功能:

1)PC机上添加GPRS模块[6],宿舍中布置温湿度、亮度、烟雾、电流电压、声音等传感器,将传感器和控制器连接到ZigBee网络中的节点上,实现了传感器和控制器的无布线的散列摆放,宿舍管理员无需布线,就能轻松实现对宿舍环境的电话远程控制、电脑控制等多种智能控制。

2)管理员可以通过人机交互界面方便的设定重要的参数,当采集信息的参数超过用户设定的范围时,系统会自动的以发短信或打电话的方式通知用户,并且用户可以随时随地的通过手机或PC机了解并控制宿舍环境。每层宿舍都安装了监控器,管理可以通过网络实时看到宿舍的监控情况。

3)PC机上添加查询处理层,提高系统的实时性和自适应性,详细情况在第2节讲解。

该系统由多种传感器节点、通信网络和管理中心组成。该系统的管理中心为PC机,通信网络的核心为ZigBee网络,ZigBee中心节点和PC机通过串口进行通信。

由图1可知本系统的结构由3部分组成为:

1)数据采集模块:分为传感器采集环境数据和ZigBee网接收数据两部分。传感器负责采集宿舍的温湿度、光线、声音和烟雾等;ZigBee无线传感网络[7]利用节点将各个散列的传感器通过无线连接到一起,收集所有传感器采集到的数据。同时,ZigBee网络可以接收前台发出的控制命令,并将控制命令传输到传感器和控制器,以做出相应的行为。

2)控制中心模块:ZigBee网络的汇聚节点将采集到的环境数据通过串口传到PC机,由串口处理模块进行接收。

3)查询处理模块:分析并存储采集到环境数据的概要信息,判断采集信息是否超过了用户所设定的上限,更新用户界面。同时,接收用户的查询和对宿舍环境的控制信息。

查询处理模块是系统的核心模块,采用QT4来实现,该模块分为前台用户查询与控制和后台数据流处理、数据库查询及管理两大模块,依据面向对象的分析方法,得出该模块的结构图如图2所示:

前台分为7大界面:

主界面:用户登录系统后,到达主界面,主界面为用户呈现一个监控系统的概要情况;

系统配置界面:提供给用户配置系统通信串口和设置GPRS收发的接口,包括串口设置模块、GPRS通信设置模块;

视频监控界面:提供给用户各个楼层的视频监控信息,并可以调控各个楼层的摄像头,包括监控视频通信模块;

宿舍管理界面:提供给用户宿舍楼和宿舍成员的基本信息,包括宿舍信息管理模块;

用户管理界面:按用户的权限提供给用户相应的系统管理员的信息,包括系统管理员管理模块;

环境信息查询界面:提供给用户宿舍各种环境信息的查询,通过和查询处理核心模块通信来获得满足查询要求的数据信息;

实时监控界面:提供给用户宿舍各种环境信息的实时查询,由数据处理模块及时更新实时监控界面的数据,还可以调整曲线图时间粒度,此时需要查询处理核心模块的支持。

后台的数据库由SQL Server数据库和PI实时数据库构成,实时数据库PI负责收集和存储宿舍环境监控系统产生的实时数据,关系数据库SQL Server负责保存宿舍人员信息、系统管理员信息和一些环境参数。

前台和后台之间通过各种模块进行数据和控制信息的交流,以此给用户提供一个界面友好、实时性强和查询处理适应性强的系统。

后台的数据流的处理和存储的实现方法,以及前后台之间信息的交流过程由下面一章详细介绍。

2 系统数据流处理方案

2.1 系统数据流处理模型的结构

本系统的数据流处理的内容主要包括客户端、输入数据流监控、查询处理器、数据流处理和数据流存储。该方案具有以下特点:

1)为满足物理存储空间的限制和处理效率的要求,对于多数查询,通过一遍扫描数据流的方法得出结果,并采用两种类型的抽样存储历史数据,以便涉及到历史数据的特别查询和聚集查询可在用户指定的误差范围内返回近似查询结果;

2)具有友好的用户的接口,能对用户的查询具有良好的实时性响应,提供方便适应性的查询;

3)随着查询连续执行,系统环境不断变化,数据流本身特征也发生变化,系统可以动态的调整查询计划和调度操作符,以此获得较好的查询性能。同时,支持流数据源和传统数据源;

4)可以对流出异常数据的数据源进行查询处理,并且能够自适应的处理猝发或者大量到来的数据流;

图3为宿舍监控的DDSMS的结构[8]:

系统中的主要模块功能如下[9]:

客户端:客户端包括两个部分,手机客户端和PC机客户端。输入接口包括查询结果输出和警报输入,其中,查询结果会经过QoS监控和负载均衡,间接支配调度策略。查询接口接收用户的查询请求,输入到查询处理器中进行处理,查询的类型包括传统关系上的基本查询以及数据流上的连续查询和即席查询。客户端还可以直接对宿舍环境进行控制。

数据监控:主要是对数据流的流量进行监控和调整,以满足系统处理能力的需求。

查询处理器:主要负责客户端的连续查询的语法分析、查询计划生成、对数据流处理模块发送来的数据进行组装、负载均衡和服务质量(QoS)监控等功能。

数据流处理:根据通信协议对ZigBee通过串口流入的环境数据进行分析,发现有数据超过正常值的情况,则立即向客户端报警;随后对数据流进行概要存储,对存储的数据进行二次开发,实现了实时监控功能。

存储区:分为SQL Server数据库存储区和实时数据库存储区。实时数据库存储区有数据流存档、关系存储和元数据,在内存中有概要存储。SQL Server数据库负责存储客户信息和环境标准数据。

数据流处理过程:ZigBee网将采集到的环境数据通过串口传送到PC机,数据流首先进入监控模块,由物理流速率监控电路控制上述数据流的输入行为,解决时变和猝发的问题。然后进入数据流处理模块,将接收到的数据进行规范化转换,并进行上限检测,若发现超过设定的环境数据的上限则向前台报警,并调用GPRS通信模块向预设的手机号码发送警报短信。随后,数据流进入查询处理核心模块,开始数据流的查询处理和数据存档。

2.2 查询处理机制

2.2.1 查询语言

系统采取的查询语言具有与SQL相似的语法,支持对流和关系的定义、查询、删除和修改等几大操作。增加数据流上的时间粒度概念,支持时间粒度的选择,并在引用时间概念的时候还支持时间单位在默认时间粒度的基础上进行粗糙化。将所有的输入和输出都看作流[5],使用BEGIN-END语句指定窗口的类型和大小,NOW表示当前时间。另外,还引入Windows Spec Language(SQL-99)来定义数据流的存取方式。

2.2.2 查询计划

本系统的DDSMS中连续查询语法分析器相当于一个编译器[6],对用户注册的查询语句进行解析,首先,将查询语句转换成语法树表示,然后,经过语义检查器将其转换为临时的内部结构,若发现错误的查询语句则返回,随后,将查询的内部表示转换成逻辑查询计划,从这步开始客观的查询表示被转化为主观的计划。最后输出实际可运行并能较好分配资源的查询计划,用来指导查询执行器执行查询操作。

为满足查询优化和适应性的查询处理的各方面,系统在滑动窗口中采用合适的时间粒度进行统计信息动态收集,收集到的信息可形象地描绘为查询进度图。统计信息再经过整理与计算可转化为查询计划动态优化与操作符调度策略所需参数,运用这些参数便可构造出查询计划动态优化后的查询进度图与操作符调度后的查询片段图。在查询运行过程中,查询计划可以查看和编辑以此来动态优化,数据可以在查询计划间移动。根据查询的相对重要程度为查询分配权值,并将每个查询计划中的操作符作为一个线程[11],系统在由于资源限制而操作符特别多的时候,整个调度器只产生一个线程,在该线程中循环地调度每个查询计划中的每个操作符,调度的方法按权值的高低进行。针对同一数据源的多重查询[5],可以将新查询封装到一个已存在的查询计划中,而不是独立的查询计划,从而共享资源。

2.2.3 执行查询

系统中查询的类型包括传统关系上的基本查询以及数据流上的连续查询和即席查询。在本系统中用户提交查询信息后,首先,在带有时间参数的连续查询语法分析器中分析用户提交的查询,如果为基本的查询,则在SQL SERVER数据库中查询,若为数据流上的连续查询[8],则按照系统的查询计划,放置在注册查询缓冲中,查询执行器与输入数据流监视器通信,以此根据传输速率的变化而动态优化查询计划。数据缓存借助2种类型的队列实现push (流数据)和pull(传统关系数据)操作,查询缓冲中的查询和数据缓冲中的元组相互检查元组是否符合查询条件,实现新数据对旧查询、新查询对旧数据的双重检测;大纲用于在统计和近似连续查询时缓存数据的特征值,采用近似查询技术快速得出结果。查询执行器(scheduler)调度查询计划的执行,与负载均衡器(load shedder)协调工作,QoS监控控制负载均衡,间接支配调度策略。同时,元数据目录表记全系统的运行参数,其功能有全网的密度和连通性、系统负载和网络可靠性等内容,从而保证了系统快速准确的返回用户的查询结果。

2.2.4 历史数据流存档

系统采用一种[12]支持数据流历史数据的存储以及查询的方法,通过对历史数据实施两种类型的抽样存储(分别称为初始抽样和多层递阶抽样)来实现历史数据的存储。初始抽样对近期流出滑动窗口的历史数据实施抽样,将抽样后得到的样本存储在外存中,以减少历史数据对外存空间的占有量。多层递阶抽样对外存中的样本实施持续的再抽样存储,进一步减小样本数据对外存空间的存储压力。此外,为支持对数据流历史数据的查询,我们还在内存中建立了历史数据的概要存储[5]。概要存储利用流属性提供的周期性知识,从磁盘预先提取用户感兴趣的查询所涉及的数据,以减少处理时间和保证缓冲尺寸不超出界限。

3 系统实现和应用效果

3.1 系统实验环境

系统开发平台:QT 4.0

系统硬件配置:PC机,SIM300,ZigBee,温湿度传感器,声音传感器,烟雾传感器,亮度传感器,电流电压控制器。

数据库服务器:Microsoft SQL Server 2005,实时数据库。

操作系统要求:Windows XP/7 Linux

3.2 系统测试方案

由于系统实现的环境复杂,对于本文开发的系统,我们采用交叉测试(cross-test),使用有效的cross-test测试策略可极大的提高软件开发测试的水平和效率,在测试的各个阶段有着以下的策略:单元测试、集成测试、系统测试和确认测试。

3.3 测试数据和结果分析

1)当启动系统后在主机上会出现登录界面,管理员输入账号和密码后进入主界面,主界面如图4所示。

系统主界面是整个监控系统的概要界面,左下角的图标以变色闪烁的方式对异常数据进行报警。

2)点击主界面的实时监控按钮,进入实时监控页面,如图5所示。

系统根据用户的查询要求在实时数据库中查询数据,显示在系统实时监控页面上,并且根据采集环境数据的情况每5 秒钟更新一次,达到实时监控的目的,并且可以通过鼠标的上下滑动来调控曲线图上的时间精度。可通过点击监控视频按钮直接在右侧显示所查询宿舍的监控视频画面。

3)点击环境信息查询按钮,进入宿舍环境数据查询页面,如图6所示。

在查询对象上,可以根据用户需求输入不同的查询条件和查询精度,既可以查询某一或某些宿舍或宿舍楼的历史环境数据,也可以查询这些宿舍环境数据的特征值,如总和、报警情况等。并提供报表,将数据信息以可靠、安全的方式直观地呈现给用户。

对系统进行功能、稳定性等方面的调试,与一般的宿舍监控系统[1,4]相比优越性如下:

1)实时性:系统对宿舍的环境数据进行采集和处理,达到实时、真实、准确、统一的反应实时情况,为用户提供清晰、准确的宿舍环境画面。

2)灵活性:可以较大程度的满足用户的查询要求,支持连续查询,支持近似计算,支持流数据源和传统数据源,可调整查询的时间粒度,还可以提供宿舍环境监控的流数据挖掘和辅助决策功能。

3)适用范围广:系统能够存储海量的环境数据,并且能够长期保存重要的环境数据,可以监控大型的宿舍环境,是校园信息化的重要选择。

4 结束语

本文提出的数据流管理系统方案能够为宿舍监控系统提供可靠、稳定、灵活的数据处理平台。本系统既可以实时监控宿舍环境,预警危险情况,并且支持连续查询、近似计算、流数据源和传统数据源。为了更好的促进当代学生的学习和生活,本系统还需提供了数据挖掘和辅助决策功能,这也是本系统需要重点研究的问题。目前,我们正在努力将该系统实用化,投入到现实中,实现学校宿舍管理信息化。

参考文献:

[1] 付娜.基于无线传感器网络的宿舍环境数据采集系统[D].成都:西南交通大学,2010.

[2] 李兵.基于ZigBee无线嵌入式设备的设计与研究[D].北京:北京邮电大学,2007(3):7-20.

[3] 宋文,王兵,周应宾.无线传感器网络技术与应用[M]. 北京:电子工业出版社,2007:264-275.

[4] 杨浩杰,韩秀玲.一种智能家居监控系统的设计[J].技术交流,2011,27(2):49-55.

[5] 蔡维华,倪萍.流数据挖掘关键技术研究[D].北京:北京邮电大学,2010.

[6] 王久鹏,尚春阳.ZigBee和GPRS技术在无线监控系统中的应用[J].电讯技术,2008 (4):99-l02.

[7] 瞿雷,刘盛德,胡咸斌.ZigBee技术及应用[M]. 北京:北京航空航天大学出版社,2007:3-475

[8] 王永利,徐宏炳,董逸生.配电自动化的数据流管理系统设计[J].电力系统自动化,2004,28(13):85-89.

[9] 宋卫东.数据流管理系统的研究与设计[D].南京:南京航空航天大学,2005.

[10] 秦元坤,彭乐,薛一波.TSS数据流管理系统的设计与实现[J].计算机工程与设计,2008,29(13):3458-3461.

[11] 周杰.数据流管理系统的研究与设计[D].南京:南京航空航天大学,2007.

[12] 司开君.数据流连续查询处理技术的研究[D].南京:南京航空航天大学,2007.

上一篇:团场低段学生对写话喜好程度的现状及改进方法 下一篇:在音乐教学中提升学生心理素质