CN115328400A - 一种工业数据存储缓存的方法、装置及相关产品 - Google Patents
一种工业数据存储缓存的方法、装置及相关产品 Download PDFInfo
- Publication number
- CN115328400A CN115328400A CN202210982865.7A CN202210982865A CN115328400A CN 115328400 A CN115328400 A CN 115328400A CN 202210982865 A CN202210982865 A CN 202210982865A CN 115328400 A CN115328400 A CN 115328400A
- Authority
- CN
- China
- Prior art keywords
- buffer space
- data
- written
- measuring point
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000013500 data storage Methods 0.000 title claims abstract description 21
- 238000013507 mapping Methods 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 21
- 230000003139 buffering effect Effects 0.000 claims description 15
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 239000002699 waste material Substances 0.000 abstract description 7
- 238000005259 measurement Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 230000007812 deficiency Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004065 semiconductor Substances 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/061—Improving I/O performance
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0676—Magnetic disk device
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)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Recording Measured Values (AREA)
Abstract
本申请提供了一种工业数据存储缓存的方法、装置及相关产品。该方法包括:根据不断写入的历史数据,计算当前测点的历史数据量和每秒写入数据量。然后比较当前测点的历史数据量超过当前缓冲空间大小,或达到配置刷新时间。如果满足超过当前缓冲空间大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并且根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。如此,通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间而造成缓冲空间的浪费问题,提高了缓冲空间的资源利用率。
Description
技术领域
本申请涉及工业大型实时历史数据库领域,尤其涉及一种工业数据存储缓存的方法、装置及相关产品。
背景技术
在大型工业实时历史数据库应用中,需要持续不断的实时采集大型工业现场的实时数据,并将其存储到历史数据库中。历史数据缓冲技术由于能够提高写入性能,且降低磁盘IO,已成为数据存储的重要组成部分。其中,历史数据缓冲是指将测点数据暂时存放在缓冲空间,当缓冲的数据达到预设阈值后,将测点数据整合写入磁盘。
现有技术往往根据数据测点的数量开辟固定大小的缓冲空间。然而,在实际应用中,并非所有测点数据都在实时变化,因此,为每个测点数据开辟固定大小的缓冲空间,会导致测点数据不变的测点一直占用缓冲空间,造成缓存空间浪费。
发明内容
有鉴于此,本申请提供了一种工业数据存储缓存的方法、装置及相关产品,旨在通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间,提高缓冲空间的资源利用率。
第一方面,本申请提供了一种工业数据存储缓存的方法,应用于实时历史数据库,所述方法包括:
响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量;
响应于所述当前测点缓冲的历史数据量超过当前缓冲空间的大小,和/或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间;所述当前缓冲空间用于缓冲当前测点的数据。
可选的,所述根据当前测点的每秒写入数据量和数据类型更新缓冲空间,包括:
根据所述当前测点的每秒写入数据量和数据类型,确定每秒写入字节数;
根据所述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
可选的,所述预设的缓冲空间与每秒写入字节数的映射关系,具体包括:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数。
可选的,在响应于不断写入的历史数据之前,所述方法还包括:
响应于历史存档服务第一次启动,根据测点的数据类型和预设的缓冲空间和数据类型的映射关系,创建固定大小的缓冲空间;
将创建的所述固定大小的缓冲空间,确定当前缓冲空间。
可选的,所述预设的缓冲空间和数据类型的映射关系,具体包括:
缓冲空间=数据类型*第二随机数系数。
第二方面,本申请提供了一种工业数据存储缓存的装置,应用于实时历史数据库,该装置包括:
计算单元,用于响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量;
写入单元,用于响应于前测点缓冲的历史数据量超过当前缓冲空间的大小,和/或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间;所述当前缓冲空间用于缓冲当前测点的数据。
可选的,所述写入单元,包括:
字节数确定模块,用于根据所述当前测点的每秒写入数据量和数据类型,确定每秒写入字节数;
更新模块,用于根据所述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
可选的,所述预设的缓冲空间与每秒写入字节数的映射关系,具体包括:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数
第三方面,本申请实施例提供了一种电子设备。该设备包括:存储器和处理器。
存储器用于用于存储程序代码,并将程序代码传输给处理器。
处理器:用于根据程序代码中的指令执行第一方面中任一项所述工业数据存储缓存的方法步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储代码,所述代码被处理器执行时实现如第一方面中任一项所述工业数据存储缓存的方法的步骤。
本申请提供了一种工业数据存储缓存的方法、装置及相关产品。在执行所述方法时,首先根据不断写入的历史数据,计算当前测点的历史数据量和每秒写入数据量。然后比较当前测点的历史数据量超过当前缓冲空间大小,或达到配置刷新时间。如果满足超过当前缓冲空间大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并且根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。如此,通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间而造成缓冲空间的浪费问题,进而提高了缓冲空间的资源利用率。
附图说明
为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为根据数据测点的数量开辟固定大小缓冲空间的示意图;
图2为本申请实施例提供的一种工业数据存储缓冲的方法流程图;
图3为本申请实施例提供的另一种工业数据存储缓存的方法流程图;
图4为本申请实施例提供的一种缓存管理示意图;
图5为本申请实施例提供的第三种工业数据存储缓存的方法流程图;
图6为本申请实施例提供的一种工业数据存储缓存的装置结构示意图。
具体实施方式
本申请说明书和权利要求书及附图说明中的术语“第一”、“第二”“第三”、和“第四”等是用于区别不同对象,而不是用于限定特定顺序。
在本申请实施例中,“作为示例”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“作为示例”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“作为示例”或者“例如”等词旨在以具体方式呈现相关概念。
本申请的实施方式部分使用的术语仅用于对本申请的具体实施例进行解释,而非旨在限定本申请。
正如前文所述,现有技术往往根据数据测点的数量开辟固定大小的缓冲空间。参见图1,为根据数据测点的数量开辟固定大小缓冲空间的示意图。实时数据服务向历史存储服务推送的数据,先进行存档缓冲。当缓冲达到一定的阈值,将缓冲的数据写入磁盘至存档文件,进行存储。其中,存档缓冲的缓冲空间为根据推送数据的数量开辟的固定大小的缓冲空间。显而易见,这些缓冲空间中包括大量的空位置,用于存放测点数据长时间不变的测点。这导致在实际存储时,缓存空间会存在空间资源的浪费。
基于此,本申请提出了通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间而造成缓冲空间的浪费问题,进而提高缓冲空间的内存资源合理实用。
为了使本技术领域的人员更好地理解本申请方案。下面对一些专业术语进行解释说明。
数据缓冲:将每次都需要写入磁盘的数据,先暂时缓存在内存中,分批次分块写入磁盘,减少随机磁盘IO,提升磁盘写入性能。
磁盘IO:一般指磁盘读/写IO,读IO就是发指令从磁盘读取某段扇区的内容,写IO就是发指令将数据写入某段磁盘扇区内。
测点数据:例如化学反应釜内温度、湿度、压力等数据,每一项数据都作为一个位号来提现到工业实时历史数据库中,测量数据包含当前值、上送时间、数据质量码三个参数。
磁盘:计算机磁盘,相比较于计算机内存来说,空间较大,但操作速度相对于计算机内存来说较慢,但是可以长期保存数据,断电后数据不会被清空,一把电脑500G\1T。
内存:指计算机内存,相比较于计算机磁盘来说,空间较小,但速度较快,不能长期保存数据,断电后数据会被清空,一般电脑内存16G、32G。
数据类型:指数据测点的数值类型,例如:浮点型、整数型、字符串型、开关型等等。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参见图2,为本申请实施例提供的一种工业数据存储缓冲的方法流程图,应用于工业大型实时历史数据库中。该方法至少包括:
S201:响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量。
在本申请实施例中,历史数据库需要不断采集工业现场的实时数据,采集后的实时数据作为历史数据不断写入实时数据库中。历史数据库首先需要根据当前不断写入的历史数据,计算当前测点缓冲的历史数据量。其中缓冲的历史数据量为存档缓存需要占用的缓冲空间大小,以及磁盘IO占用的计算机内存。根据当前测点的缓冲的历史数据量,比如缓冲的化学反应釜内温度、湿度等数据量,确定存档缓冲占用的缓冲空间。
在本申请实施例中,根据不断的历史数据,历史数据库可以计算出当前测点的每秒写入数据量。比如,可以获取1min当前测点数据写入量,将该数据写入量/60,即为每秒写入数据量。根据当前测点的每秒写入数据量,结合数据类型,可以对缓冲空间进行动态调整。
S202:响应于所述每秒写入数据量超过当前缓冲空间的大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的数据流量和数据类型更新当前缓冲空间。
在本申请实施例中,当历史数据库获取当前测点的缓冲数据量和每秒写入数据量之后,首先判断当前测点的缓冲数据量是否超过当前缓冲空间的大小。其中,缓冲空间用于缓冲当前测点的数据。如果超过当前缓冲空间的大小,将当前缓冲的数据写入磁盘。并根据当前测点的每秒写入数据流量和数据类型动态当前缓冲空间。
在本申请实施例中,可以预先构建缓冲空间与每秒写入数据流量和数据类型之间的映射关系。根据该映射关系,就可以获取缓冲空间的大小。示例性说明:假设缓冲空间大小为f(x,y),其中,x表示每秒写入数据流量,y表示数据类型长度。则f(x,y)=axy+c。其中,a为固定系数,c为固定常数。如此,确定x和数据类型,既可以确定x和y,如此,代入上述公式可以获得缓冲空间大小。
在本申请实施例中,可以通过如下方式实现动态更新当前缓冲空间:
根据当前测点每秒写入的数据量和数据类型,确定每秒写入字节数。示例性说明:假设每秒写入数据量为60,数据为浮点型,则数据类型长度4字节,则每秒写入字节数为60*4=240字节。根据上述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
在本申请实施例中,考虑到大部分测点在相同频率变化的情况,为避免测点数据在同一时刻写入存档文件,而导致计算机短时内存占用量较大,而影响计算机运行速度问题。预设的缓冲空间和每秒写入字节数的映射关系可以为:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数。
其中,缓冲切换时间是指本次缓冲空间开始缓冲到将缓存中数据写入磁盘所需要的时间。在本申请实施例中,缓冲切换时间可以是计算机预先配置的刷新时间。对于计算机来讲,由于写前日志和断电恢复等功能的涉及,使得历史数据库的缓冲根据配置时间定期写入磁盘。示例性说明:如果配置时间为30分钟,则缓存数据需要每个30分钟刷新写入一次磁盘。这一缓冲切换时间为30分钟。此外,缓冲切换时间也可以是内存空间不足所用的缓冲时间。第一随机系数是为每个测点的当前数据分配的任意随机数。其目的是避免大部分测点数据在相同频率变化情况下,测点数据在同一时刻写入存档文件而导致计算机短时内存占用量较大,而影响计算机运行速度问题。
示例性说明:假设配置刷新时间为30min,测点数据频率相同,即每秒写入字节数相同,则会在同一时刻全部写入存档文件。当为当前测点数据分配一个随机数,比如为0.9,如此,缓冲空间内存空间会降低。不断写入的历史数据,即时不到30min,就达到内存空间不足,因此,在未达到配置刷新时间,当前测点数据就会写入磁盘,而不会集中在同一时刻写入文档。
本申请提供了工业数据存储缓存的方法,具体来讲:首先根据不断写入的历史数据,计算当前测点的每秒写入数据量。然后比较每秒写入数据量是否超过当前缓冲空间大小,或达到配置刷新时间。如果满足超过当前缓冲空间大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并且根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。如此,通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间而造成缓冲空间的浪费问题,进而提高了缓冲空间的资源利用率。
参见图3,为本申请实施例提供的另一种工业数据存储缓存的方法流程图,应用于工业大型实时历史数据库中。该方法当内存空间不足时,进行缓存切换。该方法至少包括:
S301:预先配置刷新时间。
在本申请实施例中,刷新时间是指定期写入磁盘的时间。
S302:判断历史存档服务是否为第一次启动,若是,进入S303;否则,进入S305。
S303:加载配置中测点,根据测点数据类型和预设的缓冲空间和数据类型的映射关系,创建固定大小的缓冲空间。
在本申请实施例中,考虑到大部分测点数据在相同频率变化情况,构建预设的缓冲空间和数据类型的映射关系具体如下:
缓冲空间=数据类型*第二随机数系数。
示例性说明:如果数据类型为开关型,当第二随机数系数为1时,缓冲空间确定为128字节,如果第二随机数系数改变,则缓冲空间也会相应变化。如果数据类型为浮点型,第二随机数系数为1时,则缓冲空间为4096字节等。
S304:将上述固定大小的缓冲空间,确定为当前缓冲空间。
S305:响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量。
S306:判断当前测点缓冲的历史数据量是否超过当前缓冲空间的大小,若是,进入S307;否则转入S305。
S307:将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。
在本申请实施例中,利用根据当前测点每秒写入的数据量和数据类型,确定每秒写入字节数。根据缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数更新缓冲空间。
参见图4,为本申请实施例提供的一种缓存管理示意图。对比图4和图1,可以很明显的发现:相对于现有技术,本申请提供的实施例不必须为每个测点数据开辟固定大小的缓存空间,避免缓存空间浪费。
本申请实施例提供的一种工业数据缓冲的方法,通过随机数系数,可以制造出相位偏差,从而降低同一时间批量写磁盘的几率,降低了磁盘IO,提高了存储性能。
参见图5,为本申请实施例提供的第三种工业数据存储缓存的方法流程图,应用于工业大型实时历史数据库中,该方法进行缓存切换,除考虑内存空间不足以外,还综合考虑配置刷新时间。该方法至少包括以下步骤:
S501:预先配置刷新时间。
S502:判断历史存档服务是否为第一次启动,若是,进入S503;否则,进入S505。
S503:加载配置中测点,根据测点数据类型和预设的缓冲空间和数据类型的映射关系,创建固定大小的缓冲空间。
S504:将上述固定大小的缓冲空间,确定为当前缓冲空间。
S505:响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量。
S506:判断是否达到配置刷新时间,如果是,进入S508,否则进入S507。
S507:判断当前测点缓冲的历史数据量是否超过当前缓冲空间的大小,若是,进入S508;否则转入S505。
S508:将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。
此外,本申请实施例还提供了相对应的装置。参见图6,为本申请实施例提供的一种工业数据存储缓存的装置600结构示意图。应用于实时历史数据库。该装置600包括:
计算单元601,响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量;
写入单元602,响应于缓冲的所述历史数据量超过当前缓冲空间的大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间;所述当前缓冲空间用于缓冲当前测点的数据。
可选的,所述写入单元602,包括:
字节数确定模块,用于根据所述当前测点的每秒写入数据量和数据类型,确定每秒写入字节数;
更新模块,用于根据所述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
可选的,所述预设的缓冲空间与每秒写入字节数的映射关系,具体包括:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数。
可选的,所述装置600还包括:
初始创建单元,用于响应于历史存档服务第一次启动,根据测点的数据类型和预设的缓冲空间和数据类型的映射关系,创建固定大小的缓冲空间;
将创建的所述固定大小的缓冲空间,确定当前缓冲空间。
可选的,所述预设的缓冲空间和数据类型的映射关系,具体包括:
缓冲空间=数据类型*第二随机数系数。
本申请提供了工业数据存储缓存的装置。其中计算单元601首先根据不断写入的历史数据,计算当前测点的历史数据量和每秒写入数据量。写入单元602比较当前测点的历史数据量超过当前缓冲空间大小,或达到配置刷新时间。如果满足超过当前缓冲空间大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并且根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间。如此,通过测点的数据类型和数据流量动态调整缓冲空间大小,从而避免测点数据不变的测点一直占用缓冲空间而造成缓冲空间的浪费问题,进而提高了缓冲空间的资源利用率。
本申请实施例还提供了一种电子设备。该设备包括:存储器和处理器。
存储器用于用于存储程序代码,并将程序代码传输给处理器。
处理器:用于根据程序代码中的指令执行上述一种控制设备准入的方法的步骤。
本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本申请实施例的一种工业数据存储缓存的方法。
在实际应用中,所述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请示例性的实施方式,并非用于限定本申请的保护范围。
Claims (10)
1.一种工业数据存储缓存的方法,其特征在于,应用于实时历史数据库,所述方法包括:
响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量;
响应于缓冲的所述历史数据量超过当前缓冲空间的大小,和/或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间;所述当前缓冲空间用于缓冲当前测点的数据。
2.根据权利要求1所述方法,其特征在于,所述根据当前测点的每秒写入数据量和数据类型更新缓冲空间,包括:
根据所述当前测点每秒写入的数据量和数据类型,确定每秒写入字节数;
根据所述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
3.根据权利要求2所述方法,其特征在于,所述预设的缓冲空间与每秒写入字节数的映射关系,具体包括:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数。
4.根据权利要求1所述方法,其特征在于,在响应于不断写入的历史数据之前,所述方法还包括:
响应于历史存档服务第一次启动,根据测点的数据类型和预设的缓冲空间和数据类型的映射关系,创建固定大小的缓冲空间;
将创建的所述固定大小的缓冲空间,确定当前缓冲空间。
5.根据权利要求4所述方法,其特征在于,所述预设的缓冲空间和数据类型的映射关系,具体包括:
缓冲空间=数据类型*第二随机数系数。
6.一种工业数据存储缓存的装置,其特征在于,应用于实时历史数据库,所述装置包括:
计算单元,响应于不断写入的历史数据,计算当前测点缓冲的历史数据量和当前测点的每秒写入数据量;
写入单元,响应于缓冲的所述历史数据量超过当前缓冲空间的大小,或达到配置刷新时间,将当前缓冲的数据写入磁盘,并根据当前测点的每秒写入数据量和数据类型更新当前缓冲空间;所述当前缓冲空间用于缓冲当前测点的数据。
7.根据权利要求6所述装置,其特征在于,所述写入单元,包括:
字节数确定模块,用于根据所述当前测点的每秒写入数据量和数据类型,确定每秒写入字节数;
更新模块,用于根据所述每秒写入字节数,以及预设的缓冲空间与每秒写入字节数的映射关系,更新缓冲空间。
8.根据权利要求7所述装置,其特征在于,所述预设的缓冲空间与每秒写入字节数的映射关系,具体包括:
缓冲空间=缓存切换时间*每秒写入字节数*第一随机数系数。
9.一种电子设备,该设备包括:存储器和处理器。
存储器用于用于存储程序代码,并将程序代码传输给处理器。
处理器:用于根据程序代码中的指令执行如权利要求1-5中任一项所述工业数据存储缓存的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储代码,所述代码被处理器执行时实现如权利要求1-5中任一项所述工业数据存储缓存的方法步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210982865.7A CN115328400A (zh) | 2022-08-16 | 2022-08-16 | 一种工业数据存储缓存的方法、装置及相关产品 |
PCT/CN2022/135586 WO2024036811A1 (zh) | 2022-08-16 | 2022-11-30 | 一种工业数据存储缓存的方法、装置及相关产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210982865.7A CN115328400A (zh) | 2022-08-16 | 2022-08-16 | 一种工业数据存储缓存的方法、装置及相关产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115328400A true CN115328400A (zh) | 2022-11-11 |
Family
ID=83923090
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210982865.7A Pending CN115328400A (zh) | 2022-08-16 | 2022-08-16 | 一种工业数据存储缓存的方法、装置及相关产品 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115328400A (zh) |
WO (1) | WO2024036811A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024036811A1 (zh) * | 2022-08-16 | 2024-02-22 | 浙江中控技术股份有限公司 | 一种工业数据存储缓存的方法、装置及相关产品 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006277545A (ja) * | 2005-03-30 | 2006-10-12 | Hitachi Ltd | 計算機システム、記憶装置システムおよびライト処理制御方法 |
CN101667205B (zh) * | 2009-09-28 | 2011-03-30 | 河南电力试验研究院 | 一种面向快速回放的实时测点数据存储方法 |
CN102043795B (zh) * | 2009-10-13 | 2013-01-16 | 上海新华控制技术(集团)有限公司 | 过程控制历史数据文件结构的建立方法和数据读写方法 |
CN108694241B (zh) * | 2018-05-14 | 2023-04-18 | 平安科技(深圳)有限公司 | 一种数据的存储方法及设备 |
CN112965976A (zh) * | 2021-02-26 | 2021-06-15 | 中国人民解放军海军工程大学 | 一种电磁能系统业务时序数据压缩方法、非暂态可读记录媒体及数据处理装置 |
CN115328400A (zh) * | 2022-08-16 | 2022-11-11 | 浙江中控技术股份有限公司 | 一种工业数据存储缓存的方法、装置及相关产品 |
-
2022
- 2022-08-16 CN CN202210982865.7A patent/CN115328400A/zh active Pending
- 2022-11-30 WO PCT/CN2022/135586 patent/WO2024036811A1/zh unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024036811A1 (zh) * | 2022-08-16 | 2024-02-22 | 浙江中控技术股份有限公司 | 一种工业数据存储缓存的方法、装置及相关产品 |
Also Published As
Publication number | Publication date |
---|---|
WO2024036811A1 (zh) | 2024-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10795615B2 (en) | Method and device for storage management in a hierarchical storage system | |
US11816083B2 (en) | Method and system for indexing of time-series data | |
CN112765271B (zh) | 区块链交易索引的存储方法、装置、计算机设备及介质 | |
US9606937B1 (en) | Cache insertion based on threshold access frequency | |
CN111949710B (zh) | 数据存储方法、装置、服务器及存储介质 | |
US11288210B2 (en) | Method, device and computer program product for managing storage system | |
TW201539187A (zh) | 快閃記憶體之壓縮、讀取方法及應用其方法的裝置 | |
CN112748863B (zh) | 用于处理数据的方法、电子设备和计算机程序产品 | |
CN113391765A (zh) | 基于分布式存储系统的数据存储方法、装置、设备及介质 | |
CN107729570B (zh) | 用于服务器的数据迁移方法和装置 | |
CN111857559B (zh) | 用于管理元数据的方法、装置和计算机程序产品 | |
CN102236674A (zh) | 一种索引页更新方法及装置 | |
CN113325998B (zh) | 读写速度控制方法、装置 | |
CN115328400A (zh) | 一种工业数据存储缓存的方法、装置及相关产品 | |
CN103177080B (zh) | 文件预读的方法和装置 | |
CN108664577B (zh) | 一种基于flash空闲区的文件管理方法及系统 | |
CN112631504A (zh) | 利用堆外内存实现本地缓存的方法和装置 | |
CN112367384A (zh) | 基于Kafka集群的动态限速方法、装置以及计算机设备 | |
CN117235088B (zh) | 一种存储系统的缓存更新方法、装置、设备、介质及平台 | |
US9430365B2 (en) | Managing high speed memory | |
JP5967322B1 (ja) | 情報処理装置および情報処理方法 | |
US20200167276A1 (en) | Data storage optimization for non-volatile memory | |
US6654867B2 (en) | Method and system to pre-fetch compressed memory blocks using pointers | |
CN108875036B (zh) | 页面数据缓存方法、装置和电子设备 | |
CN111142790B (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 | ||
CB02 | Change of applicant information |
Country or region after: China Address after: No. 309 Liuhe Road, Binjiang District, Hangzhou City, Zhejiang Province (High tech Zone) Applicant after: Zhongkong Technology Co.,Ltd. Address before: No. six, No. 309, Binjiang District Road, Hangzhou, Zhejiang Applicant before: ZHEJIANG SUPCON TECHNOLOGY Co.,Ltd. Country or region before: China |
|
CB02 | Change of applicant information |