CN114115736A - 电量数据处理方法、装置、设备及介质 - Google Patents
电量数据处理方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN114115736A CN114115736A CN202111385513.5A CN202111385513A CN114115736A CN 114115736 A CN114115736 A CN 114115736A CN 202111385513 A CN202111385513 A CN 202111385513A CN 114115736 A CN114115736 A CN 114115736A
- Authority
- CN
- China
- Prior art keywords
- value
- byte bit
- increment
- change byte
- current
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 30
- 230000008859 change Effects 0.000 claims abstract description 362
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000004590 computer program Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 abstract description 4
- 230000005611 electricity Effects 0.000 description 17
- 239000002609 medium Substances 0.000 description 17
- 238000013500 data storage Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000012120 mounting media Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Measurement Of Current Or Voltage (AREA)
- Remote Monitoring And Control Of Power-Distribution Networks (AREA)
Abstract
本发明实施例公开了电量数据处理方法、装置、设备及介质。该方法包括:获取电量数据的起始数值和当前数值,并存储起始数值,起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值确定当前数值第一变化字节位对应的第一增量数值;在当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值满足预设存储条件时,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储。本方案可以达到在相同内存中实现存储更多电量数据的技术效果。
Description
技术领域
本发明实施例涉及数据存储技术领域,尤其涉及一种电量数据处理方法、装置、设备及介质。
背景技术
在电力物联网的背景下,为了充分挖掘电网末端海量传感设备的数据价值,电力系统对端侧设备(电能表或集中器)数据的时效性要求越来越高。对于电能表,需要达到分钟级存储实时电量数据;对于集中器,需要满足对电能表及各种传感器数据的分钟级抄读、存储及上送。
目前的电能表和集中器多采用闪存(Flash)或带电可擦可编程只读存储器(Electrically Erasable Programmable Read Only Memory,简称EEPROM)作为存储介质,在现有方案中,采用高精度数据格式对预设时间段内(例如,每分钟)获取的电量数据进行存储时,每个数值占用8个字节,则存储一小时电量数据需要占用的内存为60*8=480字节(Bytes)。
在使用现有方案存储电量数据时,若要在同一存储介质中存储更多的电量数据,可通过减少电量数据存储时长,或加大存储介质的存储空间的方式来实现。而减少存储时长则无法满足数据追溯的需求,选用大容量的存储介质则需要更换硬件设备,提升成本。
发明内容
本发明实施例提供了一种电量数据处理方法、装置、设备及介质,可以优化现有的针对电量数据处理的实现方案。
第一方面,本发明实施例提供了一种电量数据处理方法,包括:
获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
确定所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
若满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
若不满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
第二方面,本发明实施例提供了一种电量数据处理装置,包括:
第一获取模块,用于获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
第二获取模块,用于获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
第一确定模块,用于根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
第二确定模块,用于根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
判断模块,用于判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
第一存储模块,用于在满足预设存储条件时,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
第二存储模块,用于在不满足预设存储条件时,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
第三方面,本发明实施例提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的电量数据处理方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的电量数据处理方法。
本发明实施例中提供的电量数据处理方案,首先获取电量数据的起始数值并存储起始数值,其中,在起始数值存储时将其划分为:固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值的格式;再获取电量数据的当前数值,当前数值为当前时刻电量数据的数值;并根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值确定当前数值第一变化字节位对应的第一增量数值;再根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值;并判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;若满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储;若不满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。通过采用上述技术方案,可以达到减少电量数据存储空间,以在相同内存中实现存储更多电量数据的技术效果。
附图说明
图1a为本发明实施例一提供的一种电量数据处理方法的流程示意图;
图1b为现有技术提供的一种电量数据存储格式示意图;
图2a为本发明实施例二提供的一种电量数据处理方法的流程示意图;
图2b为本发明实施例二提供的一种电量数据存储格式示意图;
图3为本发明实施例三提供的一种电量数据处理装置的结构框图;
图4为本发明实施例四提供的一种计算机设备的结构框图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图1a为本发明实施例一提供的一种电量数据处理实现方法的流程示意图,该方法可以由电量数据处理装置执行,其中该装置可由软件和/或硬件实现,一般可集成在服务器等计算机设备中。如图1a所示,该方法包括:
S110、获取电量数据的起始数值并存储起始数值,起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值。
首先,请参照图1b,图1b为现有技术提供的一种电量数据存储格式示意图。现有技术中,在使用电能表或集中器对电量数据进行存储时,为满足分钟级存储实时电量数据的需求,采用的方式为:将每分钟获取的当前电量数据进行直接存储,其中,每个电量数据需占用8字节(Bytes)的内存,则存储一个小时电量数据需占用的内存为60*8=480字节。这样存储的好处在于,在后续查询某个时间点的电量数据时,可直接通过查询对应的时间获得相应的电量数据。
电量数据与其他随机数据相比有着显著的特点,是单调递增的,且任意时间段内的电量数据均存在一定的范围内进行增长,即电量数据的增长具有上限值。以计算三相电能表的正向有功电量为例,根据目前在用的最大规格的电能表标称电压为220V、最大额定电流为100A,可得每小时产生的有功电能为3*220*100*3600/(3.6*103*103)=66千瓦时(kWh),即一个小时内,电量数据的最大增量是66kWh。若将66kWh采用高精度格式则表示为66.0000kWh。该数值用32位的十六进制可表示为0x000A1220,用64位的十六进制可表示为0x00000000000A1220。可以看出,在一个小时之内,针对每分钟记录的60次电量数据的高5字节(1字节=8位)是相同的,发生变化的只是低20位(即低3字节)。因此,存在频繁存储相同的数值的现象,该种存储方式不仅浪费空间,也会造成大量存储介质的频繁擦写,存在占用存储空间较大的问题。
针对上述思路,本申请实施例提供的电量数据处理方法,首先获取电量数据的起始数值,其中,该起始数值可以为存储第一预设时间段内电量数值之前的起始数值,该第一预设时间段可以为半小时,一小时或两小时等,在此不作限制,本实施例提供的第一预设时间段优选为一小时。
将起始数值进行存储,这样做的目的为便于后续步骤每间隔第二预设时间段存储电量数据对应的增量数值时,在后续查询阶段为明确某个时间点的电量数据时,可通过计算起始数值与当前时间点对应增量数值之和获得当前时间点对应的电量数据。其中,该预设时间段可以为一分钟、两分钟或五分钟等,在此不作限制。但为满足分钟级存储实时电量数据的需求,本发明实施例提供的第二预设时间段优选为一分钟。
其中,该起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值。
示例性地,假设20:00起始时刻的电量数据为E0=923456.7890kWh,即起始数值为E0=923456.7890kWh,该数值用十六进制表示为0x2266C52D2。
则请参照表1,表1为起始数值E0对应的16进制表示格式。
B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 | |
起始数值E0 | 00 | 00 | 00 | 02 | 26 | 6C | 52 | D2 |
进一步地,若当前电量数据按照最大负载电流运行至20:59时刻时,电能量值为En=923522.7890,该数值的十六进制表示为0x2267664F2,增量值的十六进制表示为0x0A1220。
请参照表2,表2为起始数值E0按照最大负荷运行一小时后,获得终止时刻电量数据En对应的16进制表示格式。
B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 | |
结束数值En | 00 | 00 | 00 | 02 | 26 | 76 | 64 | F2 |
对比表1和表2可知,当起始数值在一小时内,即使以最大负荷运行时,其对应16进制格式中的高五位字节(即B7~B3位)是保持不变的,改变的是低三位(B2~B0位)字节。
请参照表3,表3为起始数值E0按照最大负荷运行一小时后,获得终止时刻电量数据En以及增量数据Sn对应的16进制表示格式。
B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 | |
起始数值E0 | 00 | 00 | 00 | 02 | 26 | 6C | 52 | D2 |
结束数值En | 00 | 00 | 00 | 02 | 26 | 76 | 64 | F2 |
增量数值Sn | 0A | 12 | 20 |
由表3可知,低三位(B2~B0位)字节在改变时,第三位(B2位)字节的最大改变量是0x0A,则相应有11种改变形式,即0~A种,而低两位(B1~B0位)字节每位都有255种改变形式,即0~FF种。因此,在低三字节中,相较于第三位(B2位)字节,低两位(B1~B0位)字节的改变更加频繁。
综上,可将高五位(即B7~B3位)字节称为起始数值的固定字节位,低两位(B1~B0位)字节称为第一变化字节位,第三位(B2位)字节称为第二变化字节位,则固定字节位、第一变化字节位以及第二变化字节位对应的数值分别称为固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值。
需要说明的是,上述固定字节位、第一变化字节位和第二变化字节位具体指示位置并不以上述举例为限制,将总长度为L位的数值中的n位视为第一变化字节位,m位视为第二变化字节以及r位视为固定字节位,且满足关系式n+m+r=L,其中,n、m和r字节位中包含的具体字节长度在此不作限制。
S120、获取电量数据的当前数值,当前数值为当前时刻电量数据的数值。
对于获得的第一预设时间段内任意时刻的电量数据,要实现应用本发明实施例提供的电量数据处理方法进行电量数据存储,可首先获取当前电量数据的当前数值,其中,当前数值为当前时刻电量数据的数值。
对于当前数值为每间隔第二预设时间段获得的,且每间隔第二预设时间段获得的当前数值均可使用步骤S110所述的16进制表示格式进行表示,但由于每次获得的电量数据的高五位字节(即B7~B3位)均为相同数值,则可不对高五位字节进行分析,仅分析对应的低三位字节数值。
因此,当前数值包括第一变化字节位的第一数值和第二变化字节位的第二数值。
S130、根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值确定当前数值第一变化字节位对应的第一增量数值。
本发明实施例为避免每隔第二预设时间段获得的电量数据对应的高五位数据进行重复存储,占用存储空间。因此,采用计算低三位(B2~B0位)字节增量的形式进行存储。由于经过步骤S110分析,第三位(B2位)字节与低两位(B1~B0位)字节增量的变换形式不相同,因此,本发明实施例采用分别计算第一变化字节位对应的第一增量数值以及第二变化字节位对应的第二增量数值的方式。
对于当前数值第一变化字节位对应的第一增量数值,可采用当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值进行相减的形式获得,所得的差值即为当前数值第一变化字节位对应的第一增量数值。
S140、根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值。
相应地,参照步骤S130,本发明实施例提供的计算当前数值第二变化字节位第二增量数值的方式可以为:根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值的差值确定当前数值第二变化字节位对应的第二增量数值。
一种可选实施例,本发明实施例提供的电量数据处理方法,针对确定当前数值第二变化字节位对应的第二增量数值的方式上,可直接根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值的差值确定当前数值第二变化字节位对应的第二增量数值,则所得的差值即为第二变化字节位对应的第二增量数值。
进一步地,可直接使用当前差值确定当前数值第二变化字节位对应的第二增量数值,以及步骤S130第一变化字节位对应的第一增量数值进行电量数据的存储操作,本可选实施例存储的是起始数值,以及分钟级电量数据低三位对应的增量数值,本可选实施例在存储一小时内每分钟的电量数据时,占用的内存空间为8+3*60=188字节,相比于现有技术,在对每分钟获得的电量数据进行更新时,无需每次更新8个字节,只需更新获得的低三位的3个字节,且实现了存储相同数据时占用内存占用空间较少的技术效果。
S150、判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件。
以第一预设时间段为一小时,第二预设时间段为一分钟为例,经过步骤S110分析可知,第二变化字节位的第二数值增量共存在11种改变形式(即0~A),当直接根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值时,所得的第二数值增量共有60个结果。又由于电量数据在存储时根据时间的变化具备单调递增的显著特点,则容易理解到,通过对步骤S140提供的可选实施例进行电量数据存储时,相比于现有方案,虽已减少对内存数据的占用,但并不是最优的方案,在基于一定时间段内,仍存在重复存储第二变化字节位对应的第二增量的情况。
因此,进一步通过判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件的方式,以减少相同数值对内存空间的占用。
S160、若满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储。
预设存储条件可以为判断当前数值第二变化字节位对应的第二增量数值与上一数值对应的第二变化字节位对应的第二增量数值是否相同,若不同,则表明当前数值第二变化字节位对应的第二增量数值为首次出现,即为满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值。
S170、若不满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。
若判断当前数值第二变化字节位对应的第二增量数值与上一数值对应的第二变化字节位对应的第二增量数值相同,则表明当前数值第二变化字节位对应的第二增量数值在之前已经出现过,则不对当前数值第二变化字节位对应的第二增量数值进行存储,即将当前数值第二变化字节位对应的第二增量数值写为空,只存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。
本发明实施例中提供的电量数据处理方法,在对获得的电量数据进行存储时,存储的不是实时电量数据,而是实时电量数据低三位对应的增量数值,且针对第三位(B2位)进一步在确定当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,才获得当前数值第二变化字节位对应的第二增量数值。这样做的好处在于,以存储一小时内每分钟的电量数据为例,预先存储的起始数值占用8字节,且每间隔一分钟获得一个电量数据,且仅存储获得每个电量数据第一变化字节位对应的第一增量数值,则在一小时内可获得60个第一增量数值,由于第一变化字节位包括低两位字节位(即B0位和B1位),则一小时内存储第一增量数值时共占用2*60=120字节;第二变化字节位对应第二增量数值为第三位(B2)字节,而B2字节在实现方式上共有11种可能,且经过步骤在当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,获得当前数值第二变化字节位对应的第二增量数值,则可在一小时内存储的第二增量数值最大占用1*11=11字节。经计算,采用本发明实施例提供的电量数据处理方法,存储一小时内每分钟的电量数据共占用内存为:8+120+11=139字节,相比于现有技术,节省了341字节,在实现相同数据存储的基础上减少了内存占用空间,以在相同内存的基础上能够存储更多电量数据,增加了内存利用率。
本发明实施例中提供的电量数据处理方法,首先获取电量数据的起始数值并存储起始数值,其中,在起始数值存储时将其划分为:固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值的格式;再获取电量数据的当前数值,当前数值为当前时刻电量数据的数值;并根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值确定当前数值第一变化字节位对应的第一增量数值;再根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值;并判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;并判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;若满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储;若不满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。通过采用上述技术方案,可以达到减少电量数据存储空间,以在相同内存中实现存储更多电量数据的技术效果。
实施例二
本发明实施例在上述实施例的基础上进行了进一步优化,优化了所述判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件步骤,包括:在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,确定所述当前数值第二变化字节位对应的第二增量数值满足预设存储条件;在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同时,确定所述当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。这样设置的好处在于对于第二变化字节位对应的第二增量数值相同的数值,将当前数值第二变化字节位对应的第二增量数值不进行存储,即为对于存在多个第二变化字节位对应的第二增量数值,不重复存储,以进一步减少达到减少内存占用的目的。
还优化了在存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值之后,还包括:根据第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同的各个数值的产生时间确定增量时间区间。这样设置的好处在于获得关于第二变化字节位对应的第二增量数值的分布统计结果,便于对目标时间点电量数据进行查询操作。
还优化了所述根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值步骤,包括:根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值的差值确定所述当前数值第一变化字节位对应的第一增量数值。这样设置的好处在于只存储第一变化字节位对应的第一增量数值,从而达到存储电量数据时,减少内存占用的目的。
还优化了在根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值之后步骤,还包括:确定所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值;判断所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值是否为零;若不为零,则将所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值作为所述当前数值第二变化字节位对应的第二增量数值,存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;若为零,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。这样设置的好处在于提供一种可选方案,以在存储电量数据时,相比于现有技术减少内存占用。
如图2a所示,图2a为本发明实施例二提供的一种电量数据处理方法的流程示意图,具体的,该方法包括如下步骤:
S210、获取电量数据的起始数值并存储起始数值,起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值。
S220、获取电量数据的当前数值,当前数值为当前时刻电量数据的数值。
S230、根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值的差值确定当前数值第一变化字节位对应的第一增量数值。
本发明实施例提供的电量数据处理方法,采用当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值的差值进行确定,所得的差值即为当前数值第一变化字节位对应的第一增量数值。
当前获得第一变化字节位对应的第一增量数值的目的为,在获取的实时电量数据中,只存储当前电量数据第一变化字节位对应的第一增量数值,第一增量数值在数据存储时只占低两位(B0~B1)字节,而不存储其余固定字节位(B7~B3),从而达到存储电量数据时,减少内存占用的目的。
S240、根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值。
本发明实施例提供的电量数据处理方法,第二字节位对应的第二增量数值可基于桶排序的思想将第二字节位对应的第二增量数值(记为B2inc)的分布列举出来。此处分析思路与实施例一种步骤S110中思路相同,在此不作赘述。若需处理在一个小时内的电量数据,根据分钟级的存储需求,每分钟会产生一个新的电量数据,则一小时之内共有60个电量数据,可以计算出对应的60个记为B2inc,而这60个B2inc最多只有11种结果(即B2inc=0~0x0A),然后计算B2inc的分布,比如B2inc=0的时刻有k0个,B2inc=1的时刻有k1个……,B2inc=0x0A的时刻有k10个,且满足以下关系式:k0+k1+k2+…+km…+k10=60(其中,m≤10)。
且由于电量数据在存储时根据时间的变化具备单调递增的显著特点,则容易理解到,通过步骤S250判断当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值是否相同,可减少在一定时间段内,重复存储第二变化字节位对应的第二增量的情况。
S250、判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件。
结合步骤S240分析,进一步判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件以进一步减少对内存空间的占用
S260、在当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同时,确定当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。
在当前数值第二变化字节位对应的第二增量与上一数值第二变化字节位对应的第二增量数值的差值数值为零时,确定当前数值第二变化字节位对应的第二增量数值不满足预设存储条件,并执行步骤S280。
S270、在当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,确定当前数值第二变化字节位对应的第二增量数值满足预设存储条件。
在当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值的差值不为零时,确定当前数值第二变化字节位对应的第二增量数值满足预设存储条件,并执行步骤S290。
S280、在当前数值第二变化字节位对应的第二增量数值满足预设存储条件时,存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储。
S281、根据第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同的各个数值的产生时间确定增量时间区间。
在对第一预设时间段内获得的电量数据进行处理时,会对每间隔第二预设时间段的数据进行第一变化字节位对应的第一增量数值,以及第二变化字节位对应的第二增量数值分析,以下实施例均以第一预设时间段为一小时、第二预设时间段为一分钟进行举例说明。
当前步骤的目的为,通过记录一小时内的获得的第二变化字节位对应的第二增量数值,以获得关于当前一小时内第二变化字节位对应的第二增量数值的分布,示例性的,在第0-9分钟获得的10个数据中B2inc为0,10到15分B2inc为1,16到50分B2inc为2,51分至59分B2inc为3,则可获得在一个小时内每个增量对应的增量时间区间。
由于一个小时内,每分钟存储一次电量数据时,可获得60个电量数据,B2inc对应的增量时间区间之和为60分钟,则可将一个小时内每个增量对应的增量时间区间转换当前B2inc对应的个数,即在当前时间段内,共存在几个相同数值的B2inc。
示例性的,在步骤S280示例中,B2inc=0的个数有10个,则可记录为K0=10,B2inc=1的个数有6个,则可记录为K1=6,B2inc=2的个数有35个,则可记录为K2=35,B2inc=3的个数有9个,则可记录为K3=9。请参照图2b,图2b为本发明实施例二提供的一种电量数据存储格式示意图,这样做的目的是,可以获得在一个小时内第二变化字节位对应第二增量数值的分布统计结果,便于后续对目标时间点电量数据进行查询操作,且使用当前电量数据处理的方式,可减少电量数据的占用内存。
S290、在当前数值第二变化字节位对应的第二增量数值不满足预设存储条件时,存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。
通过步骤S220~S290可获得存储第一预设时间段内电量数据对应的第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对第一预设时间段内每间隔第二预设时间段所有获得的电量数据的存储操作。
一种可选实施例,在执行完上述步骤S210~S290后,本发明实施例提供的电量数据存储方法还可用于查询目标时间点的电量数据,本发明实施例提供的案例数据处理方法还包括:接收数据查询请求,数据查询请求用于查询目标数据,目标数据为目标时刻产生的数据,数据查询请求中包括目标时刻;根据目标时刻获取目标数据第一变化字节位对应的第一增量数值;确定目标时刻所属的增量时间区间,并获取目标时刻所属的增量时间区间对应的第二增量数值;根据起始数值、目标数据第一变化字节位对应的第一增量数值、目标数据第二变化字节位对应的第二增量数值确定目标数据;输出目标数据。
上述中数据查询请求可表示查询具体时间的电量数据,则在进行数据查询时,数据查询请求应包含有目标时刻,目标时刻对应的电量数据即为目标数据。例如,当前请求可以为:查询某一天某小时第几分钟的电量数据。
在查询目标时刻对应的电量数据时,第一变化字节位的存储方式是每隔一分钟存储一次对应的增量数据,则目标数据第一变化字节位对应的第一增量数值根据目标时刻直接查询获得。第二变化字节位的存储方式是第二增量数值对应的时间分布,则根据目标时刻可以确定对应增量的时间区间,通过查询增量时间区间对应的增量数值可确定目标时刻所属的增量时间区间对应的第二增量数值。且当前时刻对应的起始数值已经预先存储,则可直接获得起始数值。相应地,可根据起始数值、目标数据第一变化字节位对应的第一增量数值、目标数据第二变化字节位的对应第二增量数值确定目标数据。
可选地,目标数据第二变化字节位对应的第二增量数值的查询方式还可以为,目标时刻已知,可通过从第二增量数值对应的时间分布由低到高的方式进行加和,每加和一次输出一次数值,若当前加和获得的数值大于等于目标时刻,则当前时刻增量区间对应的第二增量数值即为目标数据第二变化字节位对应的第二增量数值。具体目标数据第二变化字节位对应的第二增量数值的确定方式在此不作限制。
示例性的,假如0-60分钟内电量数据第二变化字节位对应的第二增量数值数B2inc的分布统计为:0分至9分增量为0(即k0=10),10到15分增量为1(即k1=6),16到50分增量为2(即k2=35),51分至59分增量为3(即k3=9);以查询某小时第17分钟的电能数据E17为例,具体的查询流程如下:
根据图2b提供的电量数据的存储方式,可以直接获知目标时间点对应的起始数值E0;由于B0~B1位字节是经每分钟进行一次存储,则可直接获知第17分钟第一变化字节位对应的第一增量数值,记为L2;由于在当前一小时内关于第二变化字节位对应的增量时间区间的分布已知,则可直接比较B2inc=0的时刻的个数k0=10,小于17,即表明第17分钟第二变化字节位对应的第二增量数值大于0;继续统计k0+k1=16,仍小于17,即表明第17分钟第二变化字节位对应的第二增量数值大于1;继续统计k0+k1+k2=51,大于17,则17在16到50分增量的区间中,即表明第二变化字节位对应的第二增量数值为2,即B2inc=2。那么,第17分钟的电量数据为E17=E0+L2+(B2inc左移16位)。
需要说明的是,此处B2inc左移16位的意思为,由于在将数据存储为16进制格式时,B2处于第三字节位,前面还有低两位字节B0和B1,由于1字节=8位,在第一变化字节位对应的第一增量数值中已占用2个字节,即16位,则第二变化字节位对应的第二增量数值应左移16位,进一步对起始数值、第一变化字节位对应的第一增量数值以及二变化字节位对应的第二增量数值左移16位后进行加和计算,获得最终的目标数据。
本发明实施例提供的电量数据处理方案,相较于现有技术,节省了(480-139)/139=245%的存储空间,且现有技术中每次需要更新的数8个字节,而本发明实施例提供的方案每次最大只需更新3个字节,相比现有技术更加简单快捷。
一种可选实施例,本发明实施例提供的电量数据处理方法,在执行完步骤S230之后,还可以包括:确定当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值的差值;判断差值是否为零;若不为零,则将差值作为当前数值第二变化字节位对应的第二增量数值,存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储;若为零,则存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。
本发明可选实施例提供的电量数据处理方案,并不是根据比对每个数值之间的第二增量数值,而是对比当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值的差值,即每获得一次电量数据时与起始数据进行一次差值计算,并进一步判断差值是否为零,可以理解为,若差值不为0,则将差值确定为当前数值第二变化字节位对应的第二增量数值,将差值作为当前数值第二变化字节位对应的第二增量数值,存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储。当差值=0时,则表明当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值相同,则当前数值第二变化字节位对应的第二增量数值记为空,只存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。
通过上述步骤,则可减少对当前数值第二变化字节位对应的第二增量数值等于0时的存储情况,在使用当前可选方案存储电量数据时,在存储一小时内的电量数据时所占用的内存空间处于139字节~188字节之间。
本发明实施例提供的电量数据处理方法,利用电能量数据的单调递增及递增值可预测的特性,引用桶排序的思想,设计电量数据的组织形式,适用于对存储密度要求较高的应用场景。采用本方案的电能表及用电信息采集终端不仅有效节省了存储空间,且可以将存储介质的擦写区域降到最低,从而节约了硬件成本,节省了存储空间,并减少了flash的擦写字节数。在进行数据查询时,仅仅进行了简单的加法运算,并不需要复杂的检索步骤和其余复杂运算,方便快捷。
实施例三
图3为本发明实施例三提供的一种电量数据处理装置的结构框图,该装置可由软件和/或硬件实现,一般可集成在服务器等计算机设备中,可通过执行电量数据处理方法来对电量数据进行处理工作,如图3所示,该装置包括:第一获取模块31、第二获取模块32、第一确定模块33、第二确定模块34、判断模块35、第一存储模块36和第二存储模块37,其中:
第一获取模块31,用于获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
第二获取模块32,用于获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
第一确定模块33,用于根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
第二确定模块34,用于根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
判断模块35,用于判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
第一存储模块36,用于在满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
第二存储模块37,用于在不满足预设存储条件时,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
本发明实施例提供的电量数据处理装置,首先获取电量数据的起始数值并存储起始数值,其中,在起始数值存储时将其划分为:固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值的格式;再获取电量数据的当前数值,当前数值为当前时刻电量数据的数值;并根据当前数值第一变化字节位的第一数值与起始数值第一变化字节位的第一数值确定当前数值第一变化字节位对应的第一增量数值;再根据当前数值第二变化字节位的第二数值与起始数值第二变化字节位的第二数值确定当前数值第二变化字节位对应的第二增量数值;并判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;并判断当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;若满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对当前数值的存储;若不满足预设存储条件,则存储当前数值第一变化字节位对应的第一增量数值,以实现对当前数值的存储。通过采用上述技术方案,可以达到减少电量数据存储空间,以在相同内存中实现存储更多电量数据的技术效果。
可选地,所述判断模块35包括:第一确定单元和第二确地单元,其中:
第一确定单元,用于在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,确定所述当前数值第二变化字节位对应的第二增量数值满足预设存储条件;
第二确定单元,用于在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同时,确定所述当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。
可选地,第一确定单元,还用于在所述当前数值第二变化字节位对应的第二增量数值与所述上一数值第二变化字节位对应的第二增量数值的差值不为零时,确定所述当前数值第二变化字节位对应的第二增量数值满足预设存储条件;
第二确定单元,还用于在所述当前数值第二变化字节位对应的第二增量数值与所述上一数值第二变化字节位对应的第二增量数值的差值为零时,确定所述当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。
可选地,所述第二确定模块34,还用于根据第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同的各个数值的产生时间确定增量时间区间.
可选地,所述第二确定模块34包括:接收单元、获取单元、第三确定单元和输出单元,其中:
接收单元,用于接收数据查询请求,所述数据查询请求用于查询目标数据,所述目标数据为目标时刻产生的数据,所述数据查询请求中包括所述目标时刻;
获取单元,用于根据所述目标时刻获取所述目标数据第一变化字节位对应的第一增量数值;
第三确定单元,用于确定所述目标时刻所属的增量时间区间,并获取所述目标时刻所属的增量时间区间对应的第二增量数值;
第三确定单元,还用于根据所述起始数值、所述目标数据第一变化字节位对应的第一增量数值、所述目标数据第二变化字节位对应的第二增量数值确定所述目标数据;
输出单元,用于输出所述目标数据。
可选地,第一确定模块33,还用于根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值的差值确定所述当前数值第一变化字节位对应的第一增量数值。
可选地,第二确定模块34,还用于确定所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值;
判断模块35,还用于判断当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值所述差值是否为零;
第一存储模块36,还用于在所述差值不为零时,则将所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值作为所述当前数值第二变化字节位对应的第二增量数值,存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
第二存储模块37,还用于在所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值为零时,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
本发明实施例提供的电量数据处理装置,可执行本发明任意实施例所提供的电量数据处理方法,具备执行该方法相应的功能模块和有益效果。
实施例四
本发明实施例提供了一种计算机设备,该计算机设备中可集成本发明实施例提供的电量数据处理装置。图4为本发明实施例四提供的一种计算机设备的结构框图。计算机设备400可以包括:存储器401,处理器402及存储在存储器401上并可在处理器运行的计算机程序,所述处理器402执行所述计算机程序时实现如本发明实施例所述的电量数据处理方法。
本发明实施例提供的计算机设备,可执行本发明任意实施例所提供的电量数据处理方法,具备执行该方法相应的功能模块和有益效果。
实施例五
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于电量数据处理方法,该方法包括:
获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
若满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
若不满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDRRAM、SRAM、EDORAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的电量数据处理操作,还可以执行本发明任意实施例所提供的电量数据处理方法中的相关操作。
上述实施例中提供的电量数据处理装置、设备及存储介质可执行本发明任意实施例所提供的电量数据处理方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的电量数据处理方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种电量数据处理方法,其特征在于,包括:
获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
若满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
若不满足预设存储条件,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
2.根据权利要求1所述的方法,其特征在于,判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件,包括:
在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值不同时,确定所述当前数值第二变化字节位对应的第二增量数值满足预设存储条件;
在所述当前数值第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同时,确定所述当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。
3.根据权利要求2所述的方法,其特征在于,判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件,包括:
在所述当前数值第二变化字节位对应的第二增量数值与所述上一数值第二变化字节位对应的第二增量数值的差值不为零时,确定所述当前数值第二变化字节位对应的第二增量数值满足预设存储条件;
在所述当前数值第二变化字节位对应的第二增量数值与所述上一数值第二变化字节位对应的第二增量数值的差值为零时,确定所述当前数值第二变化字节位对应的第二增量数值不满足预设存储条件。
4.根据权利要求1所述的方法,其特征在于,在存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值之后,还包括:
根据第二变化字节位对应的第二增量数值与上一数值第二变化字节位对应的第二增量数值相同的各个数值的产生时间确定增量时间区间。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
接收数据查询请求,所述数据查询请求用于查询目标数据,所述目标数据为目标时刻产生的数据,所述数据查询请求中包括所述目标时刻;
根据所述目标时刻获取所述目标数据第一变化字节位对应的第一增量数值;
确定所述目标时刻所属的增量时间区间,并获取所述目标时刻所属的增量时间区间对应的第二增量数值;
根据所述起始数值、所述目标数据第一变化字节位对应的第一增量数值、所述目标数据第二变化字节位对应的第二增量数值确定所述目标数据;
输出所述目标数据。
6.根据权利要求1所述的方法,其特征在于,根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值,包括:
根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值的差值确定所述当前数值第一变化字节位对应的第一增量数值。
7.根据权利要求1所述的方法,其特征在于,在根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值之后,还包括:
确定所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值;
判断所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值是否为零;
若不为零,则将所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值的差值作为所述当前数值第二变化字节位对应的第二增量数值,存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
若为零,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
8.一种电量数据处理装置,其特征在于,包括:
第一获取模块,用于获取电量数据的起始数值并存储所述起始数值,所述起始数值包括固定字节位的固定数值、第一变化字节位的第一数值和第二变化字节位的第二数值;
第二获取模块,用于获取所述电量数据的当前数值,所述当前数值为当前时刻所述电量数据的数值;
第一确定模块,用于根据所述当前数值第一变化字节位的第一数值与所述起始数值第一变化字节位的第一数值确定所述当前数值第一变化字节位对应的第一增量数值;
第二确定模块,用于根据所述当前数值第二变化字节位的第二数值与所述起始数值第二变化字节位的第二数值确定所述当前数值第二变化字节位对应的第二增量数值;
判断模块,用于判断所述当前数值第二变化字节位对应的第二增量数值是否满足预设存储条件;
第一存储模块,用于在满足预设存储条件时,则存储所述当前数值第一变化字节位对应的第一增量数值和第二变化字节位对应第二增量数值,以实现对所述当前数值的存储;
第二存储模块,用于在不满足预设存储条件时,则存储所述当前数值第一变化字节位对应的第一增量数值,以实现对所述当前数值的存储。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111385513.5A CN114115736B (zh) | 2021-11-22 | 2021-11-22 | 电量数据处理方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111385513.5A CN114115736B (zh) | 2021-11-22 | 2021-11-22 | 电量数据处理方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114115736A true CN114115736A (zh) | 2022-03-01 |
CN114115736B CN114115736B (zh) | 2024-03-19 |
Family
ID=80439288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111385513.5A Active CN114115736B (zh) | 2021-11-22 | 2021-11-22 | 电量数据处理方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114115736B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115309342A (zh) * | 2022-09-29 | 2022-11-08 | 杭州海兴电力科技股份有限公司 | 一种数据存储方法、装置及电能表 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481468A (en) * | 1992-08-04 | 1996-01-02 | Basic Measuring Instruments, Inc. | Method and apparatus for storing an increasing number of sequential real-time samples in a fixed amount of memory |
KR20000037894A (ko) * | 1998-12-03 | 2000-07-05 | 김영인 | 전자식 전력량계의 자료초기화 이후 자료유지방법 |
KR20060035189A (ko) * | 2004-10-21 | 2006-04-26 | 엘에스산전 주식회사 | 시간대별 적산 전력량 검증 기능을 갖춘 전자식 전력 계측장치 |
JP2012226621A (ja) * | 2011-04-20 | 2012-11-15 | Panasonic Corp | 計測装置、電力量メータ及び書き込み方法 |
CN105334383A (zh) * | 2015-10-21 | 2016-02-17 | 宁波三星医疗电气股份有限公司 | 一种电能表的电量数据存储方法 |
CN105974192A (zh) * | 2016-05-05 | 2016-09-28 | 国网重庆市电力公司电力科学研究院 | 满足ir46计量独立性要求电能表数据接口及验证方法 |
CN106708440A (zh) * | 2016-12-26 | 2017-05-24 | 深圳市科陆电子科技股份有限公司 | 电能表及其负荷曲线的数据存储方法 |
CN107301017A (zh) * | 2017-06-06 | 2017-10-27 | 北京云知声信息技术有限公司 | 一种数据存储方法及装置 |
CN107544914A (zh) * | 2017-09-06 | 2018-01-05 | 华立科技股份有限公司 | 电量分块存储方法和系统 |
CN108052456A (zh) * | 2017-12-28 | 2018-05-18 | 杭州万高科技股份有限公司 | 一种电量数据存储方法、系统及一种电量数据存储设备 |
CN109189791A (zh) * | 2018-09-07 | 2019-01-11 | 国电南瑞科技股份有限公司 | 一种适用于电表易动的电量数据采集处理方法 |
CN109470918A (zh) * | 2018-11-30 | 2019-03-15 | 武汉盛帆电子股份有限公司 | Ir46电能表的电量数据处理方法和ir46电能表 |
CN111143239A (zh) * | 2019-12-27 | 2020-05-12 | 广东电科院能源技术有限责任公司 | 一种智能电表的冻结电量数据压缩存储方法和解压方法 |
CN111796775A (zh) * | 2020-07-07 | 2020-10-20 | 威胜集团有限公司 | 智能电表数据存储方法及装置 |
CN112328556A (zh) * | 2020-10-16 | 2021-02-05 | 威胜集团有限公司 | 电能量曲线数据存储方法、电能表及计算机可读存储介质 |
CN112763777A (zh) * | 2020-12-28 | 2021-05-07 | 华立科技股份有限公司 | 一种智能电表的电量存储方法、装置、设备及介质 |
-
2021
- 2021-11-22 CN CN202111385513.5A patent/CN114115736B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5481468A (en) * | 1992-08-04 | 1996-01-02 | Basic Measuring Instruments, Inc. | Method and apparatus for storing an increasing number of sequential real-time samples in a fixed amount of memory |
KR20000037894A (ko) * | 1998-12-03 | 2000-07-05 | 김영인 | 전자식 전력량계의 자료초기화 이후 자료유지방법 |
KR20060035189A (ko) * | 2004-10-21 | 2006-04-26 | 엘에스산전 주식회사 | 시간대별 적산 전력량 검증 기능을 갖춘 전자식 전력 계측장치 |
JP2012226621A (ja) * | 2011-04-20 | 2012-11-15 | Panasonic Corp | 計測装置、電力量メータ及び書き込み方法 |
CN105334383A (zh) * | 2015-10-21 | 2016-02-17 | 宁波三星医疗电气股份有限公司 | 一种电能表的电量数据存储方法 |
CN105974192A (zh) * | 2016-05-05 | 2016-09-28 | 国网重庆市电力公司电力科学研究院 | 满足ir46计量独立性要求电能表数据接口及验证方法 |
CN106708440A (zh) * | 2016-12-26 | 2017-05-24 | 深圳市科陆电子科技股份有限公司 | 电能表及其负荷曲线的数据存储方法 |
CN107301017A (zh) * | 2017-06-06 | 2017-10-27 | 北京云知声信息技术有限公司 | 一种数据存储方法及装置 |
CN107544914A (zh) * | 2017-09-06 | 2018-01-05 | 华立科技股份有限公司 | 电量分块存储方法和系统 |
CN108052456A (zh) * | 2017-12-28 | 2018-05-18 | 杭州万高科技股份有限公司 | 一种电量数据存储方法、系统及一种电量数据存储设备 |
CN109189791A (zh) * | 2018-09-07 | 2019-01-11 | 国电南瑞科技股份有限公司 | 一种适用于电表易动的电量数据采集处理方法 |
CN109470918A (zh) * | 2018-11-30 | 2019-03-15 | 武汉盛帆电子股份有限公司 | Ir46电能表的电量数据处理方法和ir46电能表 |
CN111143239A (zh) * | 2019-12-27 | 2020-05-12 | 广东电科院能源技术有限责任公司 | 一种智能电表的冻结电量数据压缩存储方法和解压方法 |
CN111796775A (zh) * | 2020-07-07 | 2020-10-20 | 威胜集团有限公司 | 智能电表数据存储方法及装置 |
CN112328556A (zh) * | 2020-10-16 | 2021-02-05 | 威胜集团有限公司 | 电能量曲线数据存储方法、电能表及计算机可读存储介质 |
CN112763777A (zh) * | 2020-12-28 | 2021-05-07 | 华立科技股份有限公司 | 一种智能电表的电量存储方法、装置、设备及介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115309342A (zh) * | 2022-09-29 | 2022-11-08 | 杭州海兴电力科技股份有限公司 | 一种数据存储方法、装置及电能表 |
Also Published As
Publication number | Publication date |
---|---|
CN114115736B (zh) | 2024-03-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108061863A (zh) | 检测电池的方法及装置、计算机可读存储介质、电池管理系统 | |
CN111289910B (zh) | 一种梯次电池的分级方法、装置、计算机设备及介质 | |
CN108052279A (zh) | 一种提升闪存性能的方法、装置、设备及存储介质 | |
CN114115736A (zh) | 电量数据处理方法、装置、设备及介质 | |
CN113484763A (zh) | 一种电池剩余电量的确定方法、装置、设备及存储介质 | |
CN117590792B (zh) | 基于大型直饮水设备的智能控制方法、系统、终端及介质 | |
CN113777398A (zh) | 电能表的电量记录方法、电能表和可读存储介质 | |
CN112345954A (zh) | 电池寿命预测方法、装置、电子设备及介质 | |
CN115456346B (zh) | 一种电量监控预警方法、装置、电子设备及介质 | |
CN111162792A (zh) | 一种电力负荷数据的压缩方法及装置 | |
CN109683809B (zh) | 一种数据存储方法及终端 | |
CN111782661B (zh) | 一种数据存储方法、数据查询方法和装置 | |
CN113886491A (zh) | 分布式数据处理方法、装置、电子设备及存储介质 | |
CN114202339A (zh) | 预警处理方法及装置 | |
CN118071036B (zh) | 储能设备装设容量的确定方法、装置及电子设备 | |
CN118082796B (zh) | 一种车辆增程器启停控制方法、装置、电子设备以及介质 | |
CN116132485B (zh) | 一种智能化项目快捷调试部署方法及系统 | |
CN112307025B (zh) | 一种分布式索引的构建方法及装置 | |
CN117745361A (zh) | 车辆换电价格的计算方法、装置、换电站及存储介质 | |
CN114862468A (zh) | 一种电费预估方法、装置、设备及存储介质 | |
CN115660145A (zh) | 电网投资优化方法、装置、电子设备及存储介质 | |
CN114358509A (zh) | 一种配电网负荷特性分类方法 | |
CN118708346A (zh) | 任务资源消耗预估方法、设备及存储介质 | |
CN118013419A (zh) | 一种石油化工用预测性维修数据采集方法及系统 | |
CN116774934A (zh) | 一种负荷数据管理方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |