CN109994131B - 一种基于索引的工频录波文件压缩存储方法及*** - Google Patents
一种基于索引的工频录波文件压缩存储方法及*** Download PDFInfo
- Publication number
- CN109994131B CN109994131B CN201910285771.2A CN201910285771A CN109994131B CN 109994131 B CN109994131 B CN 109994131B CN 201910285771 A CN201910285771 A CN 201910285771A CN 109994131 B CN109994131 B CN 109994131B
- Authority
- CN
- China
- Prior art keywords
- file
- power frequency
- wave recording
- frequency wave
- recording file
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/10537—Audio or video recording
- G11B2020/10546—Audio or video recording specifically adapted for audio data
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于索引的工频录波文件压缩存储方法及***,解决大量工频录波文件的存储难题。该方法包括以下步骤:接收并解析报文,获取待上传的工频录波文件类型,存入数据库;接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;判断是否全部接收需上传的所有工频录波文件;若全部接收,则根据压缩后的工频录波文件的大小,从数据库的大文件列表中选取合适的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息。
Description
技术领域
本公开涉及电力***技术领域,具体涉及一种基于索引的工频录波文件压缩存储方法及***。
背景技术
现有的行波分析平台只是缓存对应的行波录波文件,而故障录波监测装置监测的线路较多、故障对应的录波文件录波时间长,在接入现有故障录波监测装置的故障录波数据后,平台会缓存大量的工频录波文件(文件相对较小),需要现有行波分析平台对上传的工频录波文件进行分类、解析、压缩等处理。
发明人在研发过程中发现,现有的文件存储方案存在以下计算问题:
(1)浪费***资源。每一个文件都对应***的一个inode,里面包含了与该文件有关的一些信息,比如文件的创建者、文件的创建日期、文件的大小等等。操作***用inode号码来识别不同的文件,但操作***的inode数量是有限的,因此有可能发生inode已经用光,但是硬盘还未存满的情况。这时,就无法在硬盘上创建新文件。
(2)存取效率低。操作***根据Directoty的对应关系,找到文件对应的iNode,然后通过iNode读取文件的iNode table,最后根据iNode table的Pointer读取文件对应磁盘的block(操作***是一次性连续读取多个扇区,即一次性读取一个"块"(block))。block由多个扇区组成,是文件存取的最小单位,最常见的大小是4KB。
(3)浪费磁盘空间。每个文件都存在着磁盘对齐,即:一个磁盘扇区只能存放一个文件,一个文件存储占用N倍的磁盘空间,使得每一个文件都存在一个不满的扇区。此外,每个文件都对应一个inode,每个inode节点的大小固定,一般是128字节或256字节,这也会造成磁盘空间的浪费。
(4)存储同一Comtrade格式的文件丢失相关性。Comtrade文件包含dat文件,cfg文件等,它们之间是紧密相关的。单独存放每个文件,可能使得它们存放在不同的扇区,甚至不同的磁道,这会使得读取Comtrade格式的文件的***开销变大。
综上所述,现有存储方案对于大量的工频录波文件的存储,存在着浪费磁盘空间,读取Comtrade格式的文件的性能较低的问题,尚缺乏有效的解决方案。
发明内容
为了克服上述现有技术的不足,本公开提供了一种基于索引的工频录波文件压缩存储方法及***,将同一录波产生的多个文件,压缩后压缩成一个文件,同时将多个压缩的文件合并成一个大文件,并创建位置索引,通过索引文件加大文件的方式存储压缩后的工频录波文件,来解决大量工频录波文件的存储难题。
本公开的第一方面的一种基于索引的工频录波文件压缩存储方法的技术方案是:
一种基于索引的工频录波文件压缩存储方法,该方法包括以下步骤:
接收并解析报文,获取待上传的工频录波文件类型,存入数据库;
接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;
判断是否全部接收需上传的所有工频录波文件;
若全部接收,则根据压缩后的工频录波文件的大小,从数据库缓存的大文件列表中选取合适的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息。
本公开的第二方面的一种基于索引的工频录波文件压缩存储***的技术方案是:
一种基于索引的工频录波文件压缩存储***,该***包括:
报文解析模块,用于接收并解析报文,获取待上传的工频录波文件类型,存入数据库;
文件压缩模块,用于接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;
判断模块,用于获取接收到的工频录波文件类型对应的标志位,将数据库中该录波文件名对应的值与当前接收到的录波文件类型所对应的标志位值进行比较,若不相等,表示未全部接收,将数据库中该录波文件名的录波文件类型对应的标志位置位,更新数据库;若相等,则表示全部接收,代表所有工频录波文件上传完毕;
文件存储模块,用于根据压缩后的工频录波文件的大小,从数据库的大文件列表中选取合适的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息。
本公开的第三方面的一种计算机可读存储介质的技术方案是:
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于索引的工频录波文件压缩存储方法中的步骤。
本公开的第四方面的一种计算机设备的技术方案是:
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如上所述的基于索引的工频录波文件压缩存储方法中的步骤。
通过上述技术方案,本公开的有益效果是:
(1)本公开将工频录波文件进行压缩,尤其是对数据文件类型的工频录波文件进行特定算法的压缩,充分考虑到其数据类型的特殊性,提高压缩率;
(2)本公开将小文件合并成大文件,可以降低存储碎片,节约磁盘空间;
(3)本公开节约***资源,提高读取工频录波文件的速率,充分利用工频录波文件相关性,将相关联的工频录波文件压缩成一个文件,然后将压缩后的文件顺序地追加到大文件中,可以减少对***索引节点的使用,提高了元始数据的检索和查询效率;
(4)本公开简化了I/O访问流程,根据缓存数据,获得文件名对应的索引信息,可以进行一次I/O操作,读取一次工频录波数据;
(5)本公开增加了数据局部性,提高了存储效率,磁盘文件***或者分布式文件***中,文件的元数据和数据存储在不同位置,采用合并存储机制后,小文件的元数据和数据可以一并连续存储大文件中,这大大增强了单个小文件内部的数据局部性;小文件合并过程中,可以利用文件之间的空间局部性、时间局部性以及关联,尽量将可能连续访问的小文件在大文件中进行连续存储,增强了小文件之间的数据局部性,降低了磁盘上随机I/O比率,转换成了顺序I/O,能够有效提高I/O读写性能。
附图说明
构成本公开的一部分的说明书附图用来提供对本公开的进一步理解,本公开的示意性实施例及其说明用于解释本申请,并不构成对本公开的不当限定。
图1是实施例一基于索引的工频录波文件压缩存储方法流程图;
图2是实施例二基于索引的工频录波文件压缩存储方法流程图;
图3是实施例二解析报文数据流程图;
图4是实施例二判断是否收齐文件流程图;
图5是实施例二获取合适的大文件流程图;
图6是实施例三基于索引的工频录波文件压缩存储***框图。
具体实施方式
下面结合附图与实施例对本公开作进一步说明。
应该指出,以下详细说明都是例示性的,旨在对本公开提供进一步的说明。除非另有指明,本公开使用的所有技术和科学术语具有与本公开所属技术领域的普通技术人员通常理解的相同含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
实施例一
本实施例提供一种基于索引的工频录波文件压缩存储方法,请参阅附图1,所述基于索引的工频录波文件压缩存储方法包括以下步骤:
S101:接收并解析报文,获取需上传的工频录波文件类型,存入数据库;
S102:接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;
S103:判断是否全部收到需上传的工频录波文件,若没有全部收到,那么将数据库中的该文件类型对应的标志位进行置位,返回步骤102;若全部收到,则表示工频录波文件已经收齐,执行步骤104;
S104:根据压缩后的工频录波文件的大小,从数据库中获取一个合适的大文件名,将压缩后的工频录波文件存储到大文件中,记录当前工频录波文件的位置和大小到磁盘索引文件并记录到缓存中,同时更新大文件的信息。
本实施例提供的基于索引的工频录波文件压缩存储方法,将同一录波产生的多个工频录波文件,压缩后压缩成一个工频录波文件,同时将多个压缩的工频录波文件合并成一个大文件,并创建位置索引,通过索引大文件的方式存储压缩后的工频录波文件,来解决大量工频录波文件的存储难题。
实施例二
为了使本领域的技术人员更好地了解本公开的技术方案,下面列举一个更详细的实施例,本实施例提供一种基于索引的工频录波文件压缩存储方法,请参阅附图2,该方法包括以下步骤:
S201:接收并解析报文,获取故障录波监测装置需上传的Comtrade格式工频录波文件类型,存入数据库。
请参阅附图2,首先获取报文数据,对报文数据进行解析,解析出报文中内容所含有的所有文件类型,并将所有文件类型存入到数据库中。
在本实施例中,所述文件类型包括标题文件、配置文件、数据文件、信息文件和数据模型文件,所述标题文件包括Hdr格式文件,所述配置文件包括cfg格式文件,所述数据文件包括data格式文件,所述信息文件包括inf格式文件,所述数据模型文件包括dmf格式文件,文件内包含实际的录波数据。
根据工频录波文件类型,定义分类表。分类表如表1所示。
表1:文件类型
文件类型 | 标志位 |
标题文件(Hdr文件) | 0x01 |
配置文件(cfg文件) | 0x02 |
数据文件(dat文件) | 0x04 |
信息文件(inf文件) | 0x08 |
数据模型文件(dmf文件) | 0x10 |
根据解析出的报文中内容含有的文件类型,采用公式(1)计算所有文件类型的值value,并存入数据库中。
其中,type表示报文中内容含有的文件类型,F(type)为文件类型对应的标志位,0xFF为16进制数。
S202:接收故障录波监测装置上传的Comtrade格式工频录波文件,根据文件类型对工频录波文件进行分类压缩,得到压缩后的工频录波文件。
具体地,所述步骤202接收到故障录波监测装置上传的Comtrade格式工频录波文件后,根据文件类型对工频录波文件进行分类压缩,对于数据文件类型的工频录波文件,采用傅里叶变换(FFT)对数据文件类型的工频录波文件进行压缩,对于其他类型的工频录波文件采用一般的压缩算法进行压缩。电力录波数据在同一时间段内的采样频率是恒定不变。
在本实施例中,采用傅里叶变换(FFT)对数据文件类型的工频录波文件进行压缩的具体实现过程如下:
设在该段时间内有N个等时间隔的采样数据x0,x1,…,xn-1,其离散傅里叶变换表达式为:
由上式得到的Xk为原始采样信号在相应的时段内的频谱,记录了采样信号中不同频率成分的分量。在误差允许的范围内,通过忽略Xk中接近于0的系数,保留原始信号中的大部分信息,达到压缩数据的目的。
由于电力稳态信号为周期性信号,其频率只含有基波和少数次谐波,Xk中的绝大多数的系数都接近于0,因此采用傅里叶算法可获得很高的压缩率。原始信号可以通过离散傅里叶反变换获得:
本实施例采用离散傅里叶变换方法,在误差允许的范围内,通过忽略原始录波信号中接近于0的系数,保留原始信号中的大部分信息,达到压缩数据的目的。
S203:根据数据库中存储的文件类型,判断是否全部收到所有工频录波文件,若没有全部收到,则表明还存在工频录波文件未上传,将数据库中该工频录波文件名对应的文件类型的标志位的值进行置位,返回步骤202;若全部收到,则表示Comtrade格式工频录波文件已经全部上传并接收完毕,执行步骤204。
请参阅附图3,判断是否全部收到所有工频录波文件的具体实现方式如下:
获取故障录波监测装置上传的Comtrade格式工频录波文件类型对应的标志位;根据数据库中存储的所有录波文件类型的值Value与接收到的工频录波文件类型的标志位F(type),判断二者是否相等,若Value与F(type)相等,即Value-F(type)等于零,表示已经全部接收到所有的工频录波文件;若Value与F(type)不相等,则Value-F(type)不等于零,表示未全部收到所有的工频录波文件,则将数据库中未接收到的工频录波文件类型对应的标志位进行置位,Value&=~F(type),先将未接收到的工频录波文件类型的F(type)的值取反,然后与数据库中存在的值进行与操作。
S204:根据压缩后的工频录波文件的大小,从数据库中获取一个合适的大文件名,将压缩后的工频录波文件存储到大文件中,记录当前工频录波文件的位置和大小到磁盘索引文件,并记录到缓存中,同时更新大文件的信息。
请参阅附图4,所述步骤204的具体实现方式如下:
从redis数据库中获取大文件列表,该大文件列表记录大文件存放信息,包括已存放到的编号等信息,找到适合当前压缩后工频录波文件的大文件,该大文件大小固定为128M,同时采用内存页大小(4K)分为32K个扇区并对其进行编号。
磁盘索引文件格式为:Comtrade格式工频录波文件名-大文件名、工频录波文件起始位置、工频录波文件大小,缓存采用redis数据库主备模式,主机用于写文件,备机用于读取数据,key记录Comtrade格式工频录波文件名,value存储工频录波文件起始位置和工频录波文件大小。
根据工频录波文件大小,以size/4k求出所占扇区个数,获取可以连续存储该个数的起始位置,将工频录波文件写入磁盘,并修改大文件列表的信息,将已经使用的位置置“1”,表示该位置不可用。
综上所述,本实施例提出的基于索引的工频录波文件压缩存储方法,所取得的有益效果是:
(1)节约磁盘空间。将工频录波文件进行压缩,尤其是对数据文件进行特定算法的压缩,充分考虑到工频录波文件的数据类型特殊性,使得压缩率的到提高,将小文件合并成大文件,也可以降低存储碎片。
(2)节约***资源,提高读取录波文件的速率。充分利用文件相关性,将相关联的文件打包压缩成一个文件,然后将打包压缩后的文件顺序的追加到大文件中,可以减少对***索引节点的使用,提高了元数据的检索和查询效率。
(3)简化了I/O访问流程。根据缓存数据,获工频录波文件名对应的索引信息,可以进行一次I/O操作,读取一次工频录波数据。
(4)增加了数据局部性,提高了存储效率。磁盘文件***或者分布式文件***中,文件的元数据和数据存储在不同位置。采用合并存储机制后,小文件的元数据和数据可以一并连续存储大文件中,这大大增强了单个小文件内部的数据局部性。小文件合并过程中,可以利用文件之间的空间局部性、时间局部性以及关联,尽量将可能连续访问的小文件在大文件中进行连续存储,增强了小文件之间的数据局部性。这直接降低了磁盘上随机I/O比率,转换成了顺序I/O,能够有效提高I/O读写性能。
实施例三
本实施例提供一种基于索引的工频录波文件压缩存储***,请参阅附图6,该***包括:
报文解析模块301,用于接收并解析报文,获取待上传的工频录波文件类型,存入数据库;
文件压缩模块302,用于接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;
判断模块303,用于判断是否全部接收需上传的所有工频录波文件,若未全部接收,则表明还存在工频录波文件未上传,将数据库中未接收到的文件类型对应的标志位进行置位;若全部接收,则表明所有工频录波文件已经全部上传并接收完毕;
文件存储模块304,用于根据压缩后的工频录波文件的大小,从数据库的大文件列表中选取合适的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息。
在本实施例中,所述文件存储模块具体用于:
从数据库中获取大文件列表,根据大文件记录的当前扇区编号选取适合当前压缩后工频录波文件的大文件,其中按照内存页大小将大文件分割成若干扇区,并对每个扇区编号;
将大文件名、工频录波文件名、工频录波文件起始位置以及工频录波文件大小记录到磁盘索引文件中;同时记录工频录波文件名和存储工频录波文件起始位置和工频录波文件大小到缓存中;
根据压缩后的工频录波文件大小,求出所占扇区个数,将压缩后的文件追追加到获取的大文件的后面,并修改大文件列表的信息,将已经使用的位置置1。
实施例四
本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的基于索引的工频录波文件压缩存储方法中的步骤。
实施例五
本实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的基于索引的工频录波文件压缩存储方法中的步骤。
本领域内的技术人员应明白,本公开的实施例可提供为方法、***、或计算机程序产品。因此,本公开可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccessMemory,RAM)等。
上述虽然结合附图对本公开的具体实施方式进行了描述,但并非对本公开保护范围的限制,所属领域技术人员应该明白,在本公开的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本公开的保护范围以内。
Claims (8)
1.一种基于索引的工频录波文件压缩存储方法,其特征是,包括以下步骤:
接收并解析报文,获取待上传的工频录波文件类型,存入数据库;
接收故障录波监测装置上传的工频录波文件,根据工频录波文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;具体地,接收到故障录波监测装置上传的Comtrade格式工频录波文件后,根据文件类型对工频录波文件进行分类压缩,对于数据文件类型的工频录波文件,采用傅里叶变换对数据文件类型的工频录波文件进行压缩,对于其他类型的工频录波文件采用一般的压缩算法进行压缩;
判断是否全部接收需上传的所有工频录波文件;
若全部接收,则根据压缩后的工频录波文件的大小,从数据库缓存的大文件列表中选取相应的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息;
其中,所述选取相应的大文件,将当前工频录波文件的位置和大小写入磁盘索引文件和缓存中的步骤包括:
从数据库中获取大文件列表,根据大文件记录的当前扇区编号选取适合当前压缩后工频录波文件的大文件,按照内存页大小将大文件分割成若干个扇区,并对每个扇区进行编号;
将工频录波文件名、大文件名、工频录波文件起始位置以及工频录波文件大小记录到磁盘索引文件中;同时记录工频录波文件名和存储工频录波文件起始位置和工频录波文件大小到缓存中;
根据压缩后的工频录波文件大小,求出所占扇区个数,将压缩后的工频录波文件追加到获取的大文件的后面,并修改大文件列表的信息,将已经使用的位置置1。
2.根据权利要求1所述的基于索引的工频录波文件压缩存储方法,其特征是,所述接收并解析报文的步骤包括:
接收报文数据,并对接收到的报文数据进行解析,得到报文中内容包含的所有文件类型;
按照工频录波文件类型,定义分类表;
根据分类表中所有文件类型对应的标志位,计算所有文件类型的值,并存入数据库。
3.根据权利要求1所述的基于索引的工频录波文件压缩存储方法,其特征是,所述文件类型包括标题文件、配置文件、数据文件、信息文件和数据模型文件。
4.根据权利要求1所述的基于索引的工频录波文件压缩存储方法,其特征是,所述根据文件类型对接收到的工频录波文件进行分类压缩的步骤包括:
对于数据文件类型的工频录波文件,采用傅里叶变换对数据文件类型的工频录波文件进行压缩;对于其他类型的工频录波文件采用文件压缩算法进行压缩。
5.根据权利要求1所述的基于索引的工频录波文件压缩存储方法,其特征是,所述判断是否全部接收需上传的所有工频录波文件的步骤包括:
获取接收到的工频录波文件类型对应的标志位;
根据数据库中存储的所有录波文件类型的值与接收到的工频录波文件类型的标志位,判断二者是否相等;
若二者不相等,则表明还存在该录波文件名的工频录波文件未上传,将数据库中未接收到的工频录波文件类型对应的标志位进行置位;
若二者相等,则表明工频录波文件已经全部上传并接收完毕。
6.一种基于索引的工频录波文件压缩存储***,其特征是,该***包括:
报文解析模块,用于接收并解析报文,获取待上传的工频录波文件类型,存入数据库;
文件压缩模块,用于接收故障录波监测装置上传的工频录波文件,根据文件类型对接收到的工频录波文件进行分类压缩,得到压缩后的工频录波文件;具体地,接收到故障录波监测装置上传的Comtrade格式工频录波文件后,根据文件类型对工频录波文件进行分类压缩,对于数据文件类型的工频录波文件,采用傅里叶变换对数据文件类型的工频录波文件进行压缩,对于其他类型的工频录波文件采用一般的压缩算法进行压缩;
判断模块,用于获取接收到的工频录波文件类型对应的标志位,根据数据库中存储的所有录波文件类型的值与接收到的工频录波文件类型的标志位,判断二者是否相等,若不相等,表示未全部接收,将数据库中未接收到的工频录波文件类型对应的标志位进行置位,更新数据库;若相等,则表示全部接收,代表所有工频录波文件上传完毕;
文件存储模块,用于根据压缩后的工频录波文件的大小,从数据库的大文件列表中选取相应的大文件,将压缩后的工频录波文件存储到大文件中,并将当前工频录波文件的位置和大小记录到磁盘索引文件和缓存中,更新大文件列表的信息;
其中,所述文件存储模块具体用于:
从数据库中获取大文件列表,根据大文件记录的当前扇区编号选取适合当前压缩后工频录波文件的大文件,按照内存页大小将大文件分割成若干个扇区,并对每个扇区进行编号;
将大文件名、工频录波文件名、工频录波文件起始位置以及工频录波文件大小记录到磁盘索引文件中;同时记录工频录波文件名和存储工频录波文件起始位置和工频录波文件大小到缓存中,
根据压缩后的工频录波文件大小,求出所占扇区个数,将压缩后的文件追加到获取的大文件的后面,并修改大文件列表的信息,将已经使用的位置置1。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征是,该程序被处理器执行时实现如权利要求1-5中任一项所述的基于索引的工频录波文件压缩存储方法中的步骤。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征是,所述处理器执行所述程序时实现如权利要求1-5中任一项所述的基于索引的工频录波文件压缩存储方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285771.2A CN109994131B (zh) | 2019-04-10 | 2019-04-10 | 一种基于索引的工频录波文件压缩存储方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910285771.2A CN109994131B (zh) | 2019-04-10 | 2019-04-10 | 一种基于索引的工频录波文件压缩存储方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109994131A CN109994131A (zh) | 2019-07-09 |
CN109994131B true CN109994131B (zh) | 2021-10-22 |
Family
ID=67132996
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910285771.2A Active CN109994131B (zh) | 2019-04-10 | 2019-04-10 | 一种基于索引的工频录波文件压缩存储方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109994131B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110555000A (zh) * | 2019-09-05 | 2019-12-10 | 重庆紫光华山智安科技有限公司 | 一种卡口图片元数据并发写入、读取方法 |
CN111143306B (zh) * | 2019-12-17 | 2023-10-31 | 山东鲁软数字科技有限公司智慧能源分公司 | 智能站网分装置报文优化存储方法及*** |
CN112052243B (zh) * | 2020-09-08 | 2021-05-14 | 贵州乌江水电开发有限责任公司东风发电厂 | 一种基于数据库技术的连续波形记录方法 |
CN114070844B (zh) * | 2021-11-05 | 2024-05-14 | 统信软件技术有限公司 | 一种文件下载方法、装置、计算设备及存储介质 |
CN113868189B (zh) * | 2021-12-02 | 2022-02-11 | 成都奥卡思微电科技有限公司 | 一种波形文件处理方法、存储介质和装置 |
CN115225725B (zh) * | 2022-05-25 | 2023-08-15 | 广州汽车集团股份有限公司 | 数据压缩存储方法、装置、车辆及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462563A (zh) * | 2014-12-26 | 2015-03-25 | 浙江宇视科技有限公司 | 一种文件存储方法和*** |
CN108595567A (zh) * | 2018-04-13 | 2018-09-28 | 郑州云海信息技术有限公司 | 一种小文件的合并方法、装置、设备及可读存储介质 |
CN108717457A (zh) * | 2018-05-23 | 2018-10-30 | 苏州易康萌思网络科技有限公司 | 一种电子商务平台大数据处理方法和*** |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4325651B2 (ja) * | 2005-08-29 | 2009-09-02 | ソニー株式会社 | 記録装置、記録方法、再生装置、再生方法、プログラムおよび記録媒体 |
-
2019
- 2019-04-10 CN CN201910285771.2A patent/CN109994131B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104462563A (zh) * | 2014-12-26 | 2015-03-25 | 浙江宇视科技有限公司 | 一种文件存储方法和*** |
CN108595567A (zh) * | 2018-04-13 | 2018-09-28 | 郑州云海信息技术有限公司 | 一种小文件的合并方法、装置、设备及可读存储介质 |
CN108717457A (zh) * | 2018-05-23 | 2018-10-30 | 苏州易康萌思网络科技有限公司 | 一种电子商务平台大数据处理方法和*** |
Non-Patent Citations (1)
Title |
---|
状态监测大数据存储及聚类划分研究;周国亮;《电 工 技 术 学 报》;20131125;正文第2-4节,附图1 * |
Also Published As
Publication number | Publication date |
---|---|
CN109994131A (zh) | 2019-07-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109994131B (zh) | 一种基于索引的工频录波文件压缩存储方法及*** | |
US8396839B1 (en) | Representing de-duplicated file data | |
CN110019218B (zh) | 数据存储与查询方法及设备 | |
US9836514B2 (en) | Cache based key-value store mapping and replication | |
CN107368517A (zh) | 一种大数据流查询的方法及设备 | |
CN113297135A (zh) | 数据处理方法以及装置 | |
US20070156778A1 (en) | File indexer | |
CN109299352B (zh) | 搜索引擎中网站数据的更新方法、装置和搜索引擎 | |
CN110727406A (zh) | 一种数据存储调度方法及装置 | |
CN111125018B (zh) | 一种文件异常溯源方法、装置、设备及存储介质 | |
CN111367926A (zh) | 分布式***的数据处理方法和装置 | |
CN113918535A (zh) | 一种数据读取方法、装置、设备及存储介质 | |
CN111831691B (zh) | 一种数据读写方法及装置、电子设备、存储介质 | |
CN111897675B (zh) | 一种手机端f2fs文件***的近期删除文件恢复方法 | |
CN111639087A (zh) | 数据库中数据更新方法、装置和电子设备 | |
CN106909623A (zh) | 一种支持高效海量数据分析和检索的数据装置及数据存储方法 | |
CN115576947A (zh) | 一种数据管理方法、装置、组合库、电子设备及存储介质 | |
CN114816247A (zh) | 一种逻辑数据获取方法及装置 | |
CN114625695A (zh) | 数据处理方法以及装置 | |
CN116820323A (zh) | 数据存储方法、装置、电子设备及计算机可读存储介质 | |
CN112506953A (zh) | 基于结构化查询语言sql的查询方法、装置及存储介质 | |
CN104615756A (zh) | 网页加载方法 | |
CN115328878B (zh) | 日志数据存储***、方法、设备及介质 | |
CN111581241B (zh) | 一种无锁处理的读缓存方法 | |
CN117093155A (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 |