CN117908802A - 数据存储方法、装置、电子设备及存储介质 - Google Patents
数据存储方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117908802A CN117908802A CN202410309177.3A CN202410309177A CN117908802A CN 117908802 A CN117908802 A CN 117908802A CN 202410309177 A CN202410309177 A CN 202410309177A CN 117908802 A CN117908802 A CN 117908802A
- Authority
- CN
- China
- Prior art keywords
- rate
- storage
- soc
- data
- nodes
- 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
- 238000013500 data storage Methods 0.000 title claims abstract description 54
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000013480 data collection Methods 0.000 claims description 48
- 238000004891 communication Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 8
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 241000030538 Thecla Species 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000011282 treatment Methods 0.000 description 1
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/0653—Monitoring storage devices or systems
-
- 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/0683—Plurality of storage devices
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种数据存储方法、装置、电子设备及存储介质。包括:调用第一SOC根据所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定第一存储程序的第一剩余存储速率;调用第二SOC根据所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定第二存储程序的第二剩余存储速率;调用第一SOC将第一剩余存储速率发送至第二SOC,调用第二SOC将第二剩余存储速率发送至第一SOC;调用第一SOC和第二SOC,根据第一剩余存储速率和第二剩余存储速率确定对应节点的存储位置,对采集的数据进行存储、及动态调整对应节点的数据采集速率。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据存储方法、装置、电子设备及存储介质。
背景技术
自动驾驶数据采集是数据闭环中的一个环节。可用于前期模型训练和后期模型迭代的输入。
目前,数据的采集频率是根据算法给出的数据频率和精度需求算出各节点(各种传感器)固定的采集频率,通常情况下,都会要求采集全量数据,对数据存储性能提出了较高的要求,需要更高性能的硬盘。同时,基于双SOC(System on Chip,系统级芯片)域控,针对小数据量采集,会将双SOC的数据全部集中到某一个SOC存储。针对大数据量采集,会分别将数据存储到两片SOC上,而在传感器数量较多且数据存储精度有一定要求的场景下不能充分利用硬件接口和算力等能力,因此,无法最大化双SOC系统采集数据的数量。
发明内容
本申请实施例提供一种数据存储方法、装置、电子设备及存储介质,以解决现有技术中无法最大化双SOC系统采集数据的数量,且采集全量数据,对数据存储性能提出了较高的要求,需要更高性能的硬盘的问题。
为了解决上述技术问题,本申请实施例是这样实现的:
第一方面,本申请实施例提供了一种数据存储方法,应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数,所述方法包括:
调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率;
调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率;
调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC;
调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
可选地,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据存储至第一磁盘内,并根据所述第一剩余存储速率调高所述所有第一节点的数据采集速率;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据存储至第二磁盘内,并根据所述第二剩余存储速率调高所述所有第二节点的数据采集速率;
其中,所述第一磁盘为所述第一SOC的外接磁盘,所述第二磁盘为所述第二SOC的外接磁盘。
可选地,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率等于0的情况下,调用所述第二SOC根据所述所有第二节点的数据采集速率与所述第二存储程序的存储速率阈值的速率差值,确定所述所有第二节点中的待调整存储位置的第三节点;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点中除所述第三节点外的其它节点采集的数据存储至第二磁盘内;
调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据和所述第三节点采集的数据存储至第一磁盘,根据所述第一剩余存储速率确定所述所有第一节点的第一数据采集速率和所述第三节点的第二数据采集速率,并调高所述所有第一节点的数据采集速率至所述第一数据采集速率,将所述第二数据采集速率发送至所述第二SOC;
调用所述第二SOC将所述第三节点的数据采集速率调高至所述第二数据采集速率。
可选地,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率等于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC根据所述所有第一节点的数据采集速率与所述第一存储程序的存储速率阈值的速率差值,确定所述所有第一节点中的待调整存储位置的第四节点;
调用所述第一SOC控制所述第一存储程序将所述所有第一节点中除所述第四节点外的其它节点采集的数据存储至第一磁盘内;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据和所述第四节点采集的数据存储至第二磁盘,根据所述第二剩余存储速率确定所述所有第二节点的第三数据采集速率和所述第四节点的第四数据采集速率,并调高所述所有第二节点的数据采集速率至所述第三数据采集速率,将所述第四数据采集速率发送至所述第一SOC;
调用所述第一SOC将所述第四节点的数据采集速率调高至所述第四数据采集速率。
可选地,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率等于0,且所述第二剩余存储速率等于0的情况下,调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率;
调用所述第二SOC采用第二降速策略,调低所述所有第二节点的数据采集速率。
可选地,所述调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率,包括:
在所述第一降速策略为优先级策略的情况下,获取所述所有第一节点中优先级低于优先级阈值的第五节点,并降低所述第五节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0;
在所述第一降速策略为平均降速策略的情况下,根据所述所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述所有第一节点的降速速率,并根据所述降速速率降低所述所有第一节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0。
可选地,所述调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率,包括:
调用所述第一SOC,获取所述第一SOC下的所有第一节点中各第一节点的数据采集速率;
根据所述数据采集速率,确定所述所有第一节点的总数据采集速率;
根据所述第一存储程序的最大存储速率和所述总数据采集速率,确定所述第一存储程序的第一剩余存储速率。
第二方面,本申请实施例提供了一种数据存储装置,应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数,所述装置包括:
第一剩余速率确定模块,用于调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率;
第二剩余速率确定模块,用于调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率;
剩余存储速率发送模块,用于调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC;
数据存储模块,用于调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
可选地,所述数据存储模块包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据存储至第一磁盘内,并根据所述第一剩余存储速率调高所述所有第一节点的数据采集速率;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据存储至第二磁盘内,并根据所述第二剩余存储速率调高所述所有第二节点的数据采集速率;
其中,所述第一磁盘为所述第一SOC的外接磁盘,所述第二磁盘为所述第二SOC的外接磁盘。
可选地,所述数据存储模块包括:
第三节点确定单元,用于在所述第一剩余存储速率大于0,且所述第二剩余存储速率等于0的情况下,调用所述第二SOC根据所述所有第二节点的数据采集速率与所述第二存储程序的存储速率阈值的速率差值,确定所述所有第二节点中的待调整存储位置的第三节点;
第一数据存储单元,用于调用所述第二SOC控制所述第二存储程序将所述所有第二节点中除所述第三节点外的其它节点采集的数据存储至第二磁盘内;
第二数据存储单元,用于调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据和所述第三节点采集的数据存储至第一磁盘,根据所述第一剩余存储速率确定所述所有第一节点的第一数据采集速率和所述第三节点的第二数据采集速率,并调高所述所有第一节点的数据采集速率至所述第一数据采集速率,将所述第二数据采集速率发送至所述第二SOC;
第一速率调整单元,用于调用所述第二SOC将所述第三节点的数据采集速率调高至所述第二数据采集速率。
可选地,所述数据存储模块包括:
第四节点确定单元,用于在所述第一剩余存储速率等于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC根据所述所有第一节点的数据采集速率与所述第一存储程序的存储速率阈值的速率差值,确定所述所有第一节点中的待调整存储位置的第四节点;
第三数据存储单元,用于调用所述第一SOC控制所述第一存储程序将所述所有第一节点中除所述第四节点外的其它节点采集的数据存储至第一磁盘内;
第四数据存储单元,用于调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据和所述第四节点采集的数据存储至第二磁盘,根据所述第二剩余存储速率确定所述所有第二节点的第三数据采集速率和所述第四节点的第四数据采集速率,并调高所述所有第二节点的数据采集速率至所述第三数据采集速率,将所述第四数据采集速率发送至所述第一SOC;
第二速率调整单元,用于调用所述第一SOC将所述第四节点的数据采集速率调高至所述第四数据采集速率。
可选地,所述数据存储模块包括:
第三速率调整单元,用于在所述第一剩余存储速率等于0,且所述第二剩余存储速率等于0的情况下,调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率;
第四速率调整单元,用于调用所述第二SOC采用第二降速策略,调低所述所有第二节点的数据采集速率。
可选地,所述第三速率调整单元包括:
第一速率调整子单元,用于在所述第一降速策略为优先级策略的情况下,获取所述所有第一节点中优先级低于优先级阈值的第五节点,并降低所述第五节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0;
第二速率调整子单元,用于在所述第一降速策略为平均降速策略的情况下,根据所述所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述所有第一节点的降速速率,并根据所述降速速率降低所述所有第一节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0。
可选地,所述第一剩余速率确定模块包括:
数据采集速率获取单元,用于调用所述第一SOC,获取所述第一SOC下的所有第一节点中各第一节点的数据采集速率;
总采集速率确定单元,用于根据所述数据采集速率,确定所述所有第一节点的总数据采集速率;
第一剩余速率确定单元,用于根据所述第一存储程序的最大存储速率和所述总数据采集速率,确定所述第一存储程序的第一剩余存储速率。
第三方面,本申请实施例提供了一种电子设备,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一项所述的数据存储方法。
第四方面,本申请实施例提供了一种可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一项所述的数据存储方法。
在本申请实施例中,通过调用第一SOC,根据第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定第一存储程序的第一剩余存储速率。调用第二SOC,根据第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定第二存储程序的第二剩余存储速率。调用第一SOC将第一剩余存储速率发送至第二SOC,并调用第二SOC将第二剩余存储速率发送至第一SOC。调用第一SOC和第二SOC,分别根据第一剩余存储速率和第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。本申请实施例针对双SOC域控数据采集的场景,可以根据存储程序的剩余存储速率动态调整数据存储位置,降低数采系统对硬盘性能的要求,以充分磁盘性能,最大化双SOC系统采集数据的数量。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据存储方法的步骤流程图;
图2为本申请实施例提供的一种双SOC架构的示意图;
图3为本申请实施例提供的一种数据存储装置的结构示意图;
图4为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参照图1,示出了本申请实施例提供的一种数据存储方法的步骤流程图,该数据存储方法应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数。如图1所示,该数据存储方法可以包括:步骤101、步骤102、步骤103和步骤104。
步骤101:调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率。
在本实施例中,终端设备可以为但不限于车载终端。在终端设备内安装有多个SOC(大于等于2),多个SOC中包含第一SOC和N(N为大于等于1的正整数)个第二SOC。
在具体实现中,可以将终端设备内的任意一个SOC作为第一SOC,并将其它SOC作为第二SOC。例如,终端设备内安装有两个SOC,即SOC1和SOC2,此时,可以将SOC1作为第一SOC,并将SOC2作为第二SOC。也可以将SOC2作为第一SOC,并将SOC1作为第二SOC等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
在终端设备内,第一SOC与N个第二SOC通信连接,具体地,在多SOC系统内部可以以太网接口或者外部以太网接口将两个SOC系统做网络连接组成局域网。
可以理解地,在终端设备内SOC的数量大于2时,那么任意两个SOC之间均可以通信连接,以进行系统内部的数据通信。
第一节点是指第一SOC下的数据采集节点,在本示例中,第一节点可以为但不限于传感器等。第一节点可以用于采集外部硬件(如雷达等)的数据。
第一存储程序是指设置于第一SOC内的用于存储第一节点采集的数据的程序。
第一节点的数据采集速率是指第一节点采集数据的速率,在本示例中,数据采集速率可以用于指示第一节点在单位时间内采集数据的数据量。
第一存储程序的最大存储速率可以用于指示第一存储程序在单位时间内能存储的最大数据量。在本示例,第一SOC外接第一磁盘,第一存储程序的最大存储速率可以是根据第一磁盘的性能决定的,本实施例对于第一存储程序的最大存储速率的具体数值不加以限制。
第一剩余存储速率可以用于指示第一存储程序在单位时间内可存储数据的剩余数据量,即第一存储程序在单位时间内写入磁盘的数据的剩余数据量。
在进行数据采集的过程中,可以调用第一SOC根据第一SOC下所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定出第一存储程序的第一剩余存储速率。对于第一剩余存储速率的确定过程可以结合下述具体实现方式进行详细描述。
在本申请的一种具体实现中,上述步骤101可以包括:
子步骤A1:调用所述第一SOC,获取所述第一SOC下的所有第一节点中各第一节点的数据采集速率。
在本实施例中,在进行数据采集的过程中,可以调用第一SOC获取所有第一节点中各第一节点的数据采集速率,即每个第一节点的数据采集速率。
在获取到第一SOC下的所有第一节点中各第一节点的数据采集速率之后,执行子步骤A2。
子步骤A2:根据所述数据采集速率,确定所述所有第一节点的总数据采集速率。
在获取到第一SOC下的所有第一节点中各第一节点的数据采集速率之后,可以根据各第一节点的数据采集速率确定出所有第一节点的总数据采集速率。具体地,可以将所有第一节点的数据采集速率相加,得到的和值即为总数据采集速率。
在根据数据采集速率确定出所有第一节点的总数据采集速率之后,执行子步骤A3。
子步骤A3:根据所述第一存储程序的最大存储速率和所述总数据采集速率,确定所述第一存储程序的第一剩余存储速率。
在根据数据采集速率确定出所有第一节点的总数据采集速率之后,则可以根据第一存储程序的最大存储速率和总数据采集速率,确定第一存储程序的第一剩余存储速率。例如,第一存储程序的最大存储速率为100兆/秒,所有第一节点的总数据采集速率为80兆/秒,此时,第一存储程序的最大存储速率大于总数据采集速率,则可以确定第一存储程序存在剩余存储的能力,第一剩余存储速率为20兆/秒等。或者,第一存储程序的最大存储速率为100兆/秒,所有第一节点的总数据采集速率为100兆/秒或大于100兆/秒,此时,可以确定第一存储程序无剩余存储的能力,即第一剩余存储速率为0等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
本申请实施例通过实时获取第一存储程序的剩余存储速率,可以避免数据采集节点采集数据的速度过快,部分数据不能正常写入磁盘导致数据丢失的情况出现。
步骤102:调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率。
第二节点是指第二SOC下的数据采集节点,在本示例中,第二节点可以为但不限于传感器等。第二节点可以用于采集外部硬件(如雷达等)的数据。
第二存储程序是指设置于第二SOC内的用于存储第二节点采集的数据的程序。
第二节点的数据采集速率是指第二节点采集数据的速率,在本示例中,数据采集速率可以用于指示第二节点在单位时间内采集数据的数据量。
第二存储程序的最大存储速率可以用于指示第二存储程序在单位时间内能存储的最大数据量。在本示例,第二SOC外接第二磁盘,第二存储程序的最大存储速率可以是根据第二磁盘的性能决定的,本实施例对于第二存储程序的最大存储速率的具体数值不加以限制。
第二剩余存储速率可以用于指示第二存储程序在单位时间内可存储数据的剩余数据量,即第二存储程序在单位时间内写入磁盘的数据的剩余数据量。
在进行数据采集的过程中,可以调用第二SOC根据第二SOC下所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定出第二存储程序的第二剩余存储速率。可以理解地,第二剩余存储速率的获取方式与第一剩余存储的获取方式相似,本实施例在此不再加以赘述。
上述步骤101和步骤102的执行顺序无先后之分,可以先执行步骤101再执行步骤102,也可以先执行步骤102再执行步骤101,还可以同时执行步骤101和步骤102等,本实施例对此不加以限制。
步骤103:调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC。
在第一SOC获取到第一存储程序的第一剩余存储速率之后,可以调用第一SOC将第一剩余存储速率发送至第二SOC。同时,在第二SOC获取到第二存储程序的第二剩余速率之后,可以调用第二SOC将第二剩余存储速率发送至第一SOC。
在具体实现中,第一SOC和第二SOC可以以固定频率(如间隔2秒、5秒等)交换彼此的存储剩余能力(即第一剩余存储速率和第二剩余存储速率)。
在完成第一剩余存储速率和第二剩余存储速率的相互发送之后,执行步骤104。
步骤104:调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
在完成第一剩余存储速率和第二剩余存储速率的相互发送之后,可以调用第一SOC和第二SOC分别根据第一剩余存储速率和第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储,以及动态调整对应节点的数据采集速率。具体地,可以在第一SOC和第二SOC下的任一存储程序无剩余存储能力时,可以将无剩余存储能力一方SOC的数据采集节点采集的数据发送至另一方SOC,以最大化双SOC系统采集数据的数量,且降低数据采集系统对数据磁盘的性能要求。
在本实施例中,在第一剩余存储速率大于0,且第二剩余存储速率大于0(即第一存储程序和第二存储程序均有剩余存储能力)的情况下,第一SOC和第二SOC可以单独存储其片上的节点采集的数据,并调高所有节点的数据采集速率。对于该实现过程可以结合下述具体实现方式进行详细描述。
在本申请的一种具体实现方式中,上述步骤104可以包括:
子步骤B1:在所述第一剩余存储速率大于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据存储至第一磁盘内,并根据所述第一剩余存储速率调高所述所有第一节点的数据采集速率。
在本实施例中,第一磁盘可以为第一SOC的外接磁盘,第二磁盘可以为第二SOC的外接磁盘。
在第一剩余存储速率大于0,且第二剩余存储速率大于0(即第一存储程序和第二存储程序均有剩余存储能力)的情况下,可以调用第一SOC控制第一存储程序将所有第一节点采集的数据存储至第一磁盘内,即通过第一存储程序将所有第一节点采集的数据存储至第一磁盘内。
同时,可以根据第一剩余存储速率调高所有第一节点的数据采集速率。
调高所有第一节点的数据采集速率的策略可以为:根据第一剩余存储速率以及所有第一节点的数量进行数据采集速率的调整。例如,第一剩余存储速率为20兆/秒,第一节点的数量为10,此时,可以将每个第一节点的数据采集速率提高2兆/秒等。
调高所有第一节点的数据采集速率的策略还可以为:根据节点优先级策略进行数据采集速率的调整。例如,第一剩余存储速率为20兆/秒,所有第一节点按照优先级排序依次为:节点1、节点2、...、节点10,此时,可以获取所有第一节点中节点优先级高于优先级阈值的第一节点,并平分第一剩余存储速率等。或者从所有第一节点中筛选出节点优先级最高的第一节点,以将该节点优先级最高的第一节点的数据采集速率提高20兆/秒等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
子步骤B2:调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据存储至第二磁盘内,并根据所述第二剩余存储速率调高所述所有第二节点的数据采集速率;
在第一剩余存储速率大于0,且第二剩余存储速率大于0(即第一存储程序和第二存储程序均有剩余存储能力)的情况下,可以调用第二SOC控制第二存储程序将所有第二节点采集的数据存储至第二磁盘内,即通过第二存储程序将所有第二节点采集的数据存储至第二磁盘内。
同时,可以根据第二剩余存储速率调高所有第二节点的数据采集速率。
调高所有第二节点的数据采集速率的策略可以为:根据第二剩余存储速率以及所有第二节点的数量进行数据采集速率的调整。例如,第二剩余存储速率为30兆/秒,第二节点的数量为10,此时,可以将每个第二节点的数据采集速率提高3兆/秒等。
调高所有第二节点的数据采集速率的策略还可以为:根据节点优先级策略进行数据采集速率的调整。例如,第二剩余存储速率为20兆/秒,所有第二节点按照优先级排序依次为:节点1、节点2、...、节点10,此时,可以获取所有第二节点中节点优先级高于优先级阈值的第二节点,并平分第二剩余存储速率等。或者从所有第二节点中筛选出节点优先级最高的第二节点,以将该节点优先级最高的第二节点的数据采集速率提高20兆/秒等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
本申请实施例通过在第一SOC和第二SOC下的存储程序均有剩余存储能力时,可以各自存储其下节点采集的数据,同时,调高所有节点的数据采集速率,从而可以提高数据采集量,以最大化利用磁盘性能。
在本实施例中,在第一剩余存储速率大于0,且第二剩余存储速率等于0(即第一存储程序有剩余存储能力,第二存储程序无剩余存储能力)的情况下,可以由第二SOC控制第二SOC下的第二节点中的部分节点将采集的数据发送至第一SOC,以存储至第一SOC的磁盘中。对于该实现过程可以结合下述具体实现方式进行详细描述。
在本申请的另一种具体实现方式中,上述步骤104可以包括:
子步骤C1:在所述第一剩余存储速率大于0,且所述第二剩余存储速率等于0的情况下,调用所述第二SOC根据所述所有第二节点的数据采集速率与所述第二存储程序的存储速率阈值的速率差值,确定所述所有第二节点中的待调整存储位置的第三节点。
在本实施例中,第一磁盘可以为第一SOC的外接磁盘,第二磁盘可以为第二SOC的外接磁盘。
第三节点是指从第二节点中筛选出的用于调整存储位置的节点。即第三节点采集的数据需要存储到第一SOC外接的第一磁盘中。
在第一剩余存储速率大于0,且第二剩余存储速率等于0(即第一存储程序有剩余存储能力,第二存储程序无剩余存储能力)的情况下,可以调用第二SOC根据所有第二节点的数据采集速率与第二存储程序的存储速率阈值的速率差值,确定所有第二节点中的待调整存储位置的第三节点。例如,第二存储程序的存储速率阈值为100兆/秒,所有第二节点的数据采集速率为120兆/秒,此时,速率差值为20兆/秒,第二节点包含:节点1、节点2、节点3等,其中,节点1的数据采集速率为20兆/秒,节点2的数据采集速率为10兆/秒,节点3的数据采集速率为30兆/秒,此时,可以将节点1作为第三节点,也可以将节点2作为第三节点等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
子步骤C2:调用所述第二SOC控制所述第二存储程序将所述所有第二节点中除所述第三节点外的其它节点采集的数据存储至第二磁盘内。
在确定第三节点之后,则可以调用第二SOC控制第二存储程序将所有第二节点中除第三节点外的其它节点采集的数据存储至第二磁盘内。
同时,第二SOC可以控制第三节点将采集的数据发送至第一SOC。
子步骤C3:调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据和所述第三节点采集的数据存储至第一磁盘,根据所述第一剩余存储速率确定所述所有第一节点的第一数据采集速率和所述第三节点的第二数据采集速率,并调高所述所有第一节点的数据采集速率至所述第一数据采集速率,将所述第二数据采集速率发送至所述第二SOC。
进而可以调用第一SOC控制第一存储程序将所有第一节点采集的数据和第三节点采集的数据存储至第一磁盘。
同时,根据第一剩余存储速率确定所有第一节点的第一数据采集速率和第三节点的第二数据采集速率,并调高所有第一节点的数据采集速率至第一数据采集速率,将第二数据采集速率发送至第二SOC,以由第二SOC将第三节点的数据采集速率调高至第二数据采集速率。具体地,可以在总数据采集速率不超过第一存储程序的存储速率阈值的基础上调整第一节点和第三节点的数据采集速率。
在具体实现中,数据采集速率的调整策略可以为平均调整策略,即按照剩余速率平均调整第一节点和第三节点的数据采集效率。数据采集速率的调整策略可以为节点优先级调整策略,即按照第一节点和第三节点的节点优先级从第一节点和第三节点筛选出优先级较高的节点,以根据剩余存储速率进行数据采集速率的调整。
子步骤C4:调用所述第二SOC将所述第三节点的数据采集速率调高至所述第二数据采集速率。
在第一SOC将第三节点的第二数据采集速率发送至第二SOC之后,则可以调用第二SOC将第三节点的数据采集速率调高至第二数据采集速率。
本申请实施例通过在第一SOC的第一存储程序有剩余存储能力,而第二SOC下的存储程序无剩余存储能力时,可以将第二SOC的第三节点采集数据的存储位置调整至第一SOC下的磁盘,从而可以有效利用第一SOC的磁盘,能够最大化多SOC系统采集数据的数量,充分利用磁盘性能。
在本实施例中,在第一剩余存储速率等于0,且第二剩余存储速率大于0(即第一存储程序无剩余存储能力,第二存储程序有剩余存储能力)的情况下,可以由第一SOC控制第一SOC下的第一节点中的部分节点将采集的数据发送至第二SOC,以存储至第二SOC的磁盘中。对于该实现过程可以结合下述具体实现方式进行详细描述。
在本申请的另一种具体实现方式中,上述步骤104可以包括:
子步骤D1:在所述第一剩余存储速率等于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC根据所述所有第一节点的数据采集速率与所述第一存储程序的存储速率阈值的速率差值,确定所述所有第一节点中的待调整存储位置的第四节点。
在本实施例中,第一磁盘可以为第一SOC的外接磁盘,第二磁盘可以为第二SOC的外接磁盘。
第四节点是指从第一节点中筛选出的用于调整存储位置的节点。即第四节点采集的数据需要存储到第二SOC外接的第二磁盘中。
在第一剩余存储速率等于0,且第二剩余存储速率大于0(即第一存储程序无剩余存储能力,第二存储程序有剩余存储能力)的情况下,可以调用第一SOC根据所有第一节点的数据采集速率与第一存储程序的存储速率阈值的速率差值,确定所有第一节点中的待调整存储位置的第四节点。例如,第一存储程序的存储速率阈值为100兆/秒,所有第一节点的数据采集速率为120兆/秒,此时,速率差值为20兆/秒,第一节点包含:节点1、节点2、节点3等,其中,节点1的数据采集速率为20兆/秒,节点2的数据采集速率为10兆/秒,节点3的数据采集速率为30兆/秒,此时,可以将节点1作为第四节点,也可以将节点2作为第四节点等。
可以理解地,上述示例仅是为了更好地理解本申请实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。
子步骤D2:调用所述第一SOC控制所述第一存储程序将所述所有第一节点中除所述第四节点外的其它节点采集的数据存储至第一磁盘内。
在确定第四节点之后,则可以调用第一SOC控制第一存储程序将所有第一节点中除第四节点外的其它节点采集的数据存储至第一磁盘内。
同时,第一SOC可以控制第四节点将采集的数据发送至第二SOC。
子步骤D3:调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据和所述第四节点采集的数据存储至第二磁盘,根据所述第二剩余存储速率确定所述所有第二节点的第三数据采集速率和所述第四节点的第四数据采集速率,并调高所述所有第二节点的数据采集速率至所述第三数据采集速率,将所述第四数据采集速率发送至所述第一SOC。
进而可以调用第二SOC控制第二存储程序将所有第二节点采集的数据和第四节点采集的数据存储至第二磁盘。
同时,根据第二剩余存储速率确定所有第二节点的第三数据采集速率和第四节点的第四数据采集速率,并调高所有第二节点的数据采集速率至第三数据采集速率,将第四数据采集速率发送至第一SOC,以由第一SOC将第四节点的数据采集速率调高至第四数据采集速率。具体地,可以在总数据采集速率不超过第二存储程序的存储速率阈值的基础上调整第二节点和第四节点的数据采集速率。
在具体实现中,数据采集速率的调整策略可以为平均调整策略,即按照剩余速率平均调整第二节点和第四节点的数据采集效率。数据采集速率的调整策略可以为节点优先级调整策略,即按照第二节点和第四节点的节点优先级从第二节点和第四节点筛选出优先级较高的节点,以根据剩余存储速率进行数据采集速率的调整。
子步骤D4:调用所述第一SOC将所述第四节点的数据采集速率调高至所述第四数据采集速率。
在第二SOC将第四节点的第四数据采集速率发送至第一SOC之后,则可以调用第一SOC将第四节点的数据采集速率调高至第一数据采集速率。
本申请实施例通过在第二SOC下的存储程序有剩余存储能力,而第一SOC下的存储程序无剩余存储能力时,可以将第一SOC的第四节点采集数据的存储位置调整至第二SOC下的磁盘,从而可以有效利用第二SOC的磁盘,能够最大化多SOC系统采集数据的数量,充分利用磁盘性能。
在本实施例中,在第一SOC的第一存储程序和第二SOC的第二存储程序均无剩余存储能力(即第一剩余存储速率和第二剩余存储速率均为0)时,可以按照设定降速策略,降低第一节点的数据采集速率和第二节点的数据采集速率。对于该实现过程可以结合下述具体实现方式进行详细描述。
在本申请的另一种具体实现方式中,上述步骤104可以包括:
子步骤E1:在所述第一剩余存储速率等于0,且所述第二剩余存储速率等于0的情况下,调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率。
在本实施例中,在第一剩余存储速率等于0,且第二剩余存储速率等于0(即第一存储程序和第二存储程序均无剩余存储能力)的情况下,此时,可以调用第一SOC采用第一降速策略,调低所有第一节点的数据采集速率。
在本示例中,第一降速策略可以为优先级策略和平均降速策略中的任一种。
在第一降速策略为优先级策略时,则可以获取所有第一节点中优先级低于优先级阈值的第五节点,并降低第五节点的数据采集速率,以使第一存储程序的剩余存储速率大于或者等于0。
在第一降速策略为平均降速策略时,则可以根据所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所有第一节点的降速速率,并根据降速速率降低所有第一节点的数据采集速率,以使第一存储程序的剩余存储速率大于或者等于0。
在具体实现中,还可以采用其它降速策略,如暂停第一节点中的某个或多个节点的数据采集操作,以使第一存储程序的剩余存储速率大于或者等于0等。对于具体地降速策略可以根据业务需求而定,本实施例对此不加以限制。
子步骤E2:调用所述第二SOC采用第二降速策略,调低所述所有第二节点的数据采集速率。
在第一剩余存储速率等于0,且第二剩余存储速率等于0(即第一存储程序和第二存储程序均无剩余存储能力)的情况下,此时,可以调用第二SOC采用第二降速策略,调低所有第二节点的数据采集速率。
在本示例中,第二降速策略可以为优先级策略和平均降速策略中的任一种。
在第二降速策略为优先级策略时,则可以获取所有第二节点中优先级低于优先级阈值的节点,并降低该低于优先级阈值的节点的数据采集速率,以使第二存储程序的剩余存储速率大于或者等于0。
在第二降速策略为平均降速策略时,则可以根据所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所有第二节点的降速速率,并根据降速速率降低所有第二节点的数据采集速率,以使第二存储程序的剩余存储速率大于或者等于0。
在具体实现中,还可以采用其它降速策略,如暂停第二节点中的某个或多个节点的数据采集操作,以使第二存储程序的剩余存储速率大于或者等于0等。对于具体地降速策略可以根据业务需求而定,本实施例对此不加以限制。
本申请实施例通过降速策略,可以确保所有节点的数据采集速率不会超出存储程序的存储速率阈值,避免出现采集数据未及时保存导致数据丢失的问题。
接下来,结合图2对于上述实现过程进行如下详细描述。
如图2所示,终端设备为双SOC的设备,双SOC即为SOC A和SOC B,SOC A与SOC B可以通过以太网接口或者外部以太网接口将两个SOC系统做网络连接组成局域网。
在A片(即SOC A)和B片(即SOC B)上分别外接一块磁盘,即第一磁盘和第二磁盘。磁盘性能(单位时间内写入数据量)为Ca,Cb,可以用于分别指示SOC A和SOC B的存储程序的存储速率阈值。
如图2所示,在A片上运行A片上所有传感器对应的数据采集程序A,A2,A3...An(n为正整数),以及存储程序Sa。在B片上运行B片上所有传感器对应的数据采集程序B1,B2,B3...Bm(m为正整数),以及存储程序Sb。
具体数据采集流程如下:
1、开始阶段,数据采集程序A1,A2,A3...An,以及B1,B2,B3...Bm等以较小频率(自定义值,可以预先设定)采集数据。
2、开始阶段,A片Sa只接收A上各节点采集的数据并统计速率VA1,VA2,VA3...,并维护A片的存储能力剩余CLa。B片Sb只接收B片上各节点采集的数据并统计速率VB1,VB2,VB3...,并维护B片的存储能力剩余CLb。其中,CLa和CLb即为本实施例中的剩余存储速率(即可以分别作为第一剩余存储速率和第二剩余存储速率)。
3、Sa和Sb通过局域网以固定频率交换彼此的存储剩余能力,Sa周期性告知An节点Sa和Sb的存储能力,Sb周期性告知Bm节点Sa和Sb的存储能力。
4、运行过程中,可以分为以下几种情况:
I、A片Sa有剩余,且B片Sb有剩余。则A片只存储A片上采集程序的数据。B片只存储B片上采集的数据,采集程序根据A片和B片的存储能力剩余情况,逐步增加采集频率或精度(逐步增加采集数据量)。
II、A片Sa有剩余,但B片Sb无剩余。则B片上的Bm可将数据发送至Sa增加数据采集量。
III、A片Sa无剩余,但B片Sb有剩余。则A片上的An将数据发送至Sb增加数据采集量。
IV、A片Sa无剩余,且B片Sb无剩余。则A和B片上的An/Bm将数据按照一定策略降频发送(可提前设计降频策略,如平均降速策略、优先级策略等)。
V、从状态IV转换为I、II、III中的任意状态时,逐渐增大数据发送频率(保持整体数据采集完整性的前提下)。
本申请实施例提供的上述方案,可根据数据量动态调整数据存储位置,降低数采系统对硬盘性能的要求,能够充分利用磁盘性能。在双SOC系统(单片采集能力有限)上解决单片采集能力(接口数量,外设性能)不足的问题。
本申请实施例提供的数据存储方法,通过调用第一SOC,根据第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定第一存储程序的第一剩余存储速率。调用第二SOC,根据第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定第二存储程序的第二剩余存储速率。调用第一SOC将第一剩余存储速率发送至第二SOC,并调用第二SOC将第二剩余存储速率发送至第一SOC。调用第一SOC和第二SOC,分别根据第一剩余存储速率和第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。本申请实施例针对双SOC域控数据采集的场景,可以根据存储程序的剩余存储速率动态调整数据存储位置,降低数采系统对硬盘性能的要求,以充分磁盘性能,最大化双SOC系统采集数据的数量。
参照图3,示出了本申请实施例提供的一种数据存储装置的结构示意图,该数据存储装置应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数。如图3所示,该数据存储装置300可以包括以下模块:
第一剩余速率确定模块310,用于调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率;
第二剩余速率确定模块320,用于调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率;
剩余存储速率发送模块330,用于调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC;
数据存储模块340,用于调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
可选地,所述数据存储模块包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据存储至第一磁盘内,并根据所述第一剩余存储速率调高所述所有第一节点的数据采集速率;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据存储至第二磁盘内,并根据所述第二剩余存储速率调高所述所有第二节点的数据采集速率;
其中,所述第一磁盘为所述第一SOC的外接磁盘,所述第二磁盘为所述第二SOC的外接磁盘。
可选地,所述数据存储模块包括:
第三节点确定单元,用于在所述第一剩余存储速率大于0,且所述第二剩余存储速率等于0的情况下,调用所述第二SOC根据所述所有第二节点的数据采集速率与所述第二存储程序的存储速率阈值的速率差值,确定所述所有第二节点中的待调整存储位置的第三节点;
第一数据存储单元,用于调用所述第二SOC控制所述第二存储程序将所述所有第二节点中除所述第三节点外的其它节点采集的数据存储至第二磁盘内;
第二数据存储单元,用于调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据和所述第三节点采集的数据存储至第一磁盘,根据所述第一剩余存储速率确定所述所有第一节点的第一数据采集速率和所述第三节点的第二数据采集速率,并调高所述所有第一节点的数据采集速率至所述第一数据采集速率,将所述第二数据采集速率发送至所述第二SOC;
第一速率调整单元,用于调用所述第二SOC将所述第三节点的数据采集速率调高至所述第二数据采集速率。
可选地,所述数据存储模块包括:
第四节点确定单元,用于在所述第一剩余存储速率等于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC根据所述所有第一节点的数据采集速率与所述第一存储程序的存储速率阈值的速率差值,确定所述所有第一节点中的待调整存储位置的第四节点;
第三数据存储单元,用于调用所述第一SOC控制所述第一存储程序将所述所有第一节点中除所述第四节点外的其它节点采集的数据存储至第一磁盘内;
第四数据存储单元,用于调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据和所述第四节点采集的数据存储至第二磁盘,根据所述第二剩余存储速率确定所述所有第二节点的第三数据采集速率和所述第四节点的第四数据采集速率,并调高所述所有第二节点的数据采集速率至所述第三数据采集速率,将所述第四数据采集速率发送至所述第一SOC;
第二速率调整单元,用于调用所述第一SOC将所述第四节点的数据采集速率调高至所述第四数据采集速率。
可选地,所述数据存储模块包括:
第三速率调整单元,用于在所述第一剩余存储速率等于0,且所述第二剩余存储速率等于0的情况下,调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率;
第四速率调整单元,用于调用所述第二SOC采用第二降速策略,调低所述所有第二节点的数据采集速率。
可选地,所述第三速率调整单元包括:
第一速率调整子单元,用于在所述第一降速策略为优先级策略的情况下,获取所述所有第一节点中优先级低于优先级阈值的第五节点,并降低所述第五节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0;
第二速率调整子单元,用于在所述第一降速策略为平均降速策略的情况下,根据所述所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述所有第一节点的降速速率,并根据所述降速速率降低所述所有第一节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0。
可选地,所述第一剩余速率确定模块包括:
数据采集速率获取单元,用于调用所述第一SOC,获取所述第一SOC下的所有第一节点中各第一节点的数据采集速率;
总采集速率确定单元,用于根据所述数据采集速率,确定所述所有第一节点的总数据采集速率;
第一剩余速率确定单元,用于根据所述第一存储程序的最大存储速率和所述总数据采集速率,确定所述第一存储程序的第一剩余存储速率。
本申请实施例提供的数据存储装置,通过调用第一SOC,根据第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定第一存储程序的第一剩余存储速率。调用第二SOC,根据第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定第二存储程序的第二剩余存储速率。调用第一SOC将第一剩余存储速率发送至第二SOC,并调用第二SOC将第二剩余存储速率发送至第一SOC。调用第一SOC和第二SOC,分别根据第一剩余存储速率和第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。本申请实施例针对双SOC域控数据采集的场景,可以根据存储程序的剩余存储速率动态调整数据存储位置,降低数采系统对硬盘性能的要求,以充分磁盘性能,最大化双SOC系统采集数据的数量。
本申请实施例提供了一种电子设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述数据存储方法。
图4示出了本发明实施例的一种电子设备400的结构示意图。如图4所示,电子设备400包括中央处理单元(CPU)401,其可以根据存储在只读存储器(ROM)402中的计算机程序指令或者从存储单元408加载到随机访问存储器(RAM)403中的计算机程序指令,来执行各种适当的动作和处理。在RAM403中,还可存储电子设备400操作所需的各种程序和数据。CPU401、ROM402以及RAM403通过总线404彼此相连。输入/输出(I/O)接口405也连接至总线404。
电子设备400中的多个部件连接至I/O接口405,包括:输入单元406,例如键盘、鼠标、麦克风等;输出单元407,例如各种类型的显示器、扬声器等;存储单元408,例如磁盘、光盘等;以及通信单元409,例如网卡、调制解调器、无线通信收发机等。通信单元409允许电子设备400通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,可由处理单元401执行。例如,上述任一实施例的方法可被实现为计算机软件程序,其被有形地包含于计算机可读介质,例如存储单元408。在一些实施例中,计算机程序的部分或者全部可以经由ROM402和/或通信单元409而被载入和/或安装到电子设备400上。当计算机程序被加载到RAM403并由CPU401执行时,可以执行上文描述的方法中的一个或多个动作。
本申请实施例提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述数据存储方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种数据存储方法,应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数,其特征在于,所述方法包括:
调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率;
调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率;
调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC;
调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
2.根据权利要求1所述的方法,其特征在于,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据存储至第一磁盘内,并根据所述第一剩余存储速率调高所述所有第一节点的数据采集速率;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据存储至第二磁盘内,并根据所述第二剩余存储速率调高所述所有第二节点的数据采集速率;
其中,所述第一磁盘为所述第一SOC的外接磁盘,所述第二磁盘为所述第二SOC的外接磁盘。
3.根据权利要求1所述的方法,其特征在于,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率大于0,且所述第二剩余存储速率等于0的情况下,调用所述第二SOC根据所述所有第二节点的数据采集速率与所述第二存储程序的存储速率阈值的速率差值,确定所述所有第二节点中的待调整存储位置的第三节点;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点中除所述第三节点外的其它节点采集的数据存储至第二磁盘内;
调用所述第一SOC控制所述第一存储程序将所述所有第一节点采集的数据和所述第三节点采集的数据存储至第一磁盘,根据所述第一剩余存储速率确定所述所有第一节点的第一数据采集速率和所述第三节点的第二数据采集速率,并调高所述所有第一节点的数据采集速率至所述第一数据采集速率,将所述第二数据采集速率发送至所述第二SOC;
调用所述第二SOC将所述第三节点的数据采集速率调高至所述第二数据采集速率。
4.根据权利要求1所述的方法,其特征在于,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率等于0,且所述第二剩余存储速率大于0的情况下,调用所述第一SOC根据所述所有第一节点的数据采集速率与所述第一存储程序的存储速率阈值的速率差值,确定所述所有第一节点中的待调整存储位置的第四节点;
调用所述第一SOC控制所述第一存储程序将所述所有第一节点中除所述第四节点外的其它节点采集的数据存储至第一磁盘内;
调用所述第二SOC控制所述第二存储程序将所述所有第二节点采集的数据和所述第四节点采集的数据存储至第二磁盘,根据所述第二剩余存储速率确定所述所有第二节点的第三数据采集速率和所述第四节点的第四数据采集速率,并调高所述所有第二节点的数据采集速率至所述第三数据采集速率,将所述第四数据采集速率发送至所述第一SOC;
调用所述第一SOC将所述第四节点的数据采集速率调高至所述第四数据采集速率。
5.根据权利要求1所述的方法,其特征在于,所述调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率,包括:
在所述第一剩余存储速率等于0,且所述第二剩余存储速率等于0的情况下,调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率;
调用所述第二SOC采用第二降速策略,调低所述所有第二节点的数据采集速率。
6.根据权利要求5所述的方法,其特征在于,所述调用所述第一SOC采用第一降速策略,调低所述所有第一节点的数据采集速率,包括:
在所述第一降速策略为优先级策略的情况下,获取所述所有第一节点中优先级低于优先级阈值的第五节点,并降低所述第五节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0;
在所述第一降速策略为平均降速策略的情况下,根据所述所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述所有第一节点的降速速率,并根据所述降速速率降低所述所有第一节点的数据采集速率,以使所述第一存储程序的剩余存储速率大于或者等于0。
7.根据权利要求1所述的方法,其特征在于,所述调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率,包括:
调用所述第一SOC,获取所述第一SOC下的所有第一节点中各第一节点的数据采集速率;
根据所述数据采集速率,确定所述所有第一节点的总数据采集速率;
根据所述第一存储程序的最大存储速率和所述总数据采集速率,确定所述第一存储程序的第一剩余存储速率。
8.一种数据存储装置,应用于终端设备,所述终端设备包括:第一SOC和N个第二SOC,所述第一SOC与N个所述第二SOC通信连接,N为大于等于1的正整数,其特征在于,所述装置包括:
第一剩余速率确定模块,用于调用所述第一SOC,根据所述第一SOC下的所有第一节点的数据采集速率和第一存储程序的最大存储速率,确定所述第一存储程序的第一剩余存储速率;
第二剩余速率确定模块,用于调用所述第二SOC,根据所述第二SOC下的所有第二节点的数据采集速率和第二存储程序的最大存储速率,确定所述第二存储程序的第二剩余存储速率;
剩余存储速率发送模块,用于调用所述第一SOC将所述第一剩余存储速率发送至所述第二SOC,并调用所述第二SOC将所述第二剩余存储速率发送至所述第一SOC;
数据存储模块,用于调用所述第一SOC和所述第二SOC,分别根据所述第一剩余存储速率和所述第二剩余存储速率确定对应节点采集的数据的存储位置,并对采集的数据进行存储、以及动态调整对应节点的数据采集速率。
9.一种电子设备,其特征在于,包括:
存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现权利要求1至7中任一项所述的数据存储方法。
10.一种可读存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行权利要求1至7中任一项所述的数据存储方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410309177.3A CN117908802B (zh) | 2024-03-19 | 2024-03-19 | 数据存储方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410309177.3A CN117908802B (zh) | 2024-03-19 | 2024-03-19 | 数据存储方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117908802A true CN117908802A (zh) | 2024-04-19 |
CN117908802B CN117908802B (zh) | 2024-06-14 |
Family
ID=90697530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410309177.3A Active CN117908802B (zh) | 2024-03-19 | 2024-03-19 | 数据存储方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117908802B (zh) |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6008821A (en) * | 1997-10-10 | 1999-12-28 | International Business Machines Corporation | Embedded frame buffer system and synchronization method |
US10020012B1 (en) * | 2017-10-31 | 2018-07-10 | Seagate Technology Llc | Data storage drive with low-latency ports coupling multiple servo control processors |
CN108768754A (zh) * | 2018-06-28 | 2018-11-06 | 西安微电子技术研究所 | 一种基于总线网络的高可靠容错系统 |
CN110658749A (zh) * | 2019-09-12 | 2020-01-07 | 中国科学院声学研究所北海研究站 | 一种座底式声学潜标的低功耗数据采集存储系统及方法 |
WO2020083395A1 (zh) * | 2018-10-25 | 2020-04-30 | 深圳市中兴微电子技术有限公司 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
CN112559395A (zh) * | 2020-12-18 | 2021-03-26 | 国电南瑞科技股份有限公司 | 基于双Soc存储系统异常处理机制的继电保护装置及方法 |
WO2021115054A1 (zh) * | 2019-12-09 | 2021-06-17 | 聚好看科技股份有限公司 | 调整集群系统内的节点配置的方法及服务器 |
CN113132161A (zh) * | 2021-04-14 | 2021-07-16 | 五邑大学 | 一种基于zynq的数据采集传输方法、装置、设备及存储介质 |
CN116243853A (zh) * | 2022-12-20 | 2023-06-09 | 亿咖通(湖北)技术有限公司 | 数据传输方法、装置、电子设备及非易失性存储介质 |
WO2023115488A1 (zh) * | 2021-12-23 | 2023-06-29 | Oppo广东移动通信有限公司 | 通信方法、装置、设备、芯片、存储介质、产品及程序 |
CN116594568A (zh) * | 2023-05-30 | 2023-08-15 | 广州亚信技术有限公司 | 一种数据存储方法、装置、电子设备及存储介质 |
WO2023216571A1 (zh) * | 2022-05-11 | 2023-11-16 | 华为云计算技术有限公司 | 弹性搜索集群的资源调度方法、装置及系统 |
CN117407159A (zh) * | 2023-10-08 | 2024-01-16 | Oppo广东移动通信有限公司 | 内存空间的管理方法及装置、设备、存储介质 |
-
2024
- 2024-03-19 CN CN202410309177.3A patent/CN117908802B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6008821A (en) * | 1997-10-10 | 1999-12-28 | International Business Machines Corporation | Embedded frame buffer system and synchronization method |
US10020012B1 (en) * | 2017-10-31 | 2018-07-10 | Seagate Technology Llc | Data storage drive with low-latency ports coupling multiple servo control processors |
CN108768754A (zh) * | 2018-06-28 | 2018-11-06 | 西安微电子技术研究所 | 一种基于总线网络的高可靠容错系统 |
WO2020083395A1 (zh) * | 2018-10-25 | 2020-04-30 | 深圳市中兴微电子技术有限公司 | 一种网络拥塞控制方法、装置、芯片及存储介质 |
CN110658749A (zh) * | 2019-09-12 | 2020-01-07 | 中国科学院声学研究所北海研究站 | 一种座底式声学潜标的低功耗数据采集存储系统及方法 |
WO2021115054A1 (zh) * | 2019-12-09 | 2021-06-17 | 聚好看科技股份有限公司 | 调整集群系统内的节点配置的方法及服务器 |
CN112559395A (zh) * | 2020-12-18 | 2021-03-26 | 国电南瑞科技股份有限公司 | 基于双Soc存储系统异常处理机制的继电保护装置及方法 |
CN113132161A (zh) * | 2021-04-14 | 2021-07-16 | 五邑大学 | 一种基于zynq的数据采集传输方法、装置、设备及存储介质 |
WO2023115488A1 (zh) * | 2021-12-23 | 2023-06-29 | Oppo广东移动通信有限公司 | 通信方法、装置、设备、芯片、存储介质、产品及程序 |
WO2023216571A1 (zh) * | 2022-05-11 | 2023-11-16 | 华为云计算技术有限公司 | 弹性搜索集群的资源调度方法、装置及系统 |
CN116243853A (zh) * | 2022-12-20 | 2023-06-09 | 亿咖通(湖北)技术有限公司 | 数据传输方法、装置、电子设备及非易失性存储介质 |
CN116594568A (zh) * | 2023-05-30 | 2023-08-15 | 广州亚信技术有限公司 | 一种数据存储方法、装置、电子设备及存储介质 |
CN117407159A (zh) * | 2023-10-08 | 2024-01-16 | Oppo广东移动通信有限公司 | 内存空间的管理方法及装置、设备、存储介质 |
Non-Patent Citations (4)
Title |
---|
PABLO M. AVILES ETC.: "Hardening Architectures for Multiprocessor System-on-Chip", IEEE TRANSACTIONS ON NUCLEAR SCIENCE, 22 February 2024 (2024-02-22) * |
贾毅婷等: "大容量数据采集存储系统设计与实现", 测控技术, no. 04, 18 April 2019 (2019-04-18) * |
陈金忠等: "基于双SOC单片机井下数据采集/存储系统", 仪表技术与传感器, no. 02, 15 February 2008 (2008-02-15) * |
骆海涛等: "基于先进精简指令集计算机设计的采集及大容量存储", 探测与控制学报, no. 03, 26 June 2008 (2008-06-26) * |
Also Published As
Publication number | Publication date |
---|---|
CN117908802B (zh) | 2024-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106250305B (zh) | 云计算环境下监控系统数据采集周期的自适应控制方法 | |
CN113038538B (zh) | 智能配电网WSNs通信数据传输带宽的优化分配方法及装置 | |
CN106095696B (zh) | 一种基于自适应路由及调度策略的高速缓存装置 | |
CN113923216B (zh) | 一种分布式集群限流系统及方法和分布式集群节点 | |
CN101801036B (zh) | 网络流量管理方法及系统、普通节点 | |
CN111083733A (zh) | 一种无线传感器网络拥塞控制方法及系统 | |
CN102026359B (zh) | 一种自动调节无线发射功率的方法、系统及ap和sta | |
CN116743669A (zh) | 一种深度强化学习分组调度方法、系统、终端及介质 | |
CN117908802B (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN115189910A (zh) | 一种基于网络数字孪生体的蓄意攻击生存性评估方法 | |
CN102118183B (zh) | 电力载波通信方法及装置 | |
CN114124942B (zh) | 核心网资源调度方法、装置及电子设备 | |
CN117114113A (zh) | 一种基于排队论的协同推理加速方法 | |
CN114500544B (zh) | 一种节点间负载均衡方法、系统、设备以及介质 | |
CN113542132A (zh) | 路由信息扩散方法、装置和存储介质 | |
US12069508B2 (en) | Network transmission control method and apparatus | |
CN115021399A (zh) | 一种适配园区多能源供电网络的拓扑辨识方法及装置 | |
CN103686874A (zh) | 一种带宽分配方法 | |
Mhatre et al. | Design and Implementation of Multithreaded CAD-Enabled LoRa Simulator for Massive IoT | |
CN118714267B (zh) | 一种高速公路视频监控视频优化传输方法及系统 | |
CN118555250A (zh) | 一种基于强化学习的拥塞控制方法及装置 | |
CN116437493B (zh) | 海上自组网的数据退避发送方法、装置、设备及存储介质 | |
CN113779145B (zh) | 一种区块链吞吐量提升系统及方法 | |
CN114158069B (zh) | 专网中数据传输的方法和装置 | |
CN117640554B (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 |