CN115576502B - 一种数据存储的方法、装置、电子设备以及存储介质 - Google Patents
一种数据存储的方法、装置、电子设备以及存储介质 Download PDFInfo
- Publication number
- CN115576502B CN115576502B CN202211565250.0A CN202211565250A CN115576502B CN 115576502 B CN115576502 B CN 115576502B CN 202211565250 A CN202211565250 A CN 202211565250A CN 115576502 B CN115576502 B CN 115576502B
- Authority
- CN
- China
- Prior art keywords
- data
- target
- historical performance
- performance data
- model
- 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
- 238000000034 method Methods 0.000 title claims abstract description 82
- 238000013500 data storage Methods 0.000 title claims abstract description 31
- 238000013499 data model Methods 0.000 claims abstract description 259
- 238000012549 training Methods 0.000 claims abstract description 42
- 230000008569 process Effects 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 15
- 238000012216 screening Methods 0.000 claims description 14
- 238000007781 pre-processing Methods 0.000 claims description 12
- 238000010606 normalization Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 description 11
- 238000012545 processing Methods 0.000 description 11
- 238000010801 machine learning Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 7
- 238000011156 evaluation Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000013523 data management Methods 0.000 description 3
- 230000002085 persistent effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000001960 triggered effect Effects 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
-
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供了一种数据存储的方法、装置、电子设备以及存储介质,方法包括:获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;对历史性能数据进行分组,得到多个数据组;针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;在多个初步数据模型中确定目标数据组的目标数据模型;存储目标数据模型以存储目标数据组中的目标历史性能数据。通过本发明实施例,实现了通过数据模型存储一组历史性能数据,存储空间占用小,并可以提高读取效率。
Description
技术领域
本发明涉及数据存储技术领域,特别是涉及一种数据存储的方法、装置、电子设备以及存储介质。
背景技术
存储系统在运行过程中会记录存储卷、硬盘、端口、控制器等资源对象的性能数据,例如带宽、时延、IOPS等性能指标。这些指标每间隔几秒就会产生一条数据记录,随着存储系统持续运行,性能数据量也逐步增加,海量历史性能数据的存储会占用大量空间,且数据读取也较为耗时。
发明内容
鉴于上述问题,提出了以便提供克服上述问题或者至少部分地解决上述问题的一种数据存储的方法、装置、电子设备以及存储介质,包括:
本发明第一方面提供了一种数据存储的方法,所述方法包括:
获取存储系统在运行过程中生成的历史性能数据和所述历史性能数据的时间信息;
获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
对所述历史性能数据进行分组,得到多个数据组;
针对所述多个数据组中的目标数据组,将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
在所述多个初步数据模型中确定所述目标数据组的目标数据模型;
存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据。
本发明第二方面提供了一种数据存储的装置,所述装置包括:
数据获取模块,用于获取存储系统在运行过程中生成的历史性能数据和所述历史性能数据的时间信息;
机器模型获取模块,用于获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
数据分组模块,用于对所述历史性能数据进行分组,得到多个数据组;
模型训练模块,用于针对所述多个数据组中的目标数据组,将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
模型筛选模块,用于在所述多个初步数据模型中确定所述目标数据组的目标数据模型;
模型存储模块,用于存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据。
本发明第三方面提供了一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现了如上所述数据存储的方法。
本发明第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述数据存储的方法。
本发明实施例具有以下优点:
本发明实施例通过获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息,以及获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型,进而对历史性能数据进行分组,得到多个数据组,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型,在多个初步数据模型中确定目标数据组的目标数据模型,存储目标数据模型以存储目标数据组中的目标历史性能数据,实现了通过数据模型存储一组历史性能数据,存储空间占用小,并可以提高读取效率。
而且,通过评估模型的准确率阈值,对用于对历史性能数据进行分组的方差阈值进行动态调整,使数据模型的准确性和占用空间大小相平衡。
附图说明
为了更清楚地说明本发明的技术方案,下面将对本发明的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种数据存储的方法的步骤流程图;
图2是本发明一实施例提供的另一种数据存储的方法的步骤流程图;
图3是本发明一实施例提供的另一种数据存储的方法的步骤流程图;
图4是本发明一实施例提供的另一种数据存储的方法的步骤流程图;
图5a是本发明一实施例提供的另一种数据存储的方法的步骤流程图;
图5b是本发明一实施例提供的一种存储结构示意图;
图6a是本发明一实施提供的存储系统和用户客户端结构框架示意图;
图6b是本发明一实施提供的基于存储系统的数据处理流程示意图;
图7是本发明一实施例提供的数据存储的装置的结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参照图1,示出了本发明一实施例提供的一种数据存储的方法的步骤流程图,具体可以包括如下步骤:
步骤101,获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;
存储系统在运行过程中会实时记录存储卷、硬盘、端口、控制器等资源对象的性能数据,例如带宽、时延、IOPS等性能指标。这些指标每间隔预设时间就会产生一条数据记录,每条数据记录对应一个时间信息,该时间信息为生成性能数据的时间点。
通过获取存储系统在过去一段时间内所生成的历史性能数据以及其对应的时间信息,可以对历史性能数据以及时间信息进行处理,以实现针对海量历史性能数据在不占用过多存储空间的情况下进行存储。
步骤102,获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
其中,预设机器模型可以由一系列的数学计算公式构成,通过在预设机器模型中输入时间信息,可以预测出对应的性能数据。进而,通过将获取的历史性能数据和时间信息作为预设机器模型的训练数据,可以针对不同预设机器模型进行参数调整,得到可以准确预测出性能数据的数据模型。
为了更准确的对性能数据进行预测,可以预先设置多个预设机器模型,从而同一组历史性能数据,通过对不同的预设机器模型进行训练,可以得到多个不同的数据模型。
其中,预设机器模型可以根据历史性能数据的类型确定,在针对某一类一类的历史性能数据进行训练时,获取该类历史性能数据所对应的几个预设机器模型。
步骤103,对历史性能数据进行分组,得到多个数据组;
当历史性能数据的数量过多时,短时间段内的历史性能数据变化不大,从而,可以将历史性能数据依照时间先后顺序进行分组处理,得到多个数据组,以便更好的通过数据模型表征同一组内的历史性能数据。
当存在多种类型的历史性能数据时,针对每一类历史性能数据分别按照时间的先后顺序进行分组。
在本发明一实施例中,在步骤103之后,还包括:针对每个数据组中的历史性能数据进行归一化预处理。
在实际应用中,在针对历史性能数据进行分组后,还可以针对每个数据组进行归一化处理,将每组的数据归一成预设范围内的数据。
例如:将每个数据组中的历史性能数据均映射为0到1之间的数据。
步骤104,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
在对历史性能数据进行分组后,依次将每个数据组分别采用多个预设机器模型进行训练,每个预设机器模型对应训练出一个初步数据模型,从而经过多个预设机器模型的训练,每个数据组可以得到多个初步数据模型。
其中,初步数据模型针对输入的时间信息,可以预测出该时间信息对应的历史性能数据。
步骤105,在多个初步数据模型中确定目标数据组的目标数据模型;
在得到多个初步数据模型后,可以进一步针对多个初步数据模型进行评估,筛选出最佳的数据模型组作为目标数据组的目标数据模型。
步骤106,存储目标数据模型以存储目标数据组中的目标历史性能数据。
在得到目标数据模型后,可以存储该目标数据模型,进而实现存储目标数据组。
在本发明实施例中,通过历史性能数据划分为数据组,进行针对每个数据组进行模型训练,筛选,以确定可以用于表征目标数据组的目标数据模型,从而,通过存储目标数据模型的方式代替直接逐个存储历史性能数据,仅仅需要存储少量的数据模型即可存储海量的历史性能数据,实现了节约存储空间,且可以直接读取数据模型以还原每个时间段的历史性能数据,提高读取效率。
参照图2,示出了本发明一实施例提供的另一种数据存储的方法的步骤流程图,具体可以包括如下步骤:
步骤201,获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;
步骤202,获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
步骤203,获取预设的方差阈值;
其中,方差为每个数据值和平均值的差值的平方的和的平均值。方差越大,说明整体上每个数据值和平均值的差值较大,也就说明这些数据变化波动比较大。通过设置方差阈值,可以衡量历史性能数据的数据波动情况。
步骤204,根据时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
针对步骤201中所获取的历史性能数据和其对应的时间信息,可以将历史性能数据按照时间顺序进行从小到大排序,时间越早,排序靠前,时间越晚排序靠后。
在排序后,可以按照排序逐个读取历史性能数据,并每取一次历史性能数据,则对当前已读取的所有历史性能数据进行方差计算。
步骤205,当方差信息大于方差阈值时,停止读取历史性能数据,并将本次已读取的历史性能数据划分为一个数据组。
每得到一个方差信息,则可以将所得到的方差信息与方差阈值进行对比,判断方差信息是否大于方差阈值,当方差信息大于方差阈值,则认为已读取的历史性能数据的数据波动过大,从而停止读取历史性能数据,将已读取的历史性能数据划为一个数据组。
再从下一个历史性能数据,重复步骤204至步骤205,进行后续历史性能数据的分组。
在本发明一实施例中,当方差信息不大于方差阈值时,执行步骤204。
在实际应用中,当方差信息不大于方差阈值时,已读取的历史性能数据的数据波动较小,则可以继续读取历史性能数据,当数据组内历史性能数据的数量越多,则一个目标数据模型可以表征更多的历史性能数据,从而,有利于节约存储空间。
在本发明另一实施例中,步骤205可以包括以下子步骤:
子步骤11,当方差信息大于方差阈值时,确定已读取的历史性能数据的第一数量信息;
在实际应用中,当方差信息大于方差阈值时,数据波动较大,可以进一步确定已读取的历史性能数据的第一数量信息,即已读取的数据数量。
子步骤12,当第一数量信息不小于预设的数量阈值时,停止读取历史性能数据。
其中,预设的数量阈值用于衡量每个目标数据模型所表征的数据数量,可以根据可以实现模型存储可代替逐个存储节约空间的下限设定数量阈值,即目标数据模型至少需要表征多少个历史性能数据时,可以达到节约存储空间的效果。
在已读取的第一数量信息已经大于或等于数量阈值时,则可以停止读取历史性能数据,划分数据组,此时,由于该数据组中的数量信息时大于或等于数量阈值,则可以确保当将该数据组转化为目标数据模型时,是可以实现节约空间的效果。
子步骤13,当第一数量信息小于预设的数量阈值时,按照数量阈值继续读取历史性能数据。
当第一数量信息小于预设的数量阈值,可以按照数量阈值继续读取历史性能数据,确保最终划分到每一个数据组中的数据数量不小于数量阈值,有效确保目标数据模型存储的方式可以节约存储空间。
需要说明的是,子步骤12与子步骤13为并列步骤,通过判断第一数量信息是否不小于预设的数量阈值,确定是执行子步骤12,还是执行子步骤13,当判定数量信息不小于预设的数量阈值时,执行子步骤12,当判定数量信息小于预设的数量阈值时,执行子步骤13。
步骤206,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
步骤207,在多个初步数据模型中确定目标数据组的目标数据模型;
步骤208,存储目标数据模型以存储目标数据组中的目标历史性能数据。
在本发明实施例中,通过预设的方差阈值对历史性能数据进行分组,有效确保每个数据组的数据波动,方便后续转化为目标数据模型。
参照图3,示出了本发明一实施例提供的另一种数据存储的方法的步骤流程图,具体可以包括如下步骤:
步骤301,获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;
步骤302,获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
步骤303,对历史性能数据进行分组,得到多个数据组;
步骤304,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
在对历史性能数据进行分组后,依次将每个数据组分别采用多个预设机器模型进行训练,每个预设机器模型对应训练出一个初步数据模型,从而经过多个预设机器模型的训练,每个数据组可以得到多个初步数据模型。
其中,初步数据模型针对输入的时间信息,可以预测出该时间信息对应的历史性能数据。
在本发明一实施例中,步骤304包括以下子步骤:
子步骤21,针对每个预设机器模型,将目标时间信息输入预设机器模型,生成第一预测性能数据;
在实际应用中,在多个数据组中选择一目标数据组,并确定目标数据组的目标历史性能数据和目标时间信息。
将目标时间信息输入到预设机器模型中进行预测,在预设机器模型中可以基于初始模型参数,预测生成目标时间信息对应的第一预测性能数据。
子步骤22,根据目标历史性能数据和第一预测性能数据,确定目标模型参数;
在得到第一预测性能数据后,可以对比目标历史性能数据和第一预测性能数据,对预设机器模型的初始参数进行调整,在模型参数调整后,利用更新后的模型参数继续执行子步骤21至子步骤22继续优化模型参数,直到目标历史性能数据和第一预测性能数据的差值符合预期范围,将此时的模型参数确定为目标模型参数。
子步骤23,基于目标模型参数生成初步数据模型。
在确定目标模型参数后,可以基于目标模型参数生成初步数据模型,初步数据模型实际上是将预设机器模型按照目标模型参数进行参数调整后得到模型。
步骤305,获取针对数据模型预设的误差阈值;
其中,误差阈值用于评估数据模型的预测结果的误差大小。
步骤306,将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成目标历史性能数据对应的第二预测性能数据;
针对目标数据组,将目标时间信息分别输入每个初步数据模型,初步数据模型经过预测,可以生成每个目标历史性能数据对应的第二预测性能数据。
步骤307,根据目标历史性能数据和第二预测性能数据,确定目标数据组在多个初步数据模型中的最大误差数据;
在得到第二预测性能数据后,可以对比每个目标历史性能数据和通过初步数据模型预测得到的第二预测性能数据,进而确定出多个初步数据模型在针对目标数据组进行预测时最大误差数据。
步骤308,当最大误差数据不大于误差阈值时,在多个初步数据模型中确定目标数据组的目标数据模型;
当最大误差数据不大于误差阈值时,则确定多个初步数据模型的输出结果准确性较高,则可以在多个初步数据模型中进一步进行模型筛选,以确定目标数据组的目标数据模型
在本发明一实施例中,在多个初步数据模型中确定目标数据组的目标数据模型,包括以下子步骤:
子步骤31,将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成每个初步数据模型对应的第二预测性能数据;
在实际应用中,针对目标数据组,将目标时间信息分别输入每个初步数据模型,初步数据模型经过预测,可以生成每个目标历史性能数据对应的第二预测性能数据。
子步骤32,根据第二预测性能数据生成每个初步数据模型的均方差数据;
针对每个初步数据模型预测得到多个第二预测性能数据,计算均方差数据,在一示例中,均方差的公式为:S=[(x1-x的平均值)^2+(x2-x的平均值)^2+(x3-x的平均值)^2+……+(xn-x的平均值)^2]/n的算术平方根。
其中,x1、x2...xn表示n个第二预测性能数据,x的平均值表示n个第二预测性能数据的均值。
子步骤33,根据每个初步数据模型的均方差数据,在多个初步数据模型中确定目标数据模型。
在得到每个初步数据模型的均方差数据之后,可以将均方差数据最小的初步数据模型确定目标数据模型。
在本发明一实施例中,在步骤307之后,还包括:当最大误差数据大于误差阈值时,按照最大误差数据对应的目标历史性能数据,将目标数据组拆分为两个数据组;针对拆分后的数据组,执行将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型。
在实际应用中,当最大误差数据大于误差阈值时,则确定数据模型的准确度不高,则确定最大误差数据所对应的目标历史性能数据,并以该目标历史性能数据为分界线,将原目标数据组拆分成两个数据组,其中,以最大误差数据所对应的目标历史性能数据作为原目标数据的划分点重新划分数据组,可以将目标数据目标历史性能数据划分至时间排序靠前的第一数据组,也可以划分为排序靠后的第二数据组,当历史性能数据划分至第一数据组时,可以有效确保第一数据组的数据数量,实现节约存储空间。
在拆分数据组之后,可以针对第一数据组和第二数据组分别进行模型训练,其模型训练部分参考步骤304,进而针对两部分数据组,训练得到的所有初步数据模型分别进行筛选,得到各自的目标数据模型,具体筛选的过程参考子步骤31至子步骤33。
其中,当确定有两个即两个以上最大误差数据时,针对最大误差数据所对应的历史性能数据的时间顺序,将时间顺序靠后的历史性能数据确定为数据组的划分点,以尽量确保第一数据组的数据数量,最大程度地节约存储空间。
在一示例中,仅针对第一数据组直接进行模型训练,针对第二数据组沿用步骤303继续读取历史性能数据,直到触发停止读取数据,针对此时得到的数据组执行步骤304。
步骤309,存储目标数据模型以存储目标数据组中的目标历史性能数据。
在本发明实施例中,通过误差阈值平衡初步数据模型的准确性,以确保最终得到的目标数据模型的准确性,以实现通过目标数据模型更好的表征数据组中的历史性能数据。
参照图4,示出了本发明一实施例提供的另一种数据存储的方法的步骤流程图,具体可以包括如下步骤:
步骤401,获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;
步骤402,获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
步骤403,获取预设的方差阈值;
步骤404,根据时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
步骤405,当方差信息大于方差阈值时,停止读取历史性能数据,并将本次已读取的历史性能数据划分为一个数据组。
步骤406,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
步骤407,在多个初步数据模型中确定目标数据组的目标数据模型;
步骤408,存储目标数据模型以存储目标数据组中的目标历史性能数据。
步骤409,获取预设的用于评估模型的准确率阈值;
其中,准确率阈值用于评估数据模型的准确率。
步骤410,针对连续的多个数据组,分别确定每个数据组的目标数据模型的准确率信息;
针对依照时间顺序排列的多个数据组,可以确定每个数据组对应的目标数据模型的准确率信息。
在本发明一实施例中,步骤410包括以下子步骤:
子步骤41,获取预设的偏差阈值;
其中,偏差阈值用于确定预设数据是否准确。
子步骤42,针对连续的多个数据组,通过目标数据模型确定目标数据组的第三预测性能数据;
针对目标数据组,将目标时间信息分别输入目标数据模型,目标数据模型经过预测,可以生成每个目标历史性能数据对应的第三预测性能数据。
子步骤43,确定目标历史性能数据与第三预测性能数据之间的偏差数据;
确定预测得到的第三预测性能数据和目标历史性能数据之间的偏差数据。
子步骤44,基于偏差数据和偏差阈值确定每个数据组的目标数据模型的准确率信息。
通过偏差数据和偏差阈值可以确定数据组中每个预测性能数据的准确性,进而可以确定整个数据组对应目标数据模型的准确率信息。
在本发明一示例中,子步骤44具体包括以下过程:针对每个数据组中的第三预测性能数据,判断当偏差数据与偏差阈值是否匹配;根据匹配结果确定每个数据组中第三预测性能数据的匹配数量;根据匹配数量和对应数据组的第二数量信息,确定目标数据模型的准确率信息。
在实际应用中,针对预测得到的每个第三预测性能数据,当偏差数据与偏差阈值匹配,则确定该预测结果准确,若偏差数据与偏差阈值不匹配,则确定预测结果不准确,从而,可以确定每个数据组中第三预测性能数据的匹配数量,进而根据匹配数量和数据组的第二数量信息,计算目标数据模型的准确率信息。
在一示例中,可以将匹配数据除以对应数据组的第二数量信息,从而可以得到目标数据模型的准确率信息。
步骤411,根据准确率信息确定多个数据组的目标数据模型的准确率均值信息;
每划分一个数据组,可以得到数据组的目标数据模型,进而计算该模型对应的准确率信息,依照时间顺序依次划分数据组,并重复上述过程。
针对连续生成的多个目标数据模型,可以根据每个目标数据模型的准确率计算多个目标数据模型的准确率均值信息。
步骤412,当准确率均值信息小于准确率阈值时,对方差阈值进行调整。
当准确率均值信息小于准确率阈值时,则说明数据波动较大,导致模型学习效果较差,从而可以将方差阈值调低。在方差阈值调整后,可应用于后续历史性能数据的数据组划分。
在本发明一实施例中,还包括:
步骤413,当准确率均值信息不小于准确率阈值时,获取预设的准确率差阈值;
在实际应用中,当准确率均值信息不小于准确率阈值时,可以进一步获取预设的准确率差阈值,准确率差阈值用于评估模型是否准确率过高了。
步骤414,确定准确率均值信息与准确率阈值的准确率差值信息;
即准确率差值信息=准确率均值信息-准确率阈值。
步骤415,当准确率差值信息大于准确率差阈值时,对方差阈值进行调整。
当准确率差值信息大于准确率差阈值时,也可以针对方差阈值进行调整。
在一示例中,当准确率差值信息大于准确率差阈值时,确定多个数据组的性能数据数量均值,当性能数据数量均值小于预设的数量均值阈值时,对方差阈值进行调整。
在实际应用中,当准确率差值信息大于准确率差阈值时,模型预测准确度较高,从而确定多个数据组的性能数据数量均值,进而通过预设的数量均值阈值评估每个时间段的数据点数是否合适,当性能数据数量均值小于预设的数量均值阈值时,确定每个时间段的数据点数太少,会导致最终存储的模型个数增多,节省空间效果不明显,从而可以将方差阈值调高。在方差阈值调整后,可应用于后续历史性能数据的数据组划分。
参照图5a,示出了本发明一实施例提供的另一种数据存储的方法的步骤流程图,具体可以包括如下步骤:
步骤501,获取存储系统在运行过程中生成的历史性能数据和历史性能数据的时间信息;
步骤502,获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
步骤503,对历史性能数据进行分组,得到多个数据组;
步骤504,针对多个数据组中的目标数据组,将目标数据组中的目标历史性能数据和目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
步骤505,在多个初步数据模型中确定目标数据组的目标数据模型;
步骤506,根据目标数据组的时间信息,确定目标数据组的开始时间;
目标数据组的各数据按照时间信息进行排序,将最早的时间确定为目标数据组的开始时间。
步骤507,确定目标数据模型的模型参数;
在确定目标数据模型后,可以确定该目标数据模型对应的模型参数。
步骤508,确定目标数据组的第二数量信息;
其中,第二数据信息为目标数据组中包含的历史性能数据的数量。
步骤509,确定目标数据模型的偏差信息;
其中,偏差信息为目标数据模型针对每个历史性能数据的预测结果与实际的历史性能数据之间的差值。
步骤510,以开始时间为主键,以及以目标数据模型、模型参数、第二数量信息以及偏差信息为属性信息进行存储。
如图5b所示,每个数据组的实际存储结构由开始时间、目标数据模型、模型参数、第二数量信息以及偏差信息构成,开始时间作为主键索引,目标数据模型、模型参数、第二数量信息以及偏差信息为主键对应关联的属性信息。
在本发明一实施例中, 还包括:当偏差信息大于偏差阈值时,存储偏差信息。
例如:对于误差值低于或等于30%的偏差值忽略,大于30%的偏差值则记录下来。
在本发明一实施例中,还包括:
步骤511,响应于针对历史性能数据的查询操作,确定查询操作对应的待查询时间信息;
在实际应用中,在存储好目标数据模型后,当用户需要查询历史性能数据时,可以通过查询操作输入待查询时间信息。
步骤512,确定待查询时间信息对应的目标数据模型;
在确定待查询时间信息后,可以根据待查询时间信息在存储结果中进行查询,确定目标数据模型。
在本发明一实施例中,步骤512包括以下子步骤:
子步骤51,在存储系统的主键中确定与待查询时间信息匹配的目标主键;
在实际应用中,可以将待查询时间信息与存储系统中所存储的所有主键进行匹配,确定目标主键,目标主键为不小于待查询时间的最近的主键。将主键按照时间顺序从小到大排序,待查询时间为目标主键与下一个主键之间的时间点。
子步骤52,确定目标主键对应的属性信息;
在确定目标主键后,还可以确定目标主键所关联的属性信息,属性信息包括目标数据模型、模型参数、第二数量信息以及偏差信息。
子步骤53,在属性信息中,确定待查询时间信息对应的目标数据模型。
步骤513,根据目标数据模型,确定待查询时间信息对应的历史性能数据。
在确定目标数据模型后,可以将目标数据模型转换成历史性能数据,在一示例中,可以将待查询时间信息作为目标数据模型的输入数据,经过目标数据模型的一系列计算处理,预测出该待查询时间所对应的历史性能数据。
在本发明一实施例中,步骤513包括以下子步骤:
子步骤61,确定目标数据模型对应的模型参数和偏差数据;
在实际应用中,还可以确定目标数据模型对应的模型参数和偏差数据。
子步骤62,将待查询时间信息输入目标数据模型,根据模型参数,生成目标预测性能数据;
进而,在间隔待查询时间信息输入目标数据模型后,可以根据模型参数进行预测,得到目标预测性能数据。
子步骤63,基于目标预测性能数据和偏差数据确定待查询时间信息对应的历史性能数据。
在得到目标预测性能数据后,还可以结合偏差数据,还原出待查询时间信息所对应的历史性能数据。
在一示例中,在划分数据组后,对数据组中书数据进行了归一化处理,进而,结合目标预测性能数据和偏差数据,可以得到归一化处理后历史性能数据,针对该归一化数据按照归一化处理过程的预设规则,对其进行解码。从而得到待查询时间信息所对应的历史性能数据。
在本发明实施例,将数据组中的多个数据,以开始时间为主键,以目标数据模型、模型参数、第二数量信息、偏差信息为属性信息进行存储,进而,通过输入时间,在存储结构中进行匹配查询,进而通过目标数据模型还原历史性能数据,实现快速读取。
以下结合图6a-6b对本发明上述实施例进行示例性说明:
如图6a所示为本发明的实现框架,存储系统与用户客户端连接,用户客户端用于数据展示。存储系统划分为数据存储模块、数据管理模块、机器学习模块三个部分。
如图6b所示,为存储系统的内部数据存储的流程图。
存储系统内部各模块的具体架构以功能如下:
数据存储模块:包括临时缓存区和永久存储区。临时缓存区用于存储尚未进行处理的历史性能数据及实时产生的新的性能数据。永久存储区用于存储最终的数据模型信息。
数据管理模块:包括数据预处理区、模型存储区以及数据生成区。数据预处理区可以从临时缓存区中读取历史性能数据,并自动对性能数据进行合理的时间段划分,同时对划分后的历史性能数据进行预处理,便于机器学习模块直接使用;模型存储区用于将机器学习模块输出的数据模型信息及对应时间信息进行存储;数据生成区在有历史性能数据查询请求时,将与时间对应的数据模型信息读取出来,生成实际的历史性能数据,返回给请求客户端。
机器学习模块:包括模型学习区、模型筛选区以及模型评估区。模型学习区采用多种机器学习算法,可对输入数据自主学习数据模型;模型筛选区对模型学习区输出的数据模型进行评测,选取最优数据模型;模型评估区用于对一段时间内连续多个数据模型的准确率进行统计,计算平均准确率。
依照图6b中的上述架构,在存储系统中数据处理过程具体如下:
1.1存储系统在运行过程中生成性能数据,并将性能数据存入数据存储模块的临时缓存区。
1.2数据管理模块的数据预处理区从临时缓存区读取性能数据。
1.3数据预处理区将性能数据进行分段处理(即划分数据组),并进行预处理后传输至机器学习模块中的模型学习区。
利用方差来衡量历史性能数据波动情况,基于方差进行历史性能数据划分,该方差值可基于后续的模型学习结果动态调整。
历史性能数据分段:根据距离当前时间由远至近的原则依次读取历史性能数据,并实时计算方差值。如果方差值V小于等于方差阈值T1,则继续读取性能数据。如果方差值V大于方差阈值 T1,则停止读取性能数据。已读取的性能数据作为同一个时间段的数据。后续性能数据依此原则继续划分。
由于每存储一段数据需要保存5个信息(见图5b),因此每个时间段的性能数据个数不少于3个(时间和数据值共计6个信息),才能保证起到节省空间的作用。当方差值V大于方差阈值T1,但是已读取性能数据个数少于3个时,仍然读取3个性能数据作为一个时间段数据。
数据预处理:划分好的历史性能数据在进行模型学习前进行必要的预处理,例如,归一化处理等。
1.4在模型学习区经过模型学习,每一段性能数据输出多个数据模型(即初步数据模型)至模型筛选区。
预设多种机器学习方法,每种机器学习方法进行一轮模型学习,输出对应的数据模型。
1.5模型筛选区在多个数据模型中筛选最优数据模型(即目标数据模型),并将最优数据模型和相关数据传输至模型存储区。
基于初始数据模型,生成性能数据值,并与实际值比较,获取误差最大的数据点。如果该误差不大于设定阈值,则在多个数据模型中筛选最优数据模型,具体可以采用均方差方法,对多种机器学习输出的数据模型进行评判,筛选出最优数据模型。
如果该误差大于设定阈值,则以此数据点为准,将原始的一段性能数据拆分为2部分,时间小的一段数据返回步骤1.4进行机器学习,时间大的一段数据则返回步骤1.2继续读取后续数据进行分组。
1.6模型存储区将最优数据模型和相关数据存储至永久存储区。
数据存储:对数据模型信息、时间信息、偏差值信息进行存储,如图5b。
1)时间信息存储:只存储该时间段的开始时间信息以及该时间段内的历史性能数据个数。采样时间间隔固定,可依据开始时间计算出每个性能数据的对应时间点。存储时以开始时间作为主键,其他存储信息为属性值。
2)数据模型信息存储:存储数据模型类型及相关模型参数值。
3)偏差值信息存储:存储偏差值及其对应数据点在所属时间段的索引值。其中,计算每个时间点的性能数据偏差值。对于误差值低于等于30%的偏差值忽略,大于30%的偏差值则记录下来。
通过上述1.1至1.6完成数据存储。
2.1模型筛选在筛选出连续N个最优模型后,将连续N个最优模型输出至模型评估区进行模型评估。
2.2模型评估模块可以评估每个最优模型的准确率,并将准确率传输至数据预处理区,用于动态调整方差阈值。
基于2.1筛选得到的最优模型,计算连续N个最优模型的准确率平均值Aa。该值用于方差阈值T1的调整。
阈值设置:可以预设置方差阈值T1、模型准确率阈值T2、模型准确率差阈值T3、性能数据个数阈值T4。
具体方差调整策略如下:
a)连续N个最优模型的平均准确率(Aa)低于模型准确率阈值T2(Aa < T2),则说明数据波动较大,导致模型学习效果较差,需将方差阈值T1调低。
b)连续N最优模型的平均准确率大于模型准确率阈值,且差值大于模型准确率差阈值T3( Aa - T2 > T3),同时这些连续N最优模型的性能数据平均个数Ac低于预定性能数据个数阈值T4(Ac < T4),则说明是每个时间段的数据点数太少,导致模型准确率太高。每个时间段的数据点数太少,会导致最终存储的模型个数增多,节省空间效果不明显,因此需要将方差阈值T1调高。
c)除a)和b)的以外情况,方差阈值T1保持不变。
通过2.1至2.2实现反馈动态调整方差阈值。
3.1当接收到数据读取请求时,数据生成区从永久存储区中读取数据模型信息。
3.2数据生成区通过读取的数据模型信息生成历史性能数据,并将历史性能数据传输至用户客户端进行展示。
数据读取:在查询历史性能数据时,基于存储的数据模型信息、时间信息、偏差值信息生成历史性能数据。具体过程为根据查询请求中的时间点,找出对应的开始时间主键值,并根据主键值,获取数据模型信息、偏差值信息等。先基于数据模型信息获取每个时间点的历史性能数据,再基于偏差值,纠正对应时间点的历史性能数据。最终还原出实际的性能数据。
通过3.1至3.2实现了快速读取数据。
需要说明的是,对于方法实施例,为了简单描述,故将其表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图7,示出了本发明一实施例提供的一种数据存储的装置的结构示意图,具体可以包括如下模块:
数据获取模块701,用于获取存储系统在运行过程中生成的历史性能数据和所述历史性能数据的时间信息;
机器模型获取模块702,用于获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
数据分组模块703,用于对所述历史性能数据进行分组,得到多个数据组;
模型训练模块704,用于针对所述多个数据组中的目标数据组,将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
模型筛选模块705,用于在所述多个初步数据模型中确定所述目标数据组的目标数据模型;
模型存储模块706,用于存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据。
在本发明一实施例中,数据分组模块703可以包括:
方差阈值确定子模块,用于获取预设的方差阈值;
方差信息确定子模块,用于根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
数据组划分子模块,用于当所述方差信息大于所述方差阈值时,停止读取历史性能数据,并将本次已读取的历史性能数据划分为一个数据组。
在本发明一实施例中,数据分组模块703还包括:
继续读取子模块,用于当所述方差信息不大于所述方差阈值时,执行所述根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息。
在本发明一实施例中,数据组划分子模块包括:
第一数量信息确定子单元,用于当所述方差信息大于所述方差阈值时,确定已读取的历史性能数据的第一数量信息;
停止读取子单元,用于当所述第一数量信息不小于预设的数量阈值时,停止读取历史性能数据。
在本发明一实施例中,数据组划分子模块还包括:
继续读取子单元,用于当所述第一数量信息小于预设的数量阈值时,按照所述数量阈值继续读取历史性能数据。
在本发明一实施例中,所述装置还包括:
归一化预处理模块,用于针对每个数据组中的历史性能数据进行归一化预处理。
在本发明一实施例中,模型训练模块704可以包括:
第一预测性能数据生成子模块,用于针对每个预设机器模型,将所述目标数据信息输入所述预设机器模型,生成第一预测性能数据;
目标模型参数确定子模块,用于根据所述目标历史性能数据和所述第一预测性能数据,确定目标模型参数;
初步数据模型生成子模块,用于基于所述目标模型参数生成初步数据模型。
在本发明一实施例中,所述装置还包括:
误差阈值获取模块,用于获取针对数据模型预设的误差阈值;
第二预测性能数据生成模块,用于将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成所述目标历史性能数据对应的第二预测性能数据;
最大误差数据确定模块,用于根据所述目标历史性能数据和第二预测性能数据,确定所述目标数据组在所述多个初步数据模型中的最大误差数据;
误差阈值判断模块,用于当所述最大误差数据不大于误差阈值时,执行在所述多个初步数据模型中确定目标数据模型。
在本发明一实施例中,所述装置还包括:
数据组拆分模块,用于当所述最大误差数据大于误差阈值时,按照所述最大误差数据对应的目标历史性能数据,将所述目标数据组拆分为两个数据组;
模型重训练执行模块,用于针对拆分后的数据组,执行将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型。
在本发明一实施例中,模型筛选模块705可以包括:
第二预测性能数据确定子模块,用于将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成每个初步数据模型对应的第二预测性能数据;
均方差数据确定子模块,用于根据第二预测性能数据生成每个初步数据模型的均方差数据;
目标数据模型确定子模块,用于根据每个初步数据模型的均方差数据,在所述多个初步数据模型中确定目标数据模型。
在本发明一实施例中,所述装置还包括:
准确率阈值确定模块,用于获取预设的用于评估模型的准确率阈值;
准确率信息确定模块,用于针对连续的多个数据组,分别确定每个数据组的目标数据模型的准确率信息;
准确率均值确定模块,用于根据所述准确率信息确定多个数据组的目标数据模型的准确率均值信息;
第一方差阈值调整模块,用于当所述准确率均值信息小于所述准确率阈值时,对所述方差阈值进行调整。
在本发明一实施例中,所述装置还可以包括:
准确率差阈值获取模块,用于当所述准确率均值信息不小于所述准确率阈值时,获取预设的准确率差阈值;
准确率差值信息确定模块,用于确定所述准确率均值信息与所述准确率阈值的准确率差值信息;
第二方差阈值确定模块,用于当所述准确率差值信息大于所述准确率差阈值时,对所述方差阈值进行调整。
在本发明一实施例中,所述准确率信息确定模块包括:
偏差阈值获取子模块,用于获取预设的偏差阈值;
第三预设性能数据确定子模块,用于针对连续的多个数据组,通过目标数据模型确定目标数据组的第三预测性能数据;
偏差数据确定子模块,用于确定所述历史性能数据与所述第三预测性能数据之间的偏差数据;
准确率信息确定子模块,用于基于所述偏差数据和所述偏差阈值确定每个数据组的目标数据模型的准确率信息。
在本发明一实施例中,准确率信息确定子模块包括:
偏差阈值匹配单元,用于针对每个数据组中的第三预测性能数据,判断当所述偏差数据与所述偏差阈值是否匹配;
匹配数量确定单元,用于根据匹配结果确定每个数据组中第三预测性能数据的匹配数量;
准确率信息确定单元,用于根据所述匹配数量和对应数据组的数量信息,确定所述目标数据模型的准确率信息。
在本发明一实施例中,准确率信息确定单元在用于根据所述匹配数据和对应数据组的数量信息,确定所述目标数据模型的准确率信息时,具体用于:
将所述匹配数据除以对应数据组的数量信息,得到所述目标数据模型的准确率信息。
在本发明一实施例中,模型存储模块706可以包括:
开始时间确定子模块,用于根据所述目标数据组的时间信息,确定所述目标数据组的开始时间;
模型参数确定子模块,用于确定所述目标数据模型的模型参数;
第二数量信息确定子模块,用于确定所述目标数据组的第二数量信息;
偏差信息确定子模块,用于确定所述目标数据模型的偏差信息;
存储子模块,用于以所述开始时间为主键,以及以所述目标数据模型、所述模型参数、所述数量信息以及所述偏差信息为属性信息进行存储。
在本发明一实施例中,所述装置还包括:
待查询时间信息确定模块,用于响应于针对历史性能数据的查询操作,确定所述查询操作对应的待查询时间信息;
目标数据模型确定模块,用于确定所述待查询时间信息对应的目标数据模型;
历史性能数据确定模块,用于根据所述目标数据模型,确定所述待查询时间信息对应的历史性能数据。
在本发明一实施例中,所述目标数据模型确定模块可以包括:
目标主键确定子模块,用于在所述存储系统的主键中确定与所述待查询时间信息匹配的目标主键;
属性信息确定子模块,用于确定所述目标主键对应的属性信息;
目标数据模型确定子模块,用于在所述属性信息中,确定所述待查询时间信息对应的目标数据模型。
在本发明一实施例中,历史性能数据确定模块可以包括:
关联信息确定子模块,用于确定所述目标数据模型对应的模型参数和偏差数据;
目标预测性能数据确定子模块,用于将所述待查询时间信息输入所述目标数据模型,根据所述模型参数,生成目标预测性能数据;
历史性能数据确定子模块,用于基于所述目标预测性能数据和所述偏差数据确定所述待查询时间信息对应的历史性能数据。
在本发明一实施例中,所述装置还包括:
当所述偏差信息大于偏差阈值时,存储所述偏差信息。
本发明一实施例还提供了一种电子设备,可以包括处理器、存储器及存储在存储器上并能够在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上数据存储的方法。
本发明一实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如上数据存储的方法。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对所提供的一种数据存储的方法、装置、电子设备以及存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (20)
1.一种数据存储的方法,其特征在于,所述方法包括:
获取存储系统在运行过程中生成的历史性能数据和所述历史性能数据的时间信息;
获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
对所述历史性能数据进行分组,得到多个数据组;
针对所述多个数据组中的目标数据组,将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
在所述多个初步数据模型中确定所述目标数据组的目标数据模型;
存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据;
其中,所述对所述历史性能数据进行分组,得到多个数据组,包括:
获取预设的方差阈值;
根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
当所述方差信息大于所述方差阈值时,停止读取历史性能数据,并将本次已读取的历史性能数据划分为一个数据组;
当所述方差信息不大于所述方差阈值时,执行所述根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
其中,所述当所述方差信息大于所述方差阈值时,停止读取历史性能数据,包括:
当所述方差信息大于所述方差阈值时,确定已读取的历史性能数据的第一数量信息;
当所述第一数量信息不小于预设的数量阈值时,停止读取历史性能数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
当所述第一数量信息小于预设的数量阈值时,按照所述数量阈值继续读取历史性能数据。
3.根据权利要求1所述的方法,其特征在于,在所述对所述历史性能数据进行分组,得到多个数据组之后,还包括:
针对每个数据组中的历史性能数据进行归一化预处理。
4.根据权利要求1所述的方法,其特征在于,所述将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型,包括:
针对每个预设机器模型,将所述目标时间信息输入所述预设机器模型,生成第一预测性能数据;
根据所述目标历史性能数据和所述第一预测性能数据,确定目标模型参数;
基于所述目标模型参数生成初步数据模型。
5.根据权利要求1所述的方法,其特征在于,在生成多个初步数据模型之后,还包括:
获取针对数据模型预设的误差阈值;
将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成所述目标历史性能数据对应的第二预测性能数据;
根据所述目标历史性能数据和第二预测性能数据,确定所述目标数据组在所述多个初步数据模型中的最大误差数据;
当所述最大误差数据不大于误差阈值时,执行在所述多个初步数据模型中确定目标数据模型。
6.根据权利要求5所述的方法,其特征在于,还包括:
当所述最大误差数据大于误差阈值时,按照所述最大误差数据对应的目标历史性能数据,将所述目标数据组拆分为两个数据组;
针对拆分后的数据组,执行将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型。
7.根据权利要求1或6所述的方法,其特征在于,所述在所述多个初步数据模型中确定所述目标数据组的目标数据模型,包括:
将目标数据组中每个目标历史性能数据对应的目标时间信息分别输入每个初步数据模型,生成每个初步数据模型对应的第二预测性能数据;
根据第二预测性能数据生成每个初步数据模型的均方差数据;
根据每个初步数据模型的均方差数据,在所述多个初步数据模型中确定目标数据模型。
8.根据权利要求1所述的方法,其特征在于,还包括:
获取预设的用于评估模型的准确率阈值;
针对连续的多个数据组,分别确定每个数据组的目标数据模型的准确率信息;
根据所述准确率信息确定多个数据组的目标数据模型的准确率均值信息;
当所述准确率均值信息小于所述准确率阈值时,对所述方差阈值进行调整。
9.根据权利要求8所述的方法,其特征在于,还包括:
当所述准确率均值信息不小于所述准确率阈值时,获取预设的准确率差阈值;
确定所述准确率均值信息与所述准确率阈值的准确率差值信息;
当所述准确率差值信息大于所述准确率差阈值时,对所述方差阈值进行调整。
10.根据权利要求8所述的方法,其特征在于,所述针对连续的多个数据组,分别确定每个数据组的目标数据模型的准确率信息,包括:
获取预设的偏差阈值;
针对连续的多个数据组,通过目标数据模型确定目标数据组的第三预测性能数据;
确定所述目标历史性能数据与所述第三预测性能数据之间的偏差数据;
基于所述偏差数据和所述偏差阈值确定每个数据组的目标数据模型的准确率信息。
11.根据权利要求10所述的方法,其特征在于,所述基于所述偏差数据和所述偏差阈值确定每个数据组的目标数据模型的准确率信息,包括:
针对每个数据组中的第三预测性能数据,判断当所述偏差数据与所述偏差阈值是否匹配;
根据匹配结果确定每个数据组中第三预测性能数据的匹配数量;
根据所述匹配数量和对应数据组的第二数量信息,确定所述目标数据模型的准确率信息。
12.根据权利要求11所述的方法,其特征在于,所述根据所述匹配数据和对应数据组的数量信息,确定所述目标数据模型的准确率信息,包括:
将所述匹配数据除以对应数据组的数量信息,得到所述目标数据模型的准确率信息。
13.根据权利要求1所述的方法,其特征在于,所述存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据,包括:
根据所述目标数据组的时间信息,确定所述目标数据组的开始时间;
确定所述目标数据模型的模型参数;
确定所述目标数据组的第二数量信息;
确定所述目标数据模型的偏差信息;
以所述开始时间为主键,以及以所述目标数据模型、所述模型参数、所述第二数量信息以及所述偏差信息为属性信息进行存储。
14.根据权利要求1或13所述的方法,其特征在于,还包括:
响应于针对历史性能数据的查询操作,确定所述查询操作对应的待查询时间信息;
确定所述待查询时间信息对应的目标数据模型;
根据所述目标数据模型,确定所述待查询时间信息对应的历史性能数据。
15.根据权利要求14所述的方法,其特征在于,所述确定所述待查询时间信息对应的目标数据模型,包括:
在所述存储系统的主键中确定与所述待查询时间信息匹配的目标主键;
确定所述目标主键对应的属性信息;
在所述属性信息中,确定所述待查询时间信息对应的目标数据模型。
16.根据权利要求15所述的方法,其特征在于,所述根据所述目标数据模型,确定所述待查询时间信息对应的历史性能数据,包括:
确定所述目标数据模型对应的模型参数和偏差数据;
将所述待查询时间信息输入所述目标数据模型,根据所述模型参数,生成目标预测性能数据;
基于所述目标预测性能数据和所述偏差数据确定所述待查询时间信息对应的历史性能数据。
17.根据权利要求13所述的方法,其特征在于,还包括:
当所述偏差信息大于偏差阈值时,存储所述偏差信息。
18.一种数据存储的装置,其特征在于,所述装置包括:
数据获取模块,用于获取存储系统在运行过程中生成的历史性能数据和所述历史性能数据的时间信息;
机器模型获取模块,用于获取多个用于对历史性能数据进行训练生成数据模型的预设机器模型;
数据分组模块,用于对所述历史性能数据进行分组,得到多个数据组;
模型训练模块,用于针对所述多个数据组中的目标数据组,将所述目标数据组中的目标历史性能数据和所述目标历史性能数据所对应的目标时间信息输入多个预设机器模型进行训练,生成多个初步数据模型;
模型筛选模块,用于在所述多个初步数据模型中确定所述目标数据组的目标数据模型;
模型存储模块,用于存储所述目标数据模型以存储所述目标数据组中的目标历史性能数据;
其中,数据分组模块包括:
方差阈值确定子模块,用于获取预设的方差阈值;
方差信息确定子模块,用于根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
数据组划分子模块,用于当所述方差信息大于所述方差阈值时,停止读取历史性能数据,并将本次已读取的历史性能数据划分为一个数据组;
继续读取子模块,用于当所述方差信息不大于所述方差阈值时,执行所述根据所述时间信息的从小到大的顺序逐个读取历史性能数据,并确定已读取的历史性能数据的方差信息;
其中,数据组划分子模块包括:
第一数量信息确定子单元,用于当所述方差信息大于所述方差阈值时,确定已读取的历史性能数据的第一数量信息;
停止读取子单元,用于当所述第一数量信息不小于预设的数量阈值时,停止读取历史性能数据。
19.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至17中任一项所述数据存储的方法。
20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至17中任一项所述数据存储的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211565250.0A CN115576502B (zh) | 2022-12-07 | 2022-12-07 | 一种数据存储的方法、装置、电子设备以及存储介质 |
PCT/CN2023/098762 WO2024119746A1 (zh) | 2022-12-07 | 2023-06-07 | 一种数据存储的方法、装置、电子设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211565250.0A CN115576502B (zh) | 2022-12-07 | 2022-12-07 | 一种数据存储的方法、装置、电子设备以及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115576502A CN115576502A (zh) | 2023-01-06 |
CN115576502B true CN115576502B (zh) | 2023-04-28 |
Family
ID=84590666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211565250.0A Active CN115576502B (zh) | 2022-12-07 | 2022-12-07 | 一种数据存储的方法、装置、电子设备以及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115576502B (zh) |
WO (1) | WO2024119746A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115576502B (zh) * | 2022-12-07 | 2023-04-28 | 苏州浪潮智能科技有限公司 | 一种数据存储的方法、装置、电子设备以及存储介质 |
CN117148252B (zh) * | 2023-10-31 | 2024-01-12 | 湖南智焜能源科技有限公司 | 一种开关量测单元和多ct互联互通的精度自校准方法 |
CN118466628B (zh) * | 2024-07-08 | 2024-09-27 | 南通通易航天科技股份有限公司 | 用于耐高温喷涂防护胶带的均匀成型控制方法及装置 |
CN118710942B (zh) * | 2024-08-29 | 2024-11-05 | 浙江毫微米科技有限公司 | 3d模型数据的识别匹配方法、系统、设备、介质和程序 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6535817B1 (en) * | 1999-11-10 | 2003-03-18 | The Florida State Research Foundation | Methods, systems and computer program products for generating weather forecasts from a multi-model superensemble |
CN104679970B (zh) * | 2013-11-29 | 2018-11-09 | 高德软件有限公司 | 一种数据检测方法及装置 |
CN106709588B (zh) * | 2015-11-13 | 2022-05-17 | 日本电气株式会社 | 预测模型构建方法和设备以及实时预测方法和设备 |
CN108804266A (zh) * | 2018-05-22 | 2018-11-13 | 郑州云海信息技术有限公司 | 一种存储系统性能测试方法、装置和计算机可读存储介质 |
CN110825579B (zh) * | 2019-09-18 | 2022-03-08 | 平安科技(深圳)有限公司 | 服务器性能监控方法、装置、计算机设备及存储介质 |
CN114647369A (zh) * | 2021-03-29 | 2022-06-21 | 深圳宏芯宇电子股份有限公司 | 一种存储控制方法和存储装置 |
CN113434471B (zh) * | 2021-06-24 | 2024-10-22 | 平安国际智慧城市科技股份有限公司 | 数据处理方法、装置、设备及计算机存储介质 |
CN115576502B (zh) * | 2022-12-07 | 2023-04-28 | 苏州浪潮智能科技有限公司 | 一种数据存储的方法、装置、电子设备以及存储介质 |
-
2022
- 2022-12-07 CN CN202211565250.0A patent/CN115576502B/zh active Active
-
2023
- 2023-06-07 WO PCT/CN2023/098762 patent/WO2024119746A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
CN115576502A (zh) | 2023-01-06 |
WO2024119746A1 (zh) | 2024-06-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115576502B (zh) | 一种数据存储的方法、装置、电子设备以及存储介质 | |
US11494636B2 (en) | Machine learning-based semiconductor manufacturing yield prediction system and method | |
WO2018227800A1 (zh) | 一种神经网络训练方法及装置 | |
CN111652380A (zh) | 针对机器学习算法进行算法参数调优的方法及系统 | |
JP7171471B2 (ja) | 学習モデル生成支援装置、及び学習モデル生成支援方法 | |
CN112396211A (zh) | 一种数据预测方法及装置、设备和计算机存储介质 | |
CN114580517A (zh) | 一种图像识别模型的确定方法及装置 | |
US20190220924A1 (en) | Method and device for determining key variable in model | |
US20110093477A1 (en) | Method for estimation of order-based statistics on slowly changing distributions | |
CN113746798A (zh) | 基于多维度分析的云网络共享资源异常根因定位方法 | |
CN117056021A (zh) | 基于长时间序列预测的动态区间弹性扩缩容方法和系统 | |
CN113268403A (zh) | 时间序列的分析预测方法、装置、设备及存储介质 | |
CN113191891A (zh) | 数据处理方法、装置及系统 | |
CA2741085A1 (en) | Method and apparatus for default rating estimation | |
CN109213965B (zh) | 一种系统容量预测方法、计算机可读存储介质及终端设备 | |
CN104216887B (zh) | 用于对采样数据进行总结的方法和装置 | |
CN113822768A (zh) | 社区网络的处理方法、装置、设备及存储介质 | |
CN111447193A (zh) | 一种针对实时数据流进行异常检测的方法及装置 | |
CN116185797A (zh) | 预测服务器资源饱和度的方法、装置及存储介质 | |
CN114996228A (zh) | 一种面向服务器无感知的数据传输成本优化方法 | |
CN110096311B (zh) | 流式计算中聚合时间的评估方法、装置、设备及存储介质 | |
CN112699140A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN116266102B (zh) | 工作负载特性和经过时间之间的相关性 | |
CN117669449B (zh) | 灭磁电路确定方法、装置、计算机设备和存储介质 | |
CN118035696B (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 |