《一种大数据量设备实时监测数据的存储及检索方法.pdf》由会员分享,可在线阅读,更多相关《一种大数据量设备实时监测数据的存储及检索方法.pdf(10页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102902797 A (43)申请公布日 2013.01.30 C N 1 0 2 9 0 2 7 9 7 A *CN102902797A* (21)申请号 201210382597.1 (22)申请日 2012.10.11 G06F 17/30(2006.01) (71)申请人福建亿同世纪软件有限公司 地址 350000 福建省福州市鼓楼区铜盘路软 件大道89号福州软件园B区4号楼 (72)发明人蒋书贵 陈章恒 叶守强 林健金 池垂淡 范元飞 李小进 周锦惠 林学通 席春明 (74)专利代理机构福州市鼓楼区京华专利事务 所(普通合伙) 35212 代理人宋连梅 (。
2、54) 发明名称 一种大数据量设备实时监测数据的存储及检 索方法 (57) 摘要 一种大数据量设备实时监测数据的存储及 检索方法,包括:将数据文件按年、月存放在二级 目录中;在监测信息实时记录的过程中每天生成 一个索引文件和数据文件;索引文件分成两个部 分,第一部分为索引目录,第二部分为周期数据索 引;周期数据索引记录每个采集周期各个类型信 息在数据文件具体位置地址以及数据长度,字节 大小根据实际情况增加或减少字节数以达到最佳 使用效果;当用户输入查询条件,选择需要查询 的设备类型、数据类型以及起始时间t1、结束时 间t2;通过简单匹配和计算依次取出当前数据文 件中符合查询条件的所有信息值。本。
3、发明提供了 一种大数据量设备实时监测数据的存储及检索方 法。 (51)Int.Cl. 权利要求书1页 说明书6页 附图2页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 6 页 附图 2 页 1/1页 2 1.一种大数据量设备实时监测数据的存储及检索方法,其特征在于:包括如下步骤: 将数据文件按年、月存放在二级目录中;索引文件与数据文件均为二进制文件,具有不 同的扩展名,且都遵循相同的命名规则,即文件名中包含年月日时间标识,年月日时间标识 用于索引文件和数据文件的初级检索; 在监测信息实时记录的过程中每天生成一个索引文件和数据文件; 索引文件分成两个部。
4、分,第一部分为索引目录,第二部分为周期数据索引; 索引目录记录每一分钟起始周期数据索引的地址位置信息,若每日单个数据文件小于 4GB,那么地址位置信息用4个字节表示,若每日单个数据文件大于4GB小于1TB,那么地址 位置信息用5个字节表示;索引目录总计占用字节数=每分钟单位地址字节数*60分钟*24 小时,按照每分钟单位地址占用4字节计算,索引目录总计占用5760字节; 周期数据索引记录每个采集周期各个类型信息在数据文件具体位置地址以及数据长 度,字节大小根据实际情况增加或减少字节数以达到最佳使用效果; 当用户输入查询条件,选择需要查询的设备类型、数据类型以及起始时间t1、结束时间 t2; 遍。
5、历所有索引文件和数据文件,根据起始时间日期匹配对应的索引文件和数据文件; 索引文件和数据文件存放于/年/月的二级文件夹中,根据起始时间年份找到年文 件夹,根据起始时间月份找到年文件夹下的月文件夹,根据起始时间日期,转换成带后缀的 索引文件名和数据文件名,匹配月文件夹下的文件名称,找到索引文件和数据文件; 打开并加载索引文件; 根据起始时间的时/分在索引文件的索引目录中找到对应时/分标志指向的索引文件 周期数据索引地址; 根据设备序号匹配当期周期数据索引中的设备序号,找到当前时间、当期设备序号所 在数据文件中的偏移地址; 根据数据类型编号,取出当前设备序号下数据类型编号存储的数据值; 获取当前查。
6、询信息下一个周期数据; 快速计算出下一个周期设备索引地址,并快速定位数据文件中设备信息偏移地址,匹 配数据类型编号,从而取出查询条件第二周期数据值; 以此类推,通过简单匹配和计算依次取出当前数据文件中符合查询条件的所有信息 值。 权 利 要 求 书CN 102902797 A 1/6页 3 一种大数据量设备实时监测数据的存储及检索方法 【 技术领域 】 0001 本发明涉及一种大数据量设备实时监测数据的存储及检索方法,特别涉及一种基 于特定协议的实时监测数据的文件存储及高效数据检索方法。 【 背景技术 】 0002 文件数据库又叫嵌入式数据库,将整个数据库的内容保存在单个索引文件中,以 便于数。
7、据库的发布。而传统数据库(如:DB2,Oracle,SQL server等)数据保存的方式各异。 传统的数据库需要通过一些数据库引擎来访问,由于文件型数据库保存在单一文件中,数 据库的部署和发布都比较简单,适用于内嵌在应用程序中。数据量不是太大时,速度比传统 数据库要快。 0003 文本类型数据文件安全性差,数据检索效率低等特点。特别是海量监测数据的 存储,一般情况下都是存传统数据库或者文本文件,传统数据库需要额外安装庞大的数据 库软件,而且还有很多限制,如SQL Server2000中的VarChar类型最大只能存8000字符, Access文件单个最大只能支持4GB文件。 0004 而对于。
8、数据检索来说,最重要的就是检索的精度与速度。检索的精度基本取决于 编程人员的水平,而检索的速度则受到多种因素的影响。其中,索引技术是数据库管理系统 中最常用的提高检索速度的手段。 0005 文本数据文件则缺乏较高的数据检索效率,一般监测数据的文本存储方式:每 一行表示一条记录;每条记录由一个时间字段以及一个或多个数据内容字段构成。如表 1所示: 0006 表1 0007 0008 0009 当一次查询某一时间段(时间i到时间j)设备A的所有数据做数据报表时,需要 加载整个文件,逐条判断时间i到时间j所在的区间位置,当数据文件较大时,检索效率很 低。 0010 有鉴于此,本发明人针对现有技术的缺。
9、陷深入研究,并有本案产生。 【 发明内容 】 0011 本发明要解决的技术问题,在于提供一种大数据量设备实时监测数据的存储及检 说 明 书CN 102902797 A 2/6页 4 索方法。 0012 本发明是这样实现的: 0013 一种大数据量设备实时监测数据的存储及检索方法,包括如下步骤: 0014 将数据文件按年、月存放在二级目录中;索引文件与数据文件均为二进制文件,具 有不同的扩展名,且都遵循相同的命名规则,即文件名中包含年月日时间标识,年月日时间 标识用于索引文件和数据文件的初级检索; 0015 在监测信息实时记录的过程中每天生成一个索引文件和数据文件; 0016 索引文件分成两个部。
10、分,第一部分为索引目录,第二部分为周期数据索引; 0017 索引目录记录每一分钟起始周期数据索引的地址位置信息,若每日单个数据文件 小于4GB,那么地址位置信息用4个字节表示,若每日单个数据文件大于4GB小于1TB,那么 地址位置信息用5个字节表示;索引目录总计占用字节数=每分钟单位地址字节数*60分 钟*24小时,按照每分钟单位地址占用4字节计算,索引目录总计占用5760字节; 0018 周期数据索引记录每个采集周期各个类型信息在数据文件具体位置地址以及数 据长度,字节大小根据实际情况增加或减少字节数以达到最佳使用效果; 0019 当用户输入查询条件,选择需要查询的设备类型、数据类型以及起始。
11、时间t1、结束 时间t2; 0020 遍历所有索引文件和数据文件,根据起始时间日期匹配对应的索引文件和数据文 件; 0021 索引文件和数据文件存放于/年/月的二级文件夹中,根据起始时间年份找到 年文件夹,根据起始时间月份找到年文件夹下的月文件夹,根据起始时间日期,转换成带后 缀的索引文件名和数据文件名,匹配月文件夹下的文件名称,找到索引文件和数据文件; 0022 打开并加载索引文件; 0023 根据起始时间的时/分在索引文件的索引目录中找到对应时/分标志指向的索引 文件周期数据索引地址; 0024 根据设备序号匹配当期周期数据索引中的设备序号,找到当前时间、当期设备序 号所在数据文件中的偏移。
12、地址; 0025 根据数据类型编号,取出当前设备序号下数据类型编号存储的数据值; 0026 获取当前查询信息下一个周期数据; 0027 快速计算出下一个周期设备索引地址,并快速定位数据文件中设备信息偏移地 址,匹配数据类型编号,从而取出查询条件第二周期数据值; 0028 以此类推,通过简单匹配和计算依次取出当前数据文件中符合查询条件的所有信 息值。 0029 本发明的优点在于:用户在存储数据的时候,可以根据年、月、日存储二进制文件, 每天两个二进制文件,数据文件和索引文件,文件依据日期命名。用户无需安装较为庞大第 三方的数据库系统软件,如:Oracl e、MS SQL等。按照存储一个月的数据来。
13、计算的话,每月 生成的文件数量也就是30*2=60个。通过将存储信息分成索引文件和数据文件两个文件, 索引文件中用于记录各类型数据的时间以及指向数据文件中各类型数据值,数据文件用于 记录采集到的各类数据信息值。本发明依据构建的特殊索引文件(索引目录和周期数据索 引),通过快速计算方式定位数据所在偏移地址,从而取出符合查询条件的信息数据。有效 说 明 书CN 102902797 A 3/6页 5 的解决了海量数据的检索速度慢的问题。在进行数据导出的时候,也只需要根据需要导出 数据的时间范围,拷贝文件目录下对应时间数据文件和索引文件即可,有效解决第三方数 据库软件在导出大数据量信息时,导出时间慢的。
14、问题。 【 附图说明 】 0030 下面参照附图结合实施例对本发明作进一步的描述。 0031 图1是本发明中的数据检索的流程图。 0032 图2是本发明中的数据检索系统结构图。 【 具体实施方式 】 0033 一种大数据量设备实时监测数据的存储与检索方法,包括如下步骤: 0034 将数据文件按年、月存放在二级目录中;索引文件与数据文件均为二进制文件,具 有不同的扩展名,且都遵循相同的命名规则,即文件名中包含年月日时间标识,年月日时间 标识用于索引文件和数据文件的初级检索; 0035 在监测信息实时记录的过程中每天生成一个索引文件和数据文件; 0036 索引文件分成两个部分,第一部分为索引目录,。
15、第二部分为周期数据索引; 0037 索引目录记录每一分钟起始周期数据索引的地址位置信息,如表2所示,若每日 单个数据文件小于4GB,那么地址位置信息用4个字节表示,若每日单个数据文件大于4GB 小于1TB,那么地址位置信息用5个字节表示;索引目录总计占用字节数=每分钟单位地址 字节数*60分钟*24小时,按照每分钟单位地址占用4字节计算,索引目录总计占用5760 字节; 0038 表2 0039 分钟标志 00:00 00:01 00:02 . 23:57 23:58 23:59 偏移地址 M0 M1 M2 . M1437 M1438 M1439 0040 周期数据索引记录每个采集周期各个类型。
16、信息在数据文件具体位置地址以及数 据长度,字节大小根据实际情况增加或减少字节数以达到最佳使用效果;如表3所示: 0041 表3 0042 内容 大小 时间1 4个字节 设备序号1 1个字节 偏移地址 4个字节 长度 2个字节 说 明 书CN 102902797 A 4/6页 6 设备序号2 1个字节 偏移地址 4个字节 长度 2个字节 . . 设备序号N 1个字节 偏移地址 4个字节 长度 2个字节 0043 0044 设备序号:从1开始,代表设备编号(1个字节可表示256个设备,如果不够用,可 适当增加)。 0045 偏移地址:当前时间当前序号设备的开关量或模拟量信息在数据文件中的偏移地 址。
17、(4个字节可表示4GB文件偏移地址,如果文件更大,可适当增加)。 0046 长度:开关量或模拟量信息内容的长度。 0047 数据文件存数据类型编号和值,如表4所示: 0048 表4 0049 说 明 书CN 102902797 A 5/6页 7 0050 0051 序号:即设备序号。 0052 数据类型:即设备各种类型数据的编号,例如:1表示功出电压,2表示功出电流等 等。 0053 值:各种模拟量,开关量数据值。 0054 如图1所示,是本发明的数据检索流程图。当用户输入查询条件,选择需要查询的 设备类型、数据类型以及起始时间t1、结束时间t2。 0055 遍历所有索引文件和数据文件,根据起。
18、始时间日期匹配对应的索引文件和数据文 件。 0056 索引文件和数据文件存放于/年/月的二级文件夹中,根据起始时间年份找到 年文件夹,根据起始时间月份找到年文件夹下的月文件夹,根据起始时间日期,转换成带后 缀的索引文件名和数据文件名,匹配月文件夹下的文件名称,找到索引文件和数据文件; 0057 打开并加载索引文件; 0058 根据起始时间的时/分在索引文件的索引目录中找到对应时/分标志指向的索引 文件周期数据索引地址; 说 明 书CN 102902797 A 6/6页 8 0059 根据设备序号匹配当期周期数据索引中的设备序号,找到当前时间、当期设备序 号所在数据文件中的偏移地址; 0060 。
19、根据数据类型编号,取出当前设备序号下数据类型编号存储的数据值; 0061 获取当前查询信息下一个周期数据; 0062 由于周期数据索引中每一个周期的索引信息长度固定,周期索引信息字节长度= 时间+(设备序号+偏移地址+数据长度)*设备总数,因此可以快速计算出下一个周期设 备索引地址,并快速定位数据文件中设备信息偏移地址,匹配数据类型编号,从而取出查询 条件第二周期数据值; 0063 以此类推,通过简单匹配和计算依次取出当前数据文件中符合查询条件的所有信 息值。 0064 图2是本发明中的数据检索系统结构图。 0065 以上所述仅为本发明的较佳实施用例而已,并非用于限定本发明的保护范围。凡 在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的 保护范围之内。 说 明 书CN 102902797 A 1/2页 9 图1 说 明 书 附 图CN 102902797 A 2/2页 10 图2 说 明 书 附 图CN 102902797 A 10 。