一种区域建筑能耗平台数据存储和查询方法

文档序号:10552977阅读:637来源:国知局
一种区域建筑能耗平台数据存储和查询方法
【专利摘要】本发明涉及一种区域建筑能耗平台数据存储和查询方法,用于对多栋建筑的能耗数据进行统一存储和查询,其特征在于,该方法包括数据存储过程和数据查询过程,数据存储过程针对每一个建筑分别启动一个监听线程,通过监听线程读取数据消息队列中的建筑能耗数据,建筑能耗数据包括建筑归属和数据上传时间,监听线程将建筑能耗数据写入与其建筑归属和数据上传时间所在时间段对应的数据库文件,数据查询过程针对查询请求中的建筑归属和数据上传时间,访问并读取对应的数据库文件,从而获得需要的能耗数据。与现有技术相比,本发明具硬件资源利用率高、初始化速度快、平台运行效率高、便于建筑能耗平台的扩展的优点。
【专利说明】
一种区域建筑能耗平台数据存储和查询方法
技术领域
[0001]本发明涉及一种数据存储和查询方法,尤其是涉及一种区域建筑能耗平台数据存储和查询方法。
【背景技术】
[0002]在区域建筑能耗监测平台中,建筑能耗的存储和访问是一项重要的技术之一。由于是平台级的应用,上百栋甚至上千栋的建筑能耗数据汇总到平台,数据量在一段年数过后,数据的积累量是相当惊人的。传统的做法是用商业的关系型数据库来实现大数据量的存储和访问,比如sql server及oracle数据库集群,基本可以满足一定规模的应用需求,但是系统平台的存储扩展成本非常高,维护也相当复杂,不适合平台规模迅速扩张的平台应用,还有目前流行的大数据平台,例如hadoop,可满足大数据存储,存储成本不高,但是不适合在线实时查询数据,维护的人员素质要求高;还有一些自由软件的小型关系型数据库同样不能满足大数据存储,高效访问的平台要求。
[0003]建筑能耗监测平台的特性是,所有的能耗数据都是通过能耗采集器上传上来,数据内容单一,但是数据量大,为了提高前台的查询速度,还必须对上传能耗数据进行汇总和统计处理,并生成相应的能耗汇总数据。由于该平台是一个面向运维人员的系统,系统前台访问量相对较少,前台web系统访问压力不大,所以不用考虑高并发的问题,只要考虑单次秒级访问即可。

【发明内容】

[0004]本发明的目的就是为了克服上述现有技术存在的缺陷而提供一种数据读写速度快、数据备份和维护方便的区域建筑能耗平台数据存储和查询方法。
[0005]本发明的目的可以通过以下技术方案来实现:
[0006]—种区域建筑能耗平台数据存储和查询方法,用于对多栋建筑的能耗数据进行统一存储和查询,其特征在于,该方法包括数据存储过程和数据查询过程,所述的数据存储过程针对每一个建筑分别启动一个监听线程,通过监听线程读取数据消息队列中的建筑能耗数据,所述的建筑能耗数据包括建筑归属和数据上传时间,监听线程将建筑能耗数据写入与其建筑归属和数据上传时间所在时间段对应的数据库文件,所述的数据查询过程针对查询请求中的建筑归属和数据上传时间,访问并读取对应的数据库文件,从而获得需要的能耗数据。
[0007]所述的数据存储过程通过以下步骤实现:
[0008]Sll,针对每一个建筑分别启动一个监听线程;
[0009]S12,监听线程访问数据消息队列,若队列中有建筑能耗数据,进入步骤S13,否则在设定的等待时长后,返回本步骤起点;
[0010]S13,监听线程读取建筑能耗数据并对其进行解析,获取建筑归属和数据上传时间,判断数据上传时间是否为整点或当天24点,若是,则进入步骤S17,否则进入步骤S14;
[0011]S14,监听线程将建筑能耗数据写入与所述建筑归属和数据上传时间所在时间段对应的瞬时仪表能耗数据库文件;
[0012]S15,监听线程根据能耗导则将建筑能耗数据转化成瞬时能耗导则数据;
[0013]S16,监听线程将瞬时能耗导则数据写入与所述建筑归属和数据上传时间所在时间段对应的瞬时能耗导则数据库文件,并返回步骤S12;
[0014]S17,监听线程计算出整点的小时累计能耗值或当天的累计能耗值,并写入与所述建筑归属和数据上传时间对应的小时或天仪表能耗数据库文件;
[0015]S18,监听线程根据能耗导则将建筑能耗数据转化成小时或天能耗导则数据;
[0016]S19,监听线程将小时或天能耗导则数据写入与所述建筑归属和数据上传时间对应的小时或天能耗导则数据库文件,并返回步骤S12。
[0017]所述的步骤S14、S16、S17和S19中,若对应数据库文件不存在,则监听线程动态生成对应数据库文件后,再将数据写入对应数据库文件。
[0018]所述的步骤S12中,所述的等待时长与建筑能耗数据上传至数据消息队列的最小周期相同。
[0019]所述的步骤S13中,所述的数据上传时间精确到I分钟。
[0020]所述的数据上传时间所在时间段根据小时单位的数值判断。
[0021 ]所述的数据查询过程通过以下步骤实现:
[0022]S21,查询客户端向查询处理引擎提交查询请求;
[0023]S22,查询处理引擎收到查询请求后对其进行解析,得到查询条件,包括建筑归属、数据类型和数据覆盖的时间段;
[0024]S23,访问符合查询条件的至少一个数据库文件,并从中读取要查询的数据;
[0025]S24,将查询到的数据发送给查询客户端,若数据为多个,则先进行数据拼接。
[0026]所述的建筑归属指建筑的编号或编码,所述的数据类型为瞬时仪表能耗数据、瞬时能耗导则数据、小时或天仪表能耗数据或小时或天能耗导则数据中的一种。
[0027]所述的数据存储过程和数据查询过程分别通过数据存储引擎和数据查询引擎实现,所述的数据存储引擎和数据查询引擎相互独立。
[0028]所述的数据库文件存储在独立于平台的存储器上。
[0029]与现有技术相比,本发明具有以下优点:
[0030](I)建筑能耗数据包括建筑归属和数据上传时间,用以将数据写入与建筑归属和数据上传时间所在时间段对应的数据库文件,减小每个文件的大小,大大提高了数据的写入及读取速度;针对每一个建筑分别启动一个监听线程,提高平台运行效率,便于建筑能耗平台的扩展。
[0031](2)将建筑能耗数据分为四类,分别为瞬时仪表能耗数据、瞬时能耗导则数据、小时或天仪表能耗数据或小时或天能耗导则数据,在数据写入之前就进行归类或转化,合理利用两次数据上传时间之间的间隔,提高平台的硬件资源利用效率。
[0032](3)若数据写入时,对应数据库文件不存在,则监听线程动态生成对应数据库文件后,再将数据写入对应数据库文件,提高平台初始化速度。
[0033](4)访问数据消息队列的等待时长与建筑能耗数据上传至数据消息队列的最小周期相同,即与能耗数据采集的周期相适应,避免不必要的数据访问。
[0034](5)数据存储过程和数据查询过程分别通过相互独立的数据存储引擎和数据查询引擎实现,便于开发人员的开发工作。
[0035](6)数据库文件独立存在于平台之外,数据查询引擎在平台上,数据的备份和维护非常方便,只需拷贝和恢复相应的文件就可以达到备份和恢复数据的需求。
【附图说明】
[0036]图1为本发明方法中数据存储过程的流程示意图;
[0037]图2为本发明方法中数据查询过程的流程示意图。
【具体实施方式】
[0038]下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
[0039]实施例
[0040]—种区域建筑能耗平台数据存储和查询方法,用于对多栋建筑的能耗数据进行统一存储和查询,该方法包括数据存储过程和数据查询过程,数据存储过程针对每一个建筑分别启动一个监听线程,通过监听线程读取数据消息队列中的建筑能耗数据,建筑能耗数据包括建筑归属和数据上传时间,监听线程将建筑能耗数据写入与其建筑归属和数据上传时间所在时间段对应的数据库文件,数据查询过程针对查询请求中的建筑归属和数据上传时间,访问并读取对应的数据库文件,从而获得需要的能耗数据。
[0041]如图1所示,数据存储过程通过以下步骤实现:
[0042]Sll,针对每一个建筑分别启动一个监听线程;
[0043]S12,监听线程访问数据消息队列,若队列中有建筑能耗数据,进入步骤S13,否则在设定的等待时长后,返回本步骤起点;等待时长与建筑能耗数据上传至数据消息队列的最小周期相同,因为数据上传间隔基本在I分钟到5分钟,所以待处理的消息队列如果为空的话,默认等待一分钟,也可通过参数设置成其他时间间隔;
[0044]S13,监听线程读取建筑能耗数据并对其进行解析,获取建筑归属和数据上传时间,判断数据上传时间是否为整点或当天24点,若是,则进入步骤S17,否则进入步骤S14;数据上传时间精确到I分钟,即数据上传时间判断时,根据分钟单位的数值来判断,满足能耗分析的精度要求,避免过多计算。
[0045]S14,监听线程将建筑能耗数据写入与建筑归属和数据上传时间所在时间段对应的瞬时仪表能耗数据库文件;数据上传时间所在时间段根据其小时单位的数值进行判断,例如;
[0046]S15,监听线程根据能耗导则将建筑能耗数据转化成瞬时能耗导则数据;
[0047]S16,监听线程将瞬时能耗导则数据写入与建筑归属和数据上传时间所在时间段对应的瞬时能耗导则数据库文件,并返回步骤S12;
[0048]S17,监听线程计算出整点的小时累计能耗值或当天的累计能耗值,并写入与所述建筑归属和数据上传时间对应的小时或天仪表能耗数据库文件;对于小时累计能耗值的计算,可先查询已有的瞬时仪表能耗数据库文件中的数据,读取所需要的数据;对于当天的累计能耗值的计算,可先查询已有应的小时或天仪表能耗数据库文件,读取所需要的小时累计能耗值数据,进行累加计算;
[0049]S18,监听线程根据能耗导则将建筑能耗数据转化成小时或天能耗导则数据;
[0050]S19,监听线程将小时或天能耗导则数据写入与建筑归属和数据上传时间对应的小时或天能耗导则数据库文件,并返回步骤S12。
[0051]步骤S14、S16、S17和S19中,若对应数据库文件不存在,则监听线程动态生成对应数据库文件后,再将数据写入对应数据库文件,减少平台初始化时的工作量。
[0052]在数据存储过程中,监听线程上限数可通过参数配置,根据机器的性能,特别是硬盘的读写速度,原则上不操过500个,超过后,可通过增加服务器在增加一个数据存储引擎,来均衡处理负载;对各数据库文件的写操作之前的访问,采用路由访问,路由访问适用于扩展性强的平台网络;建筑能耗数据通过能耗监测仪传输到数据消息队列中,方式为无线传输或有线传输,优选为便于进行平台扩展的无线传输。
[0053 ] 如图2所示,数据查询过程通过以下步骤实现:
[0054]S21,查询客户端向查询处理引擎提交查询请求;查询客户端可为手机、电脑等电子设备;
[0055]S22,查询处理引擎收到查询请求后对其进行解析,得到查询条件,包括建筑归属、数据类型和数据覆盖的时间段;
[0056]S23,访问符合查询条件的至少一个数据库文件,并从中读取要查询的数据;
[0057]S24,将查询到的数据发送给查询客户端,若数据为多个,则先进行数据拼接合并,再发送给查询客户端。
[0058]建筑归属指建筑的编号或编码,数据类型为瞬时仪表能耗数据、瞬时能耗导则数据、小时或天仪表能耗数据或小时或天能耗导则数据中的一种。
[0059]数据存储过程和数据查询过程分别通过数据存储引擎和数据查询引擎实现,数据存储引擎和数据查询引擎相互独立;数据库文件存储在独立于平台的存储器上,通过REST的接口,数据可以很方便的被读取,所有复杂的操作都封装到了数据查询引擎里,方便了开发人员的开发工作。
[0060]本平台对机器配置要求不高,IT的磁盘可以存储200栋建筑10年的完整数据,大大节约了硬件的投入。
【主权项】
1.一种区域建筑能耗平台数据存储和查询方法,用于对多栋建筑的能耗数据进行统一存储和查询,其特征在于,该方法包括数据存储过程和数据查询过程,所述的数据存储过程针对每一个建筑分别启动一个监听线程,通过监听线程读取数据消息队列中的建筑能耗数据,所述的建筑能耗数据包括建筑归属和数据上传时间,监听线程将建筑能耗数据写入与其建筑归属和数据上传时间所在时间段对应的数据库文件,所述的数据查询过程针对查询请求中的建筑归属和数据上传时间,访问并读取对应的数据库文件,从而获得需要的能耗数据。2.根据权利要求1所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的数据存储过程通过以下步骤实现: SI I,针对每一个建筑分别启动一个监听线程; S12,监听线程访问数据消息队列,若队列中有建筑能耗数据,进入步骤S13,否则在设定的等待时长后,返回本步骤起点; S13,监听线程读取建筑能耗数据并对其进行解析,获取建筑归属和数据上传时间,判断数据上传时间是否为整点或当天24点,若是,则进入步骤S17,否则进入步骤S14; S14,监听线程将建筑能耗数据写入与所述建筑归属和数据上传时间所在时间段对应的瞬时仪表能耗数据库文件; S15,监听线程根据能耗导则将建筑能耗数据转化成瞬时能耗导则数据; S16,监听线程将瞬时能耗导则数据写入与所述建筑归属和数据上传时间所在时间段对应的瞬时能耗导则数据库文件,并返回步骤S12; S17,监听线程计算出整点的小时累计能耗值或当天的累计能耗值,并写入与所述建筑归属和数据上传时间对应的小时或天仪表能耗数据库文件; S18,监听线程根据能耗导则将建筑能耗数据转化成小时或天能耗导则数据; S19,监听线程将小时或天能耗导则数据写入与所述建筑归属和数据上传时间对应的小时或天能耗导则数据库文件,并返回步骤S12。3.根据权利要求2所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的步骤S14、S16、S17和S19中,若对应数据库文件不存在,则监听线程动态生成对应数据库文件后,再将数据写入对应数据库文件。4.根据权利要求2所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的步骤S12中,所述的等待时长与建筑能耗数据上传至数据消息队列的最小周期相同。5.根据权利要求2所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的步骤S13中,所述的数据上传时间精确到I分钟。6.根据权利要求1或2所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的数据上传时间所在时间段根据小时单位的数值判断。7.根据权利要求2所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的数据查询过程通过以下步骤实现: S21,查询客户端向查询处理引擎提交查询请求; S22,查询处理引擎收到查询请求后对其进行解析,得到查询条件,包括建筑归属、数据类型和数据覆盖的时间段; S23,访问符合查询条件的至少一个数据库文件,并从中读取要查询的数据; S24,将查询到的数据发送给查询客户端。8.根据权利要求7所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的建筑归属指建筑的编号或编码,所述的数据类型为瞬时仪表能耗数据、瞬时能耗导则数据、小时或天仪表能耗数据或小时或天能耗导则数据中的一种。9.根据权利要求1所述的一种区域建筑能耗平台数据存储和查询方法,其特征在于,所述的数据存储过程和数据查询过程分别通过数据存储引擎和数据查询引擎实现,所述的数据存储弓I擎和数据查询弓I擎相互独立。
【文档编号】G06F17/30GK105912621SQ201610213019
【公开日】2016年8月31日
【申请日】2016年4月7日
【发明人】王兴荣, 曹文龙
【申请人】上海上实龙创智慧能源科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1