CN106095828A - 一种基于用电信息采集终端的曲线数据存储方案 - Google Patents
一种基于用电信息采集终端的曲线数据存储方案 Download PDFInfo
- Publication number
- CN106095828A CN106095828A CN201610381657.6A CN201610381657A CN106095828A CN 106095828 A CN106095828 A CN 106095828A CN 201610381657 A CN201610381657 A CN 201610381657A CN 106095828 A CN106095828 A CN 106095828A
- Authority
- CN
- China
- Prior art keywords
- curve
- data
- file
- index
- storage
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/14—Details of searching files based on file metadata
- G06F16/144—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/164—File meta data generation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Mathematical Physics (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开一种通过设计各曲线索引文件及曲线数据文件的存储结构采用多个索引文件共享一个数据文件的存储模型来实现各测量点曲线数据存储与管理的方案,随着国网公司对曲线数据的存储要求越来越高及各公司降低软硬件成本的需求,再加上嵌入式***小型、存储资源有限的自身特征,同时结合UFFS文件***相关版本的特点及各测量点曲线数据存储密度、曲线类型繁多的特点,本发明采用索引文件对测量点信息和曲线数据进行统一管理和有效定位,避免存储资源浪费。
Description
技术领域
本发明涉及智能电网用电信息采集***领域,特别涉及一种基于用电信息采集终端的曲线数据存储方案。
背景技术
电力用户用电信息采集***(power user electric energy data acquiresystem)是对电力用户的用电信息进行采集、处理和实时监控的***,用电信息采集终端(electric energy data acquire terminal)是对各信息采集点用电信息采集的设备,可以实现电能表数据的采集、数据管理、数据双向传输以及转发或执行控制命令的设备。
为实现电力用户用电信息采集***的自身功能,国网公司制定了6类15个标准及一系列补遗文件,规定用电信息采集终端应对采集数据进行分类管理并存储,如日冻结数据、抄表日冻结数据、曲线数据、历史月数据等,进而规定用电信息采集终端需按照相应的冻结间隔形成各类冻结曲线数据,曲线冻结数据密度由主站设置,最小冻结时间间隔为1小时,并保存最近30天曲线数据及支持10个重点用户10天24个整点的电能数据曲线的存储功能。
随着OFDM等调制技术的不断发展及宽带载波通信技术的广泛应用,不同地市根据自身需求扩充了国网公司针对曲线数据管理及存储的相关规定,像江苏省供电公司提出用电信息采集终端应采集全体用户的曲线数据并支持存储512个用户10天的电压、电流、功率、电能示值等数据项24个整点曲线数据,为适应四表合一趋势发展,要求在此基础上支持存储512个水表、气表、燃气表等的曲线数据;重庆市供电公司将重点用户的数量扩充至255个,要求用电信息采集终端支持255个重点用户10天的曲线数据存储。
曲线数据存储量的增大针对采集终端存储时所采用的曲线数据存储方案的性能也提出了极高的要求。包括以下几点:
1、针对回向校时的处理能力。采集终端应能及时对校时后的曲线数据进行处理,确保曲线数据存储的及时响应,保证曲线数据存储的正确性和完整性;
2、曲线数据周期性裁剪的处理能力。当因存储设备容量限制需要进行曲线数据周期性裁剪,所采用的存储方案应能具备尽量减少对存储设备的操作次数的设计以保证存储设备的使用寿命;
3、针对测量点信息发生变更的处理能力。采集终端采用的存储方案需要便于处理发生变更的测量点的曲线数据,尽量保证该测量点发生变更前后的数据完整性和一致性;
4、曲线存储方案需要具备对曲线数据的正确性、完整性进行验证的能力。目前针对曲线数据的存储方案有以下三种:
一、以测量点为存储单元的存储方案。终端存储曲线数据的时候每个测量点创建一个文件,采用MAP+DATA的存储结构,MAP存储测量点相关信息,包括测量点类型、曲线存储类型等信息,DATA存储该测量点各时间点的曲线数据。但该存储方式存在以下不足:
1、随着国网公司要求存储的数据量越来越大,当测量点比较多的时候创建的文件比较多(国网规定的最大测量点数为2048),不利于统筹管理;
2、采集终端在上电启动挂载文件***的时候,文件***会扫描每个block,判定每个block是否为坏块、空块来建立哈希表,如果创建的文件比较多,无疑延长了文件***的检查执行时间,进而延长了采集终端的启动速度;
3、针对像UFFS文件***的一些版本,文件***每创建一个文件就会占用一个block的存储空间(block大小固定),并且该block上无法再创建新的文件,此时如果创建的文件存储内容很少,就会对存储空间造成极大浪费;
4、当发生回向校时,需要对每个测量点文件中当前时间之后的曲线数据进行裁剪,如果需要裁剪的数据量较大、测量点较多,则裁剪执行时间较长,此时如果有存储需求,曲线文件存储或会发生异常,曲线数据安全性受到影响;
5、当因磁盘容量限制需要对文件进行裁剪,则对每个文件存储的曲线数据都要进行裁剪处理,造成存储设备操作过于频繁,减少了存储设备的使用寿命;
6、如果采集终端测量点类型发生变更,则对应的曲线数据存储单元长度也会发生变化,此时为了便于二分法查找,必须重建该测量点的曲线文件,造成测量点类型变更之前的数据丢失,影响了曲线数据完整性。
二、以时间为存储单元的存储方案。终端每天创建一个文件,文件中存储所有测量点的曲线数据,该方案的优点是当磁盘空间不足的时候便于按日期进行文件裁剪,但是该存储方案也存在如下不足:。
1、国网公司规定的曲线数据项繁多复杂,每个曲线数据项的数据单元长度不一,根据测量点所属采集通道的不同,存储密度也不一样,造成文件存储结构异常混乱,当进行文件查询的时候无法快速有效定位需要查询的数据,增加了查询时CPU开销,当需要查询的曲线数据不在一个文件中的时候,需要对多个文件进行操作,无法达到对主站请求帧的及时响应,影响了嵌入式***的实时性;
2、当采集终端发生回向校时,要对当前时间之后的曲线数据进行裁剪,裁剪起始点的查找和定位很困难,增加了回向校时文件裁剪的执行时间,此时若存在曲线数据存储需求,曲线文件存储或会异常,曲线数据安全性受到影响;
3、用电信息采集终端在现场运行过程中若出现故障,因曲线文件存储结构混乱,增加了排查难度;
4、当采集终端发生测量点信息变更、测量点被删除或增加了新的测量点,及其不便于测量点信息的统筹管理;
5、程序无法对存储的曲线数据的有效性进行判定,进行曲线数据查询的时候或会得到错误的数据并且无法进行有效验证。
三、***中增加嵌入式数据库实现数据的存储和管理。嵌入式数据库的引入无疑方便了数据的存储、获取、删减等操作,但是这种存储方案一方面增加了开发和维护成本,另一方面降低了程序的可移植性,并不是所有的嵌入式操作***都适合嵌入式数据库的移植。另外,当发生回向校时的时候也需要逐条进行删减,此时如果一个线程执行删减操作而另一个线程要求进行曲线存储,同上述两种方案,也会影响数据的安全性,若删减操作和存储由一个线程来完成,当删减操作执行时间较长的时候,数据得不到及时存储,影响了数据存储效率,当发生断电等异常情况,极易造成数据丢失。
发明内容
针对上述问题,本发明提出一种多个索引文件共享一个数据文件的存储方案,来对测量点信息和曲线数据进行统一管理和有效定位,降低了存储设备操作次数;采用文件大小虚拟定位技术针对回向校时提出了合理化解决方案;在索引文件MAP信息中增加曲线数据实际位置转换系数优化了曲线数据周期性裁剪;在索引文件MAP信息中存储每个测量点的相关信息,对测量点信息变更提出合理化处理方案。
为解决上述问题,本发明采取的技术方案为:一种基于用电信息采集终端的曲线数据存储方案,包括如下步骤:
步骤一、在用电信息采集终端文件***新建用于存储曲线索引文件及曲线数据文件的文件夹;
步骤二、根据测量点所属通信端口将曲线索引文件划分为交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件,根据用电信息采集终端中RS485通信端口配置数量的不同,x为1、2、3…、本地通信通道的曲线索引文件,创建曲线数据文件用于存储所有曲线数据;
步骤三、设计各曲线索引文件及曲线数据文件的存储结构
交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件及本地通信通道的曲线索引文件均包括MAP表头和索引数据两部分,MAP表头存储曲线数据实际位置转换系数、对应曲线索引文件有效大小、MAXNUM个测量点存储单元的存储信息,MAXNUM为对应曲线索引文件所属通信通道允许接入的最大测量点数量,测量点存储单元的存储信息包括测量点号、曲线起始时标;索引数据随时间推移按照曲线存储密度依次存储每个曲线时标对应的索引数据块,每个曲线时标对应的索引数据块存储曲线数据时标、该时标曲线数据起始相对存储位置及MAXNUM个测量点曲线数据相对存储位置;
曲线数据文件的存储内容包括曲线数据文件有效大小及每个测量点每个曲线时标的曲线单元数据,曲线单元数据包括曲线时标、数据单元长度、曲线数据。
针对曲线索引文件及曲线数据文件存储结构的相关说明:
(1)各索引文件及数据文件之间的依赖关系。交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件及本地通信通道的曲线索引文件共享曲线数据文件,共同实现对曲线数据文件的管理和定位功能。
(2)曲线数据实际位置转换系数说明。曲线数据实际位置转换系数用于将索引文件中存储的曲线数据绝对位置转换成相对位置,优化文件裁剪。该系数记录从曲线数据文件初始创建到***当前时间为止每次裁剪总共裁掉的字节数(累加值),当进行曲线数据存储的时候,用曲线数据的实际存储位置加上数据实际位置转换系数所得结果更新相应索引文件该曲线时标索引数据块中对应测量点的相对存储位置的值,当进行曲线数据查询的时候,就可以用该测量点的相对存储位置减去曲线数据实际位置转换系数,即可得曲线数据实际位置,当进行文件裁剪的时候,避免了需要对每个索引文件的各曲线时标索引数据块中记录的每个相对存储位置进行变更的麻烦,提高了裁剪效率;
(3)索引文件有效大小及数据文件有效大小说明。文件有效大小即从文件起始位置到索引数据块或曲线单元数据追加位置之间的字节数,也即索引数据块或曲线单元数据从文件有效大小定位的位置开始追加存储新增数据,这是为了方便用电信息采集终端发生回向校时设计的。使用文件大小虚拟定位技术实现采集终端回向校时处理。文件大小虚拟定位技术描述为:采集终端发生回向校时,查找裁剪位置,但无需裁剪,只需用裁剪位置的偏移量更新文件有效大小的值,如此,裁剪位置之后的索引或曲线数据作为无效数据处理,这样就避免了对索引文件进行裁剪,提高了曲线数据存储效率和安全性;
(4)各索引文件MAP表头剩余部分用于记录终端中每个测量点的相关存储信息,当发生测量点变更、删除或新增测量点的时候,可以通过本部分存储信息对终端中所有测量点进行统一管理。其中起始时标用于记录该测量点从哪个曲线时标开始存储索引数据和曲线数据;
(5)索引数据块中记录的该时标曲线数据起始相对存储位置,是指在曲线数据文件中,该时标的曲线数据从起始相对存储位置计算出的绝对位置开始存储一直到下一个曲线时标曲线数据起始相对存储位置计算出的绝对位置为止。
基于用电信息采集终端的曲线数据存储方案针对发生回向校时的处理方案包括如下步骤:
步骤一、根据用电信息采集终端校时后***时间及存储密度确定校时后待裁剪曲线数据时标;
步骤二、根据曲线索引文件有效大小定位到曲线索引文件最后存储的有效索引数据块,从最后存储的有效索引数据块中读取最后存储的有效曲线数据时标;
步骤三、若校时后待裁剪曲线数据时标小于最后存储的有效曲线数据时标,则转步骤四;反之,则本次校时未对曲线数据的存储产生影响,不作回向校时处理;
步骤四、曲线索引文件回向校时处理
根据校时后待裁剪曲线数据时标及二分法确定校时后待裁剪索引数据块的位置,用该位置相对于曲线索引文件起始位置的偏移量更新曲线索引文件有效大小信息;如此,曲线索引文件有效大小指向的索引数据块之后的所有索引数据块视为无效数据,存储的时候也是从曲线索引文件有效大小指向的位置开始存储,后面的无效索引数据块被依次覆盖或进行数据周期性裁剪的时候被裁掉;
步骤五、曲线数据文件回向校时处理
首先读取曲线数据实际位置转换系数和曲线索引文件有效大小;其次从曲线索引文件有效大小指向的位置读取最后存储的有效索引数据块,从最后存储的有效索引数据块中获取最后存储的有效时标曲线数据起始相对存储位置;然后用最后存储的有效时标曲线数据起始相对存储位置减去曲线数据实际位置转换系数即得曲线数据文件中校时后最后存储的曲线数据的实际位置,用该实际位置相对曲线数据文件起始位置的偏移量更新曲线数据文件有效大小的值。
当采集终端发生回向校时,无需对曲线数据进行裁剪,用曲线索引文件有效大小和曲线数据文件有效大小指示校时后最终有效曲线索引数据和曲线数据的位置,文件有效大小之后的数据视为无效。
本发明使用文件大小虚拟定位技术进行了处理,提高了回向校时处理速度和灵活性,增强了数据安全性,提高了回向校时后曲线数据存储速度。
基于用电信息采集终端的曲线数据存储方案针对存储过程中常见的因容量限制需周期性进行曲线数据裁剪的处理方案包括如下步骤:
步骤一、对每个曲线索引文件进行裁剪
首先需要按照如下步骤确定曲线索引文件裁剪位置:
(1)根据用电信息采集终端当前***时间及规定的曲线最大存储天数,计算出待裁剪位置的曲线数据时标;
(2)从曲线索引文件中读取存储的首个索引数据块,从首个索引数据块中获取首个曲线数据时标;
(3)如果待裁剪位置的曲线数据时标不大于首个曲线数据时标,则不对曲线索引文件和曲线数据文件进行裁剪;反之,根据待裁剪位置的曲线数据时标和二分法确定曲线索引文件裁剪位置;
其次,对曲线索引文件进行裁剪:在曲线索引文件所在目录中创建空文件作为临时索引文件,临时索引文件中存储曲线索引文件MAP表头及曲线索引文件裁剪位置到MAP表头曲线索引文件有效大小指向的最后有效位置之间的索引数据;
然后,需要按照如下步骤更新临时索引文件MAP表头信息:
(1)曲线索引文件有效大小的更新:用临时索引文件的大小更新临时索引文件MAP表头中曲线索引文件有效大小的值;
(2)确定曲线数据文件裁剪位置:从临时索引文件MAP表头中读取曲线数据实际位置转换系数,从临时索引文件中读取首个索引数据块,从首个索引数据块中读取首个时标曲线数据的起始相对存储位置,用该起始相对存储位置减去实际位置转换系数即可得到曲线数据文件的实际裁剪位置,记录该值作曲线数据文件裁剪备用;
(3)曲线数据实际位置转换系数的更新:根据曲线数据文件的实际裁剪位置计算出曲线数据文件本次裁剪需要裁掉的无效数据的字节数,用临时索引文件中记录的原实际位置转换系数加上本次裁掉的无效数据字节数,即可得裁剪后的曲线数据实际位置转换系数,将该转换系数存储在临时索引文件MAP表头数据实际位置转换系数的位置;
(4)MAXNUM个测量点信息的更新:从临时索引文件中读取首个索引数据块,从索引数据块中获取首个曲线数据时标,如果MAXNUM个测量点信息中存储的曲线起始时标小于首个曲线数据时标,则将首个曲线数据时标写入测量点曲线起始时标位置;
步骤二、对曲线数据文件进行裁剪
首先在曲线数据文件所在目录下创建临时数据文件,将原曲线数据文件有效大小的值和根据步骤一中确定的原数据文件裁剪位置到原曲线数据文件有效大小指向的最后有效存储位置之间的曲线数据裁剪到临时数据文件中;然后用临时数据文件的大小更新临时数据文件存储的曲线数据文件有效大小信息;
步骤三、临时文件更名:将原曲线索引文件及曲线数据文件删除,临时索引文件及临时数据文件改名为原曲线索引文件及曲线数据文件的文件名。
裁剪之后无需更新索引文件中每个时标索引数据块中每个测量点的曲线存储位置,而是将每次裁剪的时候数据文件中裁掉的字节数累加到索引文件数据实际位置转换系数中,将绝对位置转换成相对位置进行处理。本发明使用数据实际位置转换系数将索引文件中记录的曲线数据绝对位置转换成了相对位置,避免了裁剪时对索引数据的更改,提高了裁剪效率。
基于用电信息采集终端的曲线数据存储方案,用电信息采集终端中测量点发生变更时,需要更新测量点对应的曲线索引文件MAP表头测量点存储单元的存储信息。
无需将发生变更的测量点存储的原曲线数据删除,只需更新索引文件中MAP信息即可,最大保证了曲线数据的完整性,提高了测量点信息变更时曲线处理速度。
本发明的有益效果如下:
1、数据存储方案规避了类似于UFFS等文件***特性造成的存储空间资源浪费的缺陷,只要存储空间满足存储需求,无需扩容即可实现所有测量点曲线数据的存储;
2、减少了创建文件的数目,采用曲线索引文件对曲线数据文件进行定位实现数据存取及所有曲线索引文件共享一个曲线数据文件的方式,便于统筹管理;
3、提高了采集终端启动时文件***遍历所有block的执行效率,提高了采集终端启动速度;
4、索引文件存储结构中增加曲线数据实际位置转换系数,将索引数据存储的曲线数据位置由绝对位置转换成相对位置,避免了周期性裁剪对索引数据中存储的曲线数据位置的更新,提高了裁剪效率,减少了对存储设备的访问次数,保证了存储设备的使用寿命;
5、采用文件大小虚拟定位技术实现对采集终端发生回向校时的处理,转变设计思路,规避了目前曲线数据存储方案当发生回向校时的时候需要对文件进行裁剪的弊端,提高了回向校时处理速度,保证了曲线数据存储的及时性和安全性,减少了设备访问次数,确保了存储设备寿命;
6、当测量点信息发生变更的时候,无需删除信息变更之前的曲线数据,提高了曲线数据完整性;
7、此种曲线数据存储方案不受操作***、文件***或编程方式的限制,方便程序移植,规避了使用数据库造成的程序移植性降低的缺点;
8、针对异常断电情况下的数据存储及数据保护可提供较好的解决方案,可以通过各种措施保证曲线数据的安全性和完整性,对存储的曲线数据或文件的异常情况具备自恢复能力;
9、通用性良好。此种存储方案可以有效应用于国网公司要求的日冻结数据、月冻结数据、日统计数据、月统计数据等的存储,甚至非电力***也具备采用价值。
10、该曲线数据存储方案将国网公司规定的繁复复杂的一系列曲线数据项和多样的曲线数据存储密度有机地整合在一起,存储结构简单有序,便于曲线数据的定位、存储和查询,也便于对现场问题进行排查;
11、该曲线数据存储方案提供了曲线数据有效性检查能力,索引文件中存储曲线起始存储时标,且每个索引数据块存储曲线数据时标,曲线数据文件中每个曲线单元数据也存储曲线数据时标和数据单元长度,可以通过以上存储内容对曲线的正确性进行有效检查和验证;
具体实施方式
一种基于用电信息采集终端的曲线数据存储方案,包括如下步骤:
步骤一、在用电信息采集终端文件***新建用于存储曲线索引文件及曲线数据文件的文件夹;
步骤二、根据测量点所属通信端口将曲线索引文件划分为交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件,根据用电信息采集终端中RS485通信端口配置数量的不同,x为1、2、3…、本地通信通道的曲线索引文件,创建曲线数据文件用于存储所有曲线数据;
步骤三、设计各曲线索引文件及曲线数据文件的存储结构
交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件及本地通信通道的曲线索引文件均包括MAP表头和索引数据两部分,MAP表头存储曲线数据实际位置转换系数、对应曲线索引文件有效大小、MAXNUM个测量点存储单元的存储信息,MAXNUM为对应曲线索引文件所属通信通道允许接入的最大测量点数量,测量点存储单元的存储信息包括测量点号、曲线起始时标;索引数据随时间推移按照曲线存储密度依次存储每个曲线时标对应的索引数据块,每个曲线时标对应的索引数据块存储曲线数据时标、该时标曲线数据起始相对存储位置及MAXNUM个测量点曲线数据相对存储位置;
曲线数据文件的存储内容包括曲线数据文件有效大小及每个测量点每个曲线时标的曲线单元数据,曲线单元数据包括曲线时标、数据单元长度、曲线数据。
基于用电信息采集终端的曲线数据存储方案针对发生回向校时的处理方案包括如下步骤:
步骤一、根据用电信息采集终端校时后***时间及存储密度确定校时后待裁剪曲线数据时标;
步骤二、根据曲线索引文件有效大小定位到曲线索引文件最后存储的有效索引数据块,从最后存储的有效索引数据块中读取最后存储的有效曲线数据时标;
步骤三、若校时后待裁剪曲线数据时标小于最后存储的有效曲线数据时标,则转步骤四;反之,不作回向校时处理;
步骤四、曲线索引文件回向校时处理
根据校时后待裁剪曲线数据时标及二分法确定校时后待裁剪索引数据块的位置,用该位置相对于曲线索引文件起始位置的偏移量更新曲线索引文件有效大小信息;
步骤五、曲线数据文件回向校时处理
首先读取曲线数据实际位置转换系数和曲线索引文件有效大小;其次从曲线索引文件有效大小指向的位置读取最后存储的有效索引数据块,从最后存储的有效索引数据块中获取最后存储的有效时标曲线数据起始相对存储位置;然后用最后存储的有效时标曲线数据起始相对存储位置减去曲线数据实际位置转换系数即得曲线数据文件中校时后最后存储的曲线数据的实际位置,用该实际位置相对曲线数据文件起始位置的偏移量更新曲线数据文件有效大小的值。
基于用电信息采集终端的曲线数据存储方案针对曲线数据裁剪的处理方案包括如下步骤:
步骤一、对每个曲线索引文件进行裁剪
首先需要按照如下步骤确定曲线索引文件裁剪位置:
(1)根据用电信息采集终端当前***时间及规定的曲线最大存储天数,计算出待裁剪位置的曲线数据时标;
(2)从曲线索引文件中读取存储的首个索引数据块,从首个索引数据块中获取首个曲线数据时标;
(3)如果待裁剪位置的曲线数据时标不大于首个曲线数据时标,则不对曲线索引文件和曲线数据文件进行裁剪;反之,根据待裁剪位置的曲线数据时标和二分法确定曲线索引文件裁剪位置;
其次,对曲线索引文件进行裁剪:在曲线索引文件所在目录中创建空文件作为临时索引文件,临时索引文件中存储曲线索引文件MAP表头及曲线索引文件裁剪位置到MAP表头曲线索引文件有效大小指向的最后有效位置之间的索引数据;
然后,需要按照如下步骤更新临时索引文件MAP表头信息:
(1)曲线索引文件有效大小的更新:用临时索引文件的大小更新临时索引文件MAP表头中曲线索引文件有效大小的值;
(2)确定曲线数据文件裁剪位置:从临时索引文件MAP表头中读取曲线数据实际位置转换系数,从临时索引文件中读取首个索引数据块,从首个索引数据块中读取首个时标曲线数据的起始相对存储位置,用该起始相对存储位置减去实际位置转换系数即可得到曲线数据文件的实际裁剪位置,记录该值作曲线数据文件裁剪备用;
(3)曲线数据实际位置转换系数的更新:根据曲线数据文件的实际裁剪位置计算出曲线数据文件本次裁剪需要裁掉的无效数据的字节数,用临时索引文件中记录的原实际位置转换系数加上本次裁掉的无效数据字节数,即可得裁剪后的曲线数据实际位置转换系数,将该转换系数存储在临时索引文件MAP表头数据实际位置转换系数的位置;
(4)MAXNUM个测量点信息的更新:从临时索引文件中读取首个索引数据块,从索引数据块中获取首个曲线数据时标,如果MAXNUM个测量点信息中存储的曲线起始时标小于首个曲线数据时标,则将首个曲线数据时标写入测量点曲线起始时标位置;
步骤二、对曲线数据文件进行裁剪
首先在曲线数据文件所在目录下创建临时数据文件,将原曲线数据文件有效大小的值和根据步骤一中确定的原数据文件裁剪位置到原曲线数据文件有效大小指向的最后有效存储位置之间的曲线数据裁剪到临时数据文件中;然后用临时数据文件的大小更新临时数据文件存储的曲线数据文件有效大小信息;
步骤三、临时文件更名:将原曲线索引文件及曲线数据文件删除,临时索引文件及临时数据文件改名为原曲线索引文件及曲线数据文件的文件名。
基于用电信息采集终端的曲线数据存储方案,用电信息采集终端中测量点发生变更时,需要更新测量点对应的曲线索引文件MAP表头测量点存储单元的存储信息。
各曲线索引文件存储格式如表1所示:
表1曲线索引文件整体存储格式
曲线数据文件的存储内容有数据文件有效大小(文件开头4字节)及各测量点各时刻的曲线数据,根据测量点的曲线存储结构不同,每个曲线数据存储单元包含的数据类型不同,根据测量点的所属通信通道不同,曲线数据单元的存储密度也不一样,但每个曲线数据单元的所属时标具有顺时递增的规律,具体存储格式参见表2:
表2曲线数据文件整体存储格式
Claims (4)
1.一种基于用电信息采集终端的曲线数据存储方案,其特征在于包括如下步骤:
步骤一、在用电信息采集终端文件***新建用于存储曲线索引文件及曲线数据文件的文件夹;
步骤二、根据测量点所属通信端口将曲线索引文件划分为交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件、本地通信通道的曲线索引文件,创建曲线数据文件用于存储所有曲线数据;
步骤三、设计各曲线索引文件及曲线数据文件的存储结构
交流采样通道的曲线索引文件、RS485x采集通道的曲线索引文件及本地通信通道的曲线索引文件均包括MAP表头和索引数据两部分,MAP表头存储曲线数据实际位置转换系数、对应曲线索引文件有效大小、MAXNUM个测量点存储单元的存储信息,MAXNUM为对应曲线索引文件所属通信通道允许接入的最大测量点数量,测量点存储单元的存储信息包括测量点号、曲线起始时标;索引数据随时间推移按照曲线存储密度依次存储每个曲线时标对应的索引数据块,每个曲线时标对应的索引数据块存储曲线数据时标、该时标曲线数据起始相对存储位置及MAXNUM个测量点曲线数据相对存储位置;
曲线数据文件的存储内容包括曲线数据文件有效大小及每个测量点每个曲线时标的曲线单元数据,曲线单元数据包括曲线时标、数据单元长度、曲线数据。
2.根据权利要求1所述的基于用电信息采集终端的曲线数据存储方案,其特征在于:该曲线数据存储方案针对发生回向校时的处理方案包括如下步骤:
步骤一、根据用电信息采集终端校时后***时间及存储密度确定校时后待裁剪曲线数据时标;
步骤二、根据曲线索引文件有效大小定位到曲线索引文件最后存储的有效索引数据块,从最后存储的有效索引数据块中读取最后存储的有效曲线数据时标;
步骤三、若校时后待裁剪曲线数据时标小于最后存储的有效曲线数据时标,则转步骤四;反之,不作回向校时处理;
步骤四、曲线索引文件回向校时处理
根据校时后待裁剪曲线数据时标及二分法确定校时后待裁剪索引数据块的位置,用该位置相对于曲线索引文件起始位置的偏移量更新曲线索引文件有效大小信息;
步骤五、曲线数据文件回向校时处理
首先读取曲线数据实际位置转换系数和曲线索引文件有效大小;其次从曲线索引文件有效大小指向的位置读取最后存储的有效索引数据块,从最后存储的有效索引数据块中获取最后存储的有效时标曲线数据起始相对存储位置;然后用最后存储的有效时标曲线数据起始相对存储位置减去曲线数据实际位置转换系数即得曲线数据文件中校时后最后存储的曲线数据的实际位置,用该实际位置相对曲线数据文件起始位置的偏移量更新曲线数据文件有效大小的值。
3.根据权利要求1所述的基于用电信息采集终端的曲线数据存储方案,其特征在于:该曲线数据存储方案针对曲线数据裁剪的处理方案包括如下步骤:
步骤一、对每个曲线索引文件进行裁剪
首先需要按照如下步骤确定曲线索引文件裁剪位置:
(1)根据用电信息采集终端当前***时间及规定的曲线最大存储天数,计算出待裁剪位置的曲线数据时标;
(2)从曲线索引文件中读取存储的首个索引数据块,从首个索引数据块中获取首个曲线数据时标;
(3)如果待裁剪位置的曲线数据时标不大于首个曲线数据时标,则不对曲线索引文件和曲线数据文件进行裁剪;反之,根据待裁剪位置的曲线数据时标和二分法确定曲线索引文件裁剪位置;
其次,对曲线索引文件进行裁剪:在曲线索引文件所在目录中创建空文件作为临时索引文件,临时索引文件中存储曲线索引文件MAP表头及曲线索引文件裁剪位置到MAP表头曲线索引文件有效大小指向的最后有效位置之间的索引数据;
然后,需要按照如下步骤更新临时索引文件MAP表头信息:
(1)曲线索引文件有效大小的更新:用临时索引文件的大小更新临时索引文件MAP表头中曲线索引文件有效大小的值;
(2)确定曲线数据文件裁剪位置:从临时索引文件MAP表头中读取曲线数据实际位置转换系数,从临时索引文件中读取首个索引数据块,从首个索引数据块中读取首个时标曲线数据的起始相对存储位置,用该起始相对存储位置减去实际位置转换系数即可得到曲线数据文件的实际裁剪位置,记录该值作曲线数据文件裁剪备用;
(3)曲线数据实际位置转换系数的更新:根据曲线数据文件的实际裁剪位置计算出曲线数据文件本次裁剪需要裁掉的无效数据的字节数,用临时索引文件中记录的原实际位置转换系数加上本次裁掉的无效数据字节数,即可得裁剪后的曲线数据实际位置转换系数,将该转换系数存储在临时索引文件MAP表头数据实际位置转换系数的位置;
(4)MAXNUM个测量点信息的更新:从临时索引文件中读取首个索引数据块,从索引数据块中获取首个曲线数据时标,如果MAXNUM个测量点信息中存储的曲线起始时标小于首个曲线数据时标,则将首个曲线数据时标写入测量点曲线起始时标位置;
步骤二、对曲线数据文件进行裁剪
首先在曲线数据文件所在目录下创建临时数据文件,将原曲线数据文件有效大小的值和根据步骤一中确定的原数据文件裁剪位置到原曲线数据文件有效大小指向的最后有效存储位置之间的曲线数据裁剪到临时数据文件中;然后用临时数据文件的大小更新临时数据文件存储的曲线数据文件有效大小信息;
步骤三、临时文件更名:将原曲线索引文件及曲线数据文件删除,临时索引文件及临时数据文件改名为原曲线索引文件及曲线数据文件的文件名。
4.根据权利要求1所述的基于用电信息采集终端的曲线数据存储方案,其特征在于:用电信息采集终端中测量点发生变更时,需要更新测量点对应的曲线索引文件MAP表头测量点存储单元的存储信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610381657.6A CN106095828B (zh) | 2016-06-01 | 2016-06-01 | 一种基于用电信息采集终端的曲线数据存储方案 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610381657.6A CN106095828B (zh) | 2016-06-01 | 2016-06-01 | 一种基于用电信息采集终端的曲线数据存储方案 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106095828A true CN106095828A (zh) | 2016-11-09 |
CN106095828B CN106095828B (zh) | 2019-03-29 |
Family
ID=57446789
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610381657.6A Active CN106095828B (zh) | 2016-06-01 | 2016-06-01 | 一种基于用电信息采集终端的曲线数据存储方案 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106095828B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391395A (zh) * | 2017-09-04 | 2017-11-24 | 北京国华世纪电子科技有限公司 | 一种嵌入式***的长寿命曲线记录方法 |
CN108021687A (zh) * | 2017-12-15 | 2018-05-11 | 宁波三星医疗电气股份有限公司 | 电力采集终端曲线数据的快速记录及查找方法 |
CN109992381A (zh) * | 2017-12-30 | 2019-07-09 | ***通信集团四川有限公司 | 进程拆分判别方法、装置、设备及介质 |
CN110648525A (zh) * | 2019-09-25 | 2020-01-03 | 宁波三星医疗电气股份有限公司 | 数据补抄方法、装置和电力采集终端 |
CN110660004A (zh) * | 2019-09-29 | 2020-01-07 | 威胜集团有限公司 | 曲线数据抄读方法、电能表和存储介质 |
CN111025068A (zh) * | 2019-12-24 | 2020-04-17 | 宁波三星医疗电气股份有限公司 | 电表负荷曲线数据抄读方法、装置和电子设备 |
CN112084145A (zh) * | 2020-09-04 | 2020-12-15 | 深圳科安达电子科技股份有限公司 | 一种铁路信号集中监测***数据存储读取方法 |
CN116052404A (zh) * | 2023-02-14 | 2023-05-02 | 安徽康能电气有限公司 | 一种基于5g通信技术的电网数据交互*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102932447A (zh) * | 2012-10-30 | 2013-02-13 | 无锡威泰迅电力科技有限公司 | 配电室远程数据采集分析*** |
CN103544185A (zh) * | 2012-07-16 | 2014-01-29 | 中国石油化工股份有限公司 | 一种测井数据文件存储方法 |
CN103593486A (zh) * | 2013-12-06 | 2014-02-19 | 国家电网公司 | 一种电能质量海量数据存储及读取方法 |
CN103646056A (zh) * | 2013-11-29 | 2014-03-19 | 北京广利核***工程有限公司 | 一种基于特征值存储的历史数据存储和抽取方法 |
CN104090987A (zh) * | 2014-07-28 | 2014-10-08 | 华中科技大学 | 一种历史数据存储及索引方法 |
-
2016
- 2016-06-01 CN CN201610381657.6A patent/CN106095828B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103544185A (zh) * | 2012-07-16 | 2014-01-29 | 中国石油化工股份有限公司 | 一种测井数据文件存储方法 |
CN102932447A (zh) * | 2012-10-30 | 2013-02-13 | 无锡威泰迅电力科技有限公司 | 配电室远程数据采集分析*** |
CN103646056A (zh) * | 2013-11-29 | 2014-03-19 | 北京广利核***工程有限公司 | 一种基于特征值存储的历史数据存储和抽取方法 |
CN103593486A (zh) * | 2013-12-06 | 2014-02-19 | 国家电网公司 | 一种电能质量海量数据存储及读取方法 |
CN104090987A (zh) * | 2014-07-28 | 2014-10-08 | 华中科技大学 | 一种历史数据存储及索引方法 |
Non-Patent Citations (2)
Title |
---|
朱彬若 等: "《电力用户用电信息采集***数据分析与处理技术》", 《华东电力》 * |
谢永刚: "《电力用户的用电信息采集***与应用探讨》", 《科技创新与应用》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391395A (zh) * | 2017-09-04 | 2017-11-24 | 北京国华世纪电子科技有限公司 | 一种嵌入式***的长寿命曲线记录方法 |
CN108021687A (zh) * | 2017-12-15 | 2018-05-11 | 宁波三星医疗电气股份有限公司 | 电力采集终端曲线数据的快速记录及查找方法 |
CN109992381A (zh) * | 2017-12-30 | 2019-07-09 | ***通信集团四川有限公司 | 进程拆分判别方法、装置、设备及介质 |
CN110648525A (zh) * | 2019-09-25 | 2020-01-03 | 宁波三星医疗电气股份有限公司 | 数据补抄方法、装置和电力采集终端 |
CN110648525B (zh) * | 2019-09-25 | 2020-07-28 | 宁波三星医疗电气股份有限公司 | 数据补抄方法、装置和电力采集终端 |
CN110660004A (zh) * | 2019-09-29 | 2020-01-07 | 威胜集团有限公司 | 曲线数据抄读方法、电能表和存储介质 |
CN110660004B (zh) * | 2019-09-29 | 2022-03-18 | 威胜集团有限公司 | 曲线数据抄读方法、电能表和存储介质 |
CN111025068A (zh) * | 2019-12-24 | 2020-04-17 | 宁波三星医疗电气股份有限公司 | 电表负荷曲线数据抄读方法、装置和电子设备 |
CN111025068B (zh) * | 2019-12-24 | 2022-05-20 | 宁波三星医疗电气股份有限公司 | 电表负荷曲线数据抄读方法、装置和电子设备 |
CN112084145A (zh) * | 2020-09-04 | 2020-12-15 | 深圳科安达电子科技股份有限公司 | 一种铁路信号集中监测***数据存储读取方法 |
CN116052404A (zh) * | 2023-02-14 | 2023-05-02 | 安徽康能电气有限公司 | 一种基于5g通信技术的电网数据交互*** |
CN116052404B (zh) * | 2023-02-14 | 2023-11-28 | 安徽康能电气有限公司 | 一种基于5g通信技术的电网数据交互*** |
Also Published As
Publication number | Publication date |
---|---|
CN106095828B (zh) | 2019-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106095828A (zh) | 一种基于用电信息采集终端的曲线数据存储方案 | |
CN102667709B (zh) | 用于提供数据的长期存储的***和方法 | |
US9754012B2 (en) | Efficient storage of data allowing for multiple level granularity retrieval | |
CN102483755B (zh) | 文件*** | |
WO2021091489A1 (en) | Method and apparatus for storing time series data, and server and storage medium thereof | |
US9183153B2 (en) | Method and system for managing power grid data | |
CN102117338B (zh) | 一种数据库缓存的方法 | |
CN102292720A (zh) | 用于管理数据存储***的数据对象的方法和设备 | |
CN103164490B (zh) | 一种不固定长度数据的高效存储实现方法和装置 | |
CN110196847A (zh) | 数据处理方法和装置、存储介质及电子装置 | |
CN102591864B (zh) | 比对***中的数据更新方法及装置 | |
CN102981971B (zh) | 一种快速响应的相变存储器损耗均衡方法 | |
GB2476536A (en) | Modified B+ tree to map logical addresses to physical addresses in NAND flash memory | |
CN102694828A (zh) | 一种分布式缓存***数据存取的方法及装置 | |
CN109117088A (zh) | 一种数据处理方法及*** | |
CN115878595A (zh) | 一种基于ftl的智能物联表的数据迁移方法及存储介质 | |
US20210141775A1 (en) | Metadata reduction in a distributed storage system | |
CN109471860B (zh) | 面向电动汽车充电网络大规模充电桩数据处理方法及装置 | |
CN103841168B (zh) | 数据副本更新方法及元数据服务器 | |
CN104391947B (zh) | 海量gis数据实时处理方法及*** | |
CN113901166A (zh) | 电子地图构建方法、装置、设备及存储介质 | |
CN112540987A (zh) | 一种基于数据集市的配用电大数据管理*** | |
CN111913913A (zh) | 访问请求的处理方法和装置 | |
CN116842012A (zh) | 一种Redis集群的分片存储方法、装置、设备及存储介质 | |
CN108647243B (zh) | 基于时间序列的工业大数据存储方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |