连续时间段时间戳序号索引分钟冻结的存储和查找方法技术

技术编号:18398747 阅读:31 留言:0更新日期:2018-07-08 19:27
本发明专利技术公开了一种连续时间段时间戳序号索引分钟冻结的存储和查找方法,包括将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储;根据连续时间段,对分方案存储内的冻结数据提出识别和划分连续时间段;建立时间戳序号索引循环队列;根据建立的时间戳序号索引,提供基于时间戳序号索引的查找方法,得到该连续时间段内的任何一条记录的实际存储位置。本发明专利技术不用建立月索引表、日索引表、时索引表,就可以实现海量分钟冻结记录数据存储和查找方法,大大提高了查找效率,在提高查找效率之外,能大大压缩索引空间,有效压缩记录存储空间,具有良好的应用前景。

【技术实现步骤摘要】
连续时间段时间戳序号索引分钟冻结的存储和查找方法
本专利技术涉及智能电能表
,具体涉及一种连续时间段时间戳序号索引分钟冻结的存储和查找方法。
技术介绍
随着国家经济技术的发展和人们生活水平的提高,电能已经成为了人们生产和生活中必不可少的二次能源,给人们的生产和生活带来了无尽的便利。电能表作为电力系统中计量电能的唯一部件,其重要性和可靠性不言而喻。分钟冻结是智能电表对电力系统运行过程中实时电力负荷运行状态、特征的记录,智能电表按用户设定的时间间隔周期记录分钟冻结记录,分钟冻结记录哪些数据对象由用户设定,每个数据对象记录的间隔周期和记录的最大深度用户可设。随着智能电网建设的深入和大数据技术的推广应用,智能电能表对分钟冻结的要求越来越高,最新的规范要求智能电能表能记录最近28800条分钟冻结记录,并要能支持按时间点,按时间段范围查找分钟冻结记录;随着用户对分钟冻结记录条数要求的增加,必然增加了分钟冻结的存储容量,更是加大了分钟冻结的查找难度,如如何快速高效的查找分钟冻结记录是当前需要解决的问题。目前,常用的电能表分钟冻结存储和查找方法,具体如下:(1)顺序存储查找法,其基本原理是依次顺序存储分钟冻结记录,存储每条记录时同时存储记录的时标,查找时以时间作为索引在整个记录空间按二分法进行查找,其的缺点在于:要采用二分法遍历整个记录空间,随着记录条数的增加,查找指定时间点的记录需要的时间越长,查找的效率低,条数增加到一定条数时不能满足用户的需求;(2)不采纳传统的二分法遍历整个记录空间,而是对于每类分钟冻结记录,建立月索引表、日索引表、时索引表,在存储每条记录时维护月索引表、日索引表、时索引表,然后查找时通过查找月索引表、日索引表、时索引表得到对应的记录,其的缺点在于:每当存储1类分钟冻结记录,要同时更新此类分钟冻结记录的月索引表、日索引表、时索引表,算法繁杂;查找1类分钟冻结记录,要依次查找月索引表、日索引表、时索引表才能得到此类分钟冻结记录某个小时内分钟冻结记录的起始地址,如果分钟冻结记录的存储时间间隔为1分钟(也就是此小时内有60个分钟冻结记录),还要在此类分钟冻结记录的60个记录中进行进一步的顺序查找才能得到这个小时内具体那个分钟的记录(如果是这个小时的59分的记录,要顺序查找59次才能得到59分的分钟冻结记录),而无法通过一次线性计算直接得到记录的地址;另外,通过建立月索引,顶多只能保存最近一年的数据,而不能保存最近多年的数据,要想保存的记录数多,则建立的月索引、日索引、小时索引也越多;如何克服上述问题,是当前急需要解决的。
技术实现思路
本专利技术的目的是克服现有的电能表分钟冻结存储和查找方法,所存在的问题。本专利技术的连续时间段时间戳序号索引分钟冻结的存储和查找方法,不用建立月索引表、日索引表、时索引表,就可以实现海量分钟冻结记录数据存储和查找方法,大大提高了查找效率,在提高查找效率之外,能大大压缩索引空间,有效压缩记录存储空间,具有良好的应用前景。为了达到上述目的,本专利技术所采用的技术方案是:一种连续时间段时间戳序号索引分钟冻结的存储和查找方法,包括以下步骤,步骤(A),将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储;步骤(B),根据连续时间段,对分方案存储内的冻结数据提出识别和划分连续时间段,所述连续时间段,是指一个中间没有经历掉电或者改时间的连续自然时间段,在这个连续时间段内,前、后两个冻结点之间的时间间隔等于冻结周期;若发生掉电或者改时间,导致记录不连续的事件,则新建一个新的连续时间段;步骤(C),建立时间戳序号索引循环队列,在步骤(B)每新建一个新的连续时间段为该连续时间段的第一条记录建立一个时间戳序号索引,所述时间戳序号索引,包含该连续时间段内第一条记录的时间戳以及第一条记录的序号;步骤(D),根据建立的时间戳序号索引,提供基于时间戳序号索引的查找方法,采用二分法在时间戳序号循环队列进行查找,查找到用户请求记录所在的时间戳序号索引,得到对应的连续时间段内第一条记录的时间戳以及第一条记录的序号,从而计算出该连续时间段内任何一条记录的发生时间和记录序号,并根据记录序号,得到该连续时间段内的任何一条记录的实际存储位置。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,步骤(A),将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储,要为每个方案划分存储记录的数据区物理块,同时为每个方案划分存储时间戳序号索引循环队列的索引区物理块,所述每个方案划分存储记录的数据区物理块每个冻结项的冻结周期相同,且每条冻结记录的数据长度是等长的,即数据区物理块为等长的循环队列数据区,在知道一条记录的序号,根据该记录的序号,直接计算出此条记录在物理空间的存储偏移值OFFSET,计算公式为OFFSET=(RCD_SEQ_NO%MAX)*RCRD_SZ,其中,RCD_SEQ_NO为该记录的序号,MAX为分配给此分方案存储方案的最大存储空间条目数,RCRD_SZ为单条记录的长度。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,步骤(B),若发生掉电或者改时间,导致记录不连续的事件,则新建一个新的连续时间段,所述发生掉电或者改时间,导致记录不连续的事件是指发生掉电或者改时间跨过对应的冻结周期时,则新建一个新的连续时间段。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,步骤(C),所述时间戳序号索引,包含该连续时间段内第一条记录的时间戳以及第一条记录的序号,所述时间戳为第一条记录发生时间相对冻结基准时间的分钟数,并占四个字节空间;所述第一条记录的序号为每条记录存储时,分配给每条记录的逻辑序号,序号从零开始,最近一条记录的序号为CNTS–1,CNTS为该分方案存储方案的总记录条数,序号占四个字节空间。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,所述冻结基准时间为为2000年1月1日0时0分,可根据需要进行调节。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,步骤(D),从而计算出该连续时间段内任何一条记录的发生时间和记录序号,并根据记录序号,得到该连续时间段内的任何一条记录的实际存储位置,包括以下步骤,(D11),将用户请求时间减去此连续时间段上第一个记录点的时间戳得到一个时间差,将该时间差除以该分方案存储方案的冻结周期,得到用户请求记录为此连续时间段的第几条记录RCD_NUM。(D12),根据得到的用户请求记录为此连续时间段的第几条记录RCD_NUM,计算出该用户请求记录的序号,该序号为时间戳序号索引保存的第一条记录的序号加上RCD_NUM,并根据该记录的序号,直接计算出此条记录在物理空间的存储偏移值,即得到此条记录的实际存储位置。前述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,步骤(D),当计算一个分方案存储方案中连续时间段内第N次记录的实际存储位置时,包括以下步骤,(D21),第N次记录的序号SEQ_NO的计算公式为,SEQ_NO=CNTS–N;其中,CNTS为该分方案存储方案的总记录条数;(D22),根据第N次记录的序号SEQ_NO,直接计算出第N次记录在物理空间的存储偏移值,即得到此条记录本文档来自技高网
...

【技术保护点】
1.一种连续时间段时间戳序号索引分钟冻结的存储和查找方法,其特征在于:包括以下步骤,步骤(A),将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储;步骤(B),根据连续时间段,对分方案存储内的冻结数据提出识别和划分连续时间段,所述连续时间段,是指一个中间没有经历掉电或者改时间的连续自然时间段,在这个连续时间段内,前、后两个冻结点之间的时间间隔等于冻结周期;若发生掉电或者改时间,导致记录不连续的事件,则新建一个新的连续时间段;步骤(C),建立时间戳序号索引循环队列,在步骤(B)每新建一个新的连续时间段为该连续时间段的第一条记录建立一个时间戳序号索引,所述时间戳序号索引,包含该连续时间段内第一条记录的时间戳以及第一条记录的序号;步骤(D),根据建立的时间戳序号索引,提供基于时间戳序号索引的查找方法,采用二分法在时间戳序号循环队列进行查找,查找到用户请求记录所在的时间戳序号索引,得到对应的连续时间段内第一条记录的时间戳以及第一条记录的序号,从而计算出该连续时间段内任何一条记录的发生时间和记录序号,并根据记录序号,得到该连续时间段内的任何一条记录的实际存储位置。...

【技术特征摘要】
1.一种连续时间段时间戳序号索引分钟冻结的存储和查找方法,其特征在于:包括以下步骤,步骤(A),将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储;步骤(B),根据连续时间段,对分方案存储内的冻结数据提出识别和划分连续时间段,所述连续时间段,是指一个中间没有经历掉电或者改时间的连续自然时间段,在这个连续时间段内,前、后两个冻结点之间的时间间隔等于冻结周期;若发生掉电或者改时间,导致记录不连续的事件,则新建一个新的连续时间段;步骤(C),建立时间戳序号索引循环队列,在步骤(B)每新建一个新的连续时间段为该连续时间段的第一条记录建立一个时间戳序号索引,所述时间戳序号索引,包含该连续时间段内第一条记录的时间戳以及第一条记录的序号;步骤(D),根据建立的时间戳序号索引,提供基于时间戳序号索引的查找方法,采用二分法在时间戳序号循环队列进行查找,查找到用户请求记录所在的时间戳序号索引,得到对应的连续时间段内第一条记录的时间戳以及第一条记录的序号,从而计算出该连续时间段内任何一条记录的发生时间和记录序号,并根据记录序号,得到该连续时间段内的任何一条记录的实际存储位置。2.根据权利要求1所述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,其特征在于:步骤(A),将冻结周期间隔相同的冻结数据一起存储,冻结周期间隔不同的冻结数据分别存储,形成分方案存储,要为每个方案划分存储记录的数据区物理块,同时为每个方案划分存储时间戳序号索引循环队列的索引区物理块,所述每个方案划分存储记录的数据区物理块每个冻结项的冻结周期相同,且每条冻结记录的数据长度是等长的,即数据区物理块为等长的循环队列数据区,在知道一条记录的序号,根据该记录的序号,直接计算出此条记录在物理空间的存储偏移值OFFSET,计算公式为OFFSET=(RCD_SEQ_NO%MAX)*RCRD_SZ,其中,RCD_SEQ_NO为该记录的序号,MAX为分配给此分方案存储方案的最大存储空间条目数,RCRD_SZ为单条记录的长度。3.根据权利要求1所述的连续时间段时间戳序号索引分钟冻结的存储和查找方法,其特征在于:步骤(B),若发生掉电或者改时间,导致记录不连续的事件,则新建一个新的连续时间段,所述发生掉电或者改时间,导致记录不连续的事件是指发生掉电或者改时间跨过对应的冻结周期时,则新建一个新的连续时间段。4.根据权利要求1所述的连续时间段时间戳序号索引分钟冻...

【专利技术属性】
技术研发人员:徐晴刘建周超龚丹田正其祝宇楠
申请(专利权)人:国网江苏省电力有限公司电力科学研究院国家电网公司江苏省电力试验研究院有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1