掌桥专利:专业的专利平台
掌桥专利
首页

用于存储卷的数据缩减

文献发布时间:2024-04-18 19:59:31


用于存储卷的数据缩减

背景技术

存储系统包括允许存储系统在存储介质中存储数据的资源,存储介质可以包括存储设备的集合(单个存储设备或多个存储设备)。在一些示例中,存储系统可以包括存储介质和其他资源(包括处理资源和通信资源)。在其他示例中,存储系统可以呈控制系统(例如,存储服务器)的形式,其包括处理资源和通信资源并且管理数据在分开的存储介质上的存储。

附图说明

关于以下附图描述了本公开的一些实施方式。

图1是根据一些示例的包括存储系统和数据缩减管理引擎的布置的框图。

图2是根据一些示例的延迟识别机器学习模型的框图。

图3是根据一些示例的数据缩减推荐机器学习模型的框图。

图4是根据一些示例的数据缩减推荐机器学习模型的流程图。

图5是根据一些示例的存储机器可读指令的存储介质的框图。

图6是根据一些示例的系统的框图。

图7是根据一些示例的过程的流程图。

在所有附图中,相同的附图标记指代相似但不一定相同的要素。附图不一定是按比例绘制的,并且一些部分的尺寸可以被放大以更清楚地图示所示的示例。此外,附图提供了与描述一致的示例和/或实施方式;然而,描述不限于附图中提供的示例和/或实施方式。

具体实施方式

在本公开中,除非上下文另外明确指示,否则使用术语“一个/一种(a/an)”或“所述(the)”旨在同样包括复数形式。同样地,当在本公开中使用时,术语“包括(includes/including/comprises/comprising)”、“具有(have/having)”指明存在所述要素,但不排除存在或添加其他要素。

可以在存储系统中执行各种不同类型的工作负载。不同的工作负载可能会为存储系统的资源进行竞争,从而导致资源争用,这可能会对某些工作负载的性能产生不利影响。

“工作负载”可以指由存储系统中的实体(例如,机器可读指令或硬件)执行的任何活动集合。

存储系统中运行的多个工作负载可能会使存储系统的共享资源过载。在第一工作负载的资源使用阻止存储系统中的第二工作负载的执行或导致第二工作负载执行得更慢的场景中,第一工作负载会对第二工作负载的性能产生不利影响。共享资源可以包括物理资源,例如处理资源(比如,处理器、处理器的核等)、输入/输出(I/O)资源(例如,如支持I/O操作(如读操作和写操作)的I/O控制器等资源)、通信资源(例如,网络接口控制器、交换机或路由器等)、存储器资源(例如,如动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪速存储器设备等存储器设备),等等。

共享资源还可以包括如虚拟机、虚拟处理器、虚拟通信设备等逻辑资源,和/或如设备驱动程序、操作系统(OS)资源等程序资源,等等。

数据缩减可以由在由存储系统存储的存储卷上执行的一些工作负载来应用。“存储卷”可以指逻辑容器或可以如通过写入操作向其中添加数据的其他构造。还可以通过读取操作从存储卷中取得数据。

可以对数据执行的数据缩减的示例可以包括数据压缩和/或重复数据删除。数据压缩可以指编码或以其他方式变换数据,使得数据的大小可能减小,即,压缩数据的大小可能小于未压缩数据的大小。压缩技术的示例包括Lempel-Ziv(LZ)压缩、游程长度编码、字典编码等等。

重复数据删除是指移除数据中出现的重复数据部分。例如,输入数据可以被划分成数据块。重复数据删除过程可以识别存储系统先前已经存储的数据块——所识别的数据块是重复的数据块,因为存储系统已经存储了这些数据块。重复数据删除过程可以避免在存储系统中再次存储所识别的重复数据块。重复数据删除过程可以存储对先前存储的数据块的引用,而不是存储重复的数据块。经过重复数据删除的数据(例如,经过重复数据删除的文件、经过重复数据删除的对象等)可以包含数据块和引用的集合,其中,引用是对已存储数据块的引用,并且由重复数据删除过程产生。“引用”可以是指向数据块的存储位置的指针或任何其他指示。

更一般地,应用于数据的数据缩减是指响应于接收到的要存储在存储系统中的输入数据(“原始数据”)而减少存储在存储系统中的数据量的任何过程。

执行数据缩减可能会占用大量资源。例如,数据缩减会消耗处理资源。数据压缩所应用的数据编码可能需要一些时间来执行,尤其是在输入数据很大的情况下。重复数据删除可以涉及将输入数据划分成数据块,基于数据块计算签名值(例如,散列值),将签名值与表示已经由存储系统存储的数据块的签名值集合进行比较,以及将输入数据的具有与签名值集合相匹配的签名值的数据块识别为重复数据块。

通过应用数据缩减可以实现的存储节省量可以取决于应用数据缩减的数据的类型。例如,某些类型的数据比其他类型的数据更容易压缩。数据压缩的有效性可以用压缩比来表示,压缩比是未压缩数据的大小与压缩数据的大小之比。数据压缩比越高,数据压缩越有效。在其他示例中,可以使用数据压缩有效性的其他度量。

重复数据删除的有效性取决于应用重复数据删除可以移除的重复数据量。例如,如果重复数据删除移除更多重复数据块,则重复数据删除会更加有效。

当在存储系统存储的存储卷上执行大量工作负载时,管理员可能难以确定工作负载所应用的数据缩减是否有效。对存储卷无效地应用数据缩减会浪费存储系统的资源,这会降低其他工作负载的速度。管理员可能观察到存储系统正在经历高延迟(“延迟”可以指从工作负载开始到工作负载完成的时间量),但是管理员可能不知道哪些工作负载正在无效地使用存储系统的资源,如由于无效地应用数据缩减。

根据本公开的一些实施方式,一种系统可以如从多个存储系统中识别存在对存储系统的资源的争用的存储系统,并且可以确定采用数据缩减的工作负载的集合(单个工作负载或多个工作负载)正在消耗该资源。包括单个工作负载或多个工作负载的工作负载的集合也可以称为“工作负载集合”。该系统识别能够归因于存储系统中的存储卷的对资源消耗的相对贡献,其中,采用数据缩减的工作负载集合是对存储卷的数据执行的。该系统确定由于对存储卷中的给定存储卷应用数据缩减而实现的存储空间节省是否满足标准,并且响应于确定给定存储卷的存储空间节省不满足标准,指示不对给定存储卷应用数据缩减。

图1是根据本公开的一些实施方式的包括存储系统102和数据缩减管理引擎104的示例布置的框图。虽然图1将数据缩减管理引擎104示出为与存储系统102分开,但是注意,在其他示例中,数据缩减管理引擎104可以是存储系统102的一部分。如果数据缩减管理引擎104与存储系统102分开,则数据缩减管理引擎104可以通过网络或其他链路耦接到存储系统102。

如这里所使用的,“引擎”可以指一个或多个硬件处理电路,该一个或多个硬件处理电路可以包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列或其他硬件处理电路中的任何一项或某种组合。可替代地,“引擎”可以指一个或多个硬件处理电路和可在一个或多个硬件处理电路上执行的机器可读指令(软件和/或固件)的组合。

存储系统102包括处理资源106,该处理资源可以包括以下各项中的任何一项或某种组合:处理器、多核处理器的核、微控制器、数字信号处理器、可编程集成电路设备、可编程门阵列、如虚拟机、虚拟处理器等虚拟实体。存储系统102的处理资源106可以是单个计算节点的一部分,或者可以包括在多个计算节点中。

其他类型的资源也可以包括在存储系统102中,包括如缓存存储器107等存储器资源。缓存存储器用一个或多个存储器设备来实施,并且可以为相应的处理资源存储数据。其他类型的资源包括I/O资源、程序资源等等。

在根据图1的示例中,存储系统102包括存储子系统108,该存储子系统可以包括存储设备的集合(单个存储设备或多个存储设备)。存储设备的示例包括基于磁盘的存储设备、固态驱动器等。

在其他示例中,存储子系统108可以与存储系统102分开,但是存储子系统108可由存储系统102访问。

存储子系统108存储各种存储卷110-1、110-2、110-3等,这些存储卷包含数据,对这些数据执行在处理资源106上执行的工作负载(例如,112-1、112-2等)。一个工作负载可以对一个或多个存储卷中的数据执行。反过来,一个或多个工作负载可以应用于一个存储卷中的数据。工作负载由请求者发起,请求者可以是通过网络与存储系统102通信的远程请求者,或者是存储系统102内的请求者。“请求者”可以指能够请求对存储在存储子系统108的存储卷中的数据执行操作(例如,读操作、写操作等)的用户、程序或机器。

尽管在图1中描绘了特定数量的工作负载112-1、112-2和存储卷110-1、110-2、110-3,但是在其他示例中,可以存在不同数量的工作负载和/或存储卷。

在图1的示例中,工作负载112-1对相应存储卷(例如,110-1)中的数据应用数据缩减114。工作负载112-2不对相应存储卷(例如,110-3)中的数据应用数据缩减。在这样的示例中,存储卷110-1被称为“厚”存储卷,因为当减少存储在存储卷110-1中的数据量时,可以应用数据缩减来实现有益的数据缩减比(注意,在厚存储卷上执行的工作负载可能不应用数据缩减)。存储卷110-2被称为“非厚”存储卷,因为不对存储在存储卷110-2中的数据应用数据缩减。

例如,数据缩减114可以包括数据压缩和/或重复数据删除。对于由工作负载112-1执行的写操作,数据缩减114可以对写数据执行数据缩减,以产生被写入对应的(多个)存储卷110的缩减的数据。“缩减的”数据可以指压缩数据和/或经过重复数据删除的数据。

当工作负载112-1从存储卷110-1读取缩减的数据时,数据缩减可以被逆转(例如,数据可以被解压缩和/或重复数据删除可以被逆转,如通过用实际的数据块来替换经过重复数据删除的数据中的对数据块的引用)。

存储系统102包括监测引擎116(单个监测引擎或多个监测引擎)的集合,以收集与在存储系统102中执行的数据操作相关的各种性能相关指标。可以收集的性能相关指标的示例包括处理资源106的使用指标(例如,利用了多少百分比的处理资源)、与工作负载的执行相关联的延迟相关的延迟指标、与存储系统102中的缓存存储器107的使用相关的缓存相关指标(例如,缓存命中率和/或缓存未命中率)等等。

由监测引擎116的集合收集的性能相关指标可以包括与存储系统102整体相关的性能相关指标,以及与各个存储卷相关的性能相关指标。

与存储系统102总体相关的性能相关指标可以指示对存储卷110-1、110-2、110-3的数据执行的工作负载的处理资源106的总利用率、与对存储卷110-1、110-2、110-3的数据执行的工作负载相关联的总延迟、与对存储卷110-1、110-2、110-3的数据执行的工作负载相关联的总缓存存储器利用率等等。

与各个存储卷110相关的性能相关指标可以指示对存储卷的数据执行的(多个)工作负载的处理资源106的利用率、与对各个存储卷的数据执行的(多个)工作负载相关联的延迟、与对各个存储卷的数据执行的(多个)工作负载相关联的缓存存储器利用率等等。

监测引擎116的集合可以将存储系统指标120存储在存储子系统108中,并且可以将存储卷指标122存储在存储子系统108中。存储系统指标120包括与存储系统102整体相关的性能相关指标,而存储卷指标122包括与各个存储卷中的每一个相关的性能相关指标。

在其他示例中,监测引擎116的集合可以将存储系统指标120和存储卷指标122存储在位于存储系统102外部的存储介质中。

监测引擎116的集合还可以存储这些存储卷110-1、110-2、110-3的存储节省指标124。对于各个存储卷中的每一个,存储节省指标124包括表示通过对各个存储卷的数据应用数据缩减而实现的存储节省量(数据大小的缩减)的指标。

存储系统指标120、存储卷指标122和存储节省指标124可以包含在存储在存储子系统108或不同存储介质中的相应数据结构中。例如,数据结构可以是表格、文件等形式。

数据缩减管理引擎104可以管理是否将数据缩减用于存储卷110-1、110-2、110-3中的任何一个。在一些示例中,数据缩减管理引擎104使用机器学习模型,包括延迟识别机器学习模型130(用于识别要触发执行数据缩减推荐过程的存储系统102中增加的延迟)和数据缩减推荐机器学习模型132(用于在由延迟识别机器学习模型130触发的数据缩减推荐过程中提供关于任何存储卷110-1、110-2或110-3是否要进行数据缩减的推荐)。

延迟识别机器学习模型130和数据缩减推荐机器学习模型132可以存储在存储器134中,该存储器可以使用存储器设备的集合(单个存储器设备或多个存储器设备)来实施。存储器134可以在存储系统102的外部,或者可以是存储系统102的一部分。

尽管图1示出了延迟识别机器学习模型130和数据缩减推荐机器学习模型132是单独的机器学习模型的示例,但是在其他示例中,延迟识别机器学习模型130和数据缩减推荐机器学习模型132可以集成到单个机器学习模型中。可替代地,延迟识别机器学习模型130和数据缩减推荐机器学习模型132可以被划分成多于两个机器学习模型。

延迟识别机器学习模型130和数据缩减推荐机器学习模型132的示例可以包括以下的任何一个或一些组合:增强树回归模型、基于距离的聚类模型、玻璃盒局部加权回归模型等等。

可以使用训练数据集136来训练延迟识别机器学习模型130,并且可以使用训练数据集138来训练数据缩减推荐机器学习模型132。训练数据集136和138可以基于与存储系统102中的存储卷上的性能工作负载相关的历史数据来得到。

一旦被训练,延迟识别机器学习模型130就可以被应用于存储系统指标120和存储卷指标122,以确定存储系统102是否正在经历不可接受的高延迟。如果工作负载所经历的总延迟超过某个指定的阈值(该阈值可以是动态变化的阈值或静态阈值),则存储系统102正经历意外的高延迟。例如,工作负载的总延迟可以指工作负载112-1、112-2在对存储卷110-1、110-2、110-3的数据进行操作时所经历的平均延迟。

一旦被训练,数据缩减推荐机器学习模型132就可以被用来做出关于数据缩减是否将被应用于各个存储卷中的每一个(或存储卷组)的推荐。数据缩减推荐机器学习模型132可以应用于存储系统指标120、存储卷指标122和存储节省指标124。

随着延迟识别机器学习模型130和数据缩减推荐机器学习模型132被应用而产生结果,可以持续更新训练数据集136和138。例如,管理员可以分析由延迟识别机器学习模型130和数据缩减推荐机器学习模型132产生的输出,识别某些输出是不准确的,并且可以基于这样的识别来更新训练数据集136和138,以引起延迟识别机器学习模型130和/或数据缩减推荐机器学习模型132的再训练,使得由延迟识别机器学习模型130和/或数据缩减推荐机器学习模型132产生的未来结果会更加准确。

图2是延迟识别机器学习模型130的示例的框图。延迟识别机器学习模型130使用各种特征来基于输入数据产生输出。输入数据包括存储系统指标120和存储卷指标122。由延迟识别机器学习模型130产生的输出包括高延迟指示202,以指示存储系统102正在经历高延迟。

延迟识别机器学习模型130所使用的特征包括以下内容:延迟特征204、工作负载特征206、工作负载类型特征208和配置特征210。在其他示例中,延迟识别机器学习模型130可以使用附加或替代的特征。

机器学习模型的“特征”是可以在馈送给机器学习模型的输入数据中被指派不同值的单个属性(或属性组)。机器学习模型使用该特征(或多个特征)来基于输入数据执行预测。

由延迟识别机器学习模型130使用的各种特征的值被包括在存储系统指标120和存储卷指标122中。

延迟特征204是指当对一个存储卷或多个存储卷的数据进行操作时,(多个)工作负载所经历的延迟。工作负载特征206表示工作负载的标识符(例如,名称或另一标识符)。工作负载类型特征208表示相应工作负载的工作负载类型。工作负载类型特征208可以具有第一值(第一工作负载类型)来指示不应用数据缩减的工作负载(第一工作负载类型),以及不同的第二值(第二工作负载类型)来指示应用数据缩减的工作负载(第二工作负载类型)。

配置特征210包括表示存储系统102的配置的属性集合,如处理资源106的数量、缓存107的存储容量、存储子系统108中的存储设备的数量、哪些存储卷是厚存储卷以及哪些是非厚存储卷等等。配置特征210的值可以包括在存储系统指标120或存储卷指标122中,或者包括在不同的信息集中。

在图2的示例中,存储系统指标120包括作为时间函数的延迟值,如曲线图212所表示。由曲线图212表示的延迟值表示当对存储子系统108中的数据进行操作时系统中的工作负载所经历的延迟。

存储卷指标122可以类似地包括作为时间的函数的延迟值,其表示在各个存储卷中的每一个上操作的(多个)工作负载所经历的延迟。

存储系统指标120和存储卷指标122可以包括附加或替代的指标。

如果延迟识别机器学习模型130基于输入数据(包括存储系统指标120和存储卷指标122)确定存储系统102正在经历高延迟,则由延迟识别机器学习模型130输出高延迟指示202(例如,高延迟指示符(如标志)被设置为第一值)。另一方面,如果延迟识别机器学习模型130基于输入数据确定存储系统102没有经历高延迟,则延迟识别机器学习模型130不输出高延迟指示202(例如,高延迟指示符被设置为第二值)。

提供给延迟识别机器学习模型130的输入数据(包括存储系统指标120和存储卷指标122)可以是针对预定义持续时间的指定时间间隔。在一些示例中,可以在每个指定的时间间隔调用延迟识别机器学习模型130,以确定存储系统102在该时间间隔中是否经历高延迟。

注意,计算环境(例如,云环境、数据中心等)可以包括多个存储系统。延迟识别机器学习模型130被应用于与多个存储系统中的每一个相关的输入数据,以用于识别哪个存储系统正在经历高延迟。

为了训练延迟识别机器学习模型130,训练数据集136包括特征204、206、208和210的多个集合(例如,向量),其中,特征204、206、208和210的每个集合可以被指派高延迟标记(该标记被设置为指示高延迟的第一值和指示非高延迟的第二值)。标记可以由人类用户、程序或机器来指派。使用被标记的训练数据集来训练延迟识别机器学习模型130被称为监督机器学习。在其他示例中,可以使用无监督机器学习来训练延迟识别机器学习模型130,无监督机器学习是由延迟识别机器学习模型130基于识别未被标记的数据中的模式来学习。

图3是数据缩减推荐机器学习模型132的示例的框图。数据缩减推荐机器学习模型132使用各种特征来基于输入数据(包括存储系统指标120、存储卷指标122和存储节省指标124)产生输出。

数据缩减推荐机器学习模型132所使用的特征包括以下内容:处理器利用率特征302、工作负载特征304、工作负载类型特征306、重复数据删除时间特征308和压缩时间特征310。在其他示例中,数据缩减推荐机器学习模型132可以使用附加或替代的特征。在其他示例中,数据缩减推荐机器学习模型132可以使用附加或替代的特征。

延迟识别机器学习模型130所使用的各种特征的值包括在存储系统指标120、存储卷指标122和存储节省指标124中。

处理器利用率特征302是指处理资源106的利用率。在进一步的示例中,数据缩减推荐机器学习模型132也可以使用其他资源相关的特征,如与缓存存储器107的利用率相关的特征等等。

重复数据删除时间特征308是指工作负载对存储卷中的数据(已经存储在存储卷中或者在存储在存储卷中之前)执行重复数据删除所用的时间。压缩时间特征310是指工作负载对存储卷中的数据执行压缩所用的时间。数据缩减推荐机器学习模型132可以使用重复数据删除时间特征308和压缩时间特征310(如在存储系统指标120和/或存储卷指标122中)的值来确定执行重复数据删除和/或数据压缩涉及多少时间,以及通过重复数据删除和/或数据压缩实现的存储节省(如存储节省指标124中所指示的)是否能证明继续使用对应的数据缩减是合理的。

由数据缩减推荐机器学习模型132基于输入数据产生的输出包括关于是否要对每个存储卷110-1、110-2、110-3的数据应用数据缩减(例如,数据压缩和/或重复数据删除)的推荐312。例如,响应于检测到对给定存储卷的数据应用的数据缩减无效,由数据缩减推荐机器学习模型132提供的推荐312可以指示给定存储卷将从厚存储卷(可以应用数据缩减)转换为非厚存储卷(不应用数据缩减)。一旦给定存储卷被转换为非厚存储卷,在给定存储卷上执行的任何工作负载将不会对存储在给定存储卷中的数据应用数据缩减。

为了训练数据缩减推荐机器学习模型132,训练数据集138包括特征302、304、306、308和310的多个集合(例如,向量),其中,特征302、304、306、308和310的每个集合可以被指派非厚存储卷标记(该标记被设置为第一值以指示给定特征集合的存储卷将被配置为不应用数据缩减的非厚存储卷,并且被设置为第二值以指示给定特征集合的存储卷将被配置为可以应用数据缩减的厚存储卷)。标记可以由人类用户、程序或机器来指派。使用被标记的训练数据集来训练数据缩减推荐机器学习模型132被称为监督机器学习。在其他示例中,可以使用无监督机器学习来训练数据缩减推荐机器学习模型132,无监督机器学习是由数据缩减推荐机器学习模型132基于识别未被标记的数据中的模式进行的学习。

在一些示例中,一旦被训练,数据缩减推荐机器学习模型132的处理任务可以根据图4进行。输入数据(包括存储系统指标120、存储卷指标122和存储节省指标124)可以是针对指定的时间间隔,该时间间隔可以与延迟识别机器学习模型130已经识别出高延迟的时间间隔相同。

数据缩减推荐机器学习模型132基于输入数据(存储系统指标120、存储卷指标122和存储节省指标124)确定(在402处)存储系统102的性能降低(例如,高延迟)是否与资源争用(如对处理资源106的争用)有关。存储系统的性能降低与资源争用之间的这种关系可以基于指示高处理资源使用的处理器利用率特征302的值。

如果存储系统102的性能降低与资源争用无关,则该过程不继续。

然而,如果存储系统102的性能降低与资源争用有关,则数据缩减推荐机器学习模型132确定(在404处)表示存储系统102中不同活动的相应贡献的系数。这些系数可以包括表示由工作负载(例如,112-1、112-2)消耗的处理资源106的第一部分(例如,第一百分比)的第一系数,以及表示由后台活动消耗的处理资源106的第二部分(例如,第二百分比)的第二系数。“后台活动”可以指存储系统102的任何活动,这些活动中的指标是由监测引擎116的集合在存储系统级收集的,而不将指标分摊给存储系统102的多个存储卷(例如,110-1、110-2、110-3)。后台活动的示例包括重复数据删除、数据压缩以及由存储系统102执行的任何维护/管理活动。尽管重复数据删除和数据压缩被应用于存储卷的数据,但是在一些示例中,监测引擎116的集合不在各个存储卷级收集重复数据删除和数据压缩的性能相关指标。

收集这些系数是为了确定数据缩减推荐机器学习模型132是否要继续进行其进一步的处理。基于第一系数和第二系数,数据缩减推荐机器学习模型132确定(在406处)工作负载消耗是否大于处理资源106的某个指定阈值。例如,指定的阈值可以是处理资源106的阈值百分比(例如,30%、40%、50%、60%、70%等)。如果工作负载消耗大于处理资源106的某个指定阈值,则数据缩减推荐机器学习模型132继续进行进一步的处理。

然而,如果工作负载没有消耗大于处理资源106的指定阈值,则数据缩减推荐机器学习模型132不继续进行进一步的处理,因为对于后台活动而言,没有消耗相对大份额的处理资源106的存储卷级指标可用。由于数据缩减推荐机器学习模型132的处理目标是做出关于是否将对每个存储卷应用数据缩减的推荐,所以当相对大份额的处理资源106被后台活动消耗时执行这样的推荐不会显著提高存储系统102的性能。换句话说,对于数据缩减推荐机器学习模型132来说,为了产生会显著提高存储系统102的性能的推荐(例如,存储系统102的延迟可以被减少某一指定量以上),工作负载应消耗相对大份额的处理资源106。

在监测引擎116的集合确实在存储卷级收集重复数据删除和数据压缩的性能相关指标的示例中,可以省略任务404和406。

如果工作负载消耗大于处理资源106的某个指定阈值,则数据缩减推荐机器学习模型132确定(在408处)存储系统102中的每个厚存储卷的处理资源使用的原因。注意,不必考虑非厚存储卷,因为不对这样的存储卷应用数据缩减,因此这些存储卷不会成为通过移除数据缩减来减少处理资源负载的候选。

数据缩减推荐机器学习模型132使用存储卷指标122中的工作负载类型特征306的值来确定相应的厚存储卷上的(多个)工作负载是第一工作负载类型(不应用数据缩减)还是第二工作负载类型(应用数据缩减)。如果相应厚存储卷上的(多个)工作负载是第二工作负载类型,则相应厚存储卷被识别(在410处)为转换为非厚存储卷的候选。如果在相应的厚存储卷上存在具有混合工作负载类型的多个工作负载(一些应用数据缩减,一些不应用数据缩减),则数据缩减推荐机器学习模型132可以确定是否大多数工作负载(或者超过指定阈值的数量的工作负载)是第二工作负载类型,如果是,则数据缩减推荐机器学习模型132可以将相应的厚存储卷识别为转换为非厚存储卷的候选。

数据缩减推荐机器学习模型132然后确定(在412处)能够归因于所识别的候选厚存储卷(如在410所识别的)对处理资源106的使用的贡献。该确定(在412处)基于存储卷指标122中包括的指标,该指标包括存储卷级的性能相关指标(如处理资源的使用)。

基于所确定的贡献,数据缩减推荐机器学习模型132可以对候选厚存储卷进行排名(在414处)。与对处理资源106的使用贡献较大相关联的第一候选厚存储卷的排名高于与对处理资源106的使用贡献较小相关联的第二候选厚存储卷。

数据缩减推荐机器学习模型132然后可以为排名前N(N≥1)的候选厚存储卷中的每一个确定(在416处)该候选厚存储卷是否应被转换为非厚存储卷。

在其他示例中,不执行存储卷的排名,在这种情况下,数据缩减推荐机器学习模型132可以将任务416应用于存储系统102中的所有存储卷。

对候选厚存储卷是否要被转换为非厚存储卷的确定是基于可以通过应用数据缩减来实现的空间节省,这可以从存储节省指标124中得到。更具体地,数据缩减推荐机器学习模型132确定由于对候选厚存储卷应用数据缩减而实现的存储空间节省是否满足标准,例如,确定存储在候选厚存储卷中的数据大小相对于应用于候选厚存储卷的(多个)工作负载的数据大小(这可以表示为例如“数据缩减比”)是否小于指定的阈值。例如,数据缩减比被表示为1:1.x阈值,其中,“1”表示存储在候选厚存储卷中的数据大小,而“1.x”表示应用于候选厚存储卷的(多个)工作负载的数据大小。“x”的值可以如由用户或另一个实体来指定。在一些示例中,x被设置为3、4、5或其他值。

如果1:1.x小于指定的阈值,则意味着数据缩减将存储的数据量减少了足够的量来证明对候选厚存储卷应用数据缩减是合理的。另一方面,如果1:1.x超过(大于或等于)指定的阈值,则意味着数据缩减没有将存储的数据量减少足够的量来证明对候选厚存储卷应用数据缩减是合理的。

基于该确定(在416处),数据缩减推荐机器学习模型132产生(在418)将被转换为非厚存储卷的所识别厚存储卷(单个识别的厚存储卷或多个识别的厚存储卷)的列表。所识别的厚存储卷的列表可以由数据缩减管理引擎104发送到存储系统102,该存储系统可以将列表中的每个厚存储卷转换为非厚存储卷。可替代地,所识别的厚存储卷的列表可以由数据缩减管理引擎104发送给管理员,管理员可以将所识别的(多个)厚存储卷重新配置为(多个)非厚存储卷。

图5是存储有机器可读指令的非暂态机器可读或计算机可读存储介质500的框图,所述机器可读指令在执行时使计算机系统执行各种任务。

机器可读指令包括资源争用识别指令502,用于识别对存储系统中的资源的资源争用。在一些示例中,资源包括以下各项中的任何一项或某种组合:处理资源的集合、存储器资源的集合、通信资源的集合、I/O资源的集合、程序资源的集合、虚拟资源的集合等等。

在一些示例中,可以通过对包括存储系统和存储卷的性能相关指标的输入数据应用第一机器学习模型(例如图1的延迟识别机器学习模型130)来执行对存储系统中的资源的资源争用的识别。在一些示例中,机器学习模型的特征包括延迟指标(例如,图2中的204)、工作负载的集合的工作负载信息(例如,图2中的206和208)、以及存储系统的配置信息(例如,图2中的210)。

机器可读指令包括工作负载及数据缩减确定指令504,以确定采用数据缩减的工作负载集合(collection of workloads)(或等效地,“工作负载集合(workloadcollection)”)正在消耗资源。该确定可以基于工作负载信息,该工作负载信息包括工作负载的标识符和工作负载类型,它们可以包括在例如存储系统指标120和存储卷指标122中。

机器可读指令包括存储卷相对贡献识别指令506,用于识别能够归因于存储系统中的存储卷的对资源消耗的相对贡献。采用数据缩减的工作负载的集合是对存储卷的数据执行的。

机器可读指令包括存储空间节省确定指令508,用于确定由于对存储卷中的给定存储卷应用数据缩减而实现的存储空间节省是否满足标准。在一些示例中,存储空间节省是否满足标准的确定包括确定存储在给定存储卷中的数据大小相对于应用于给定存储卷的工作负载的数据大小(例如,1:1.x或另一数据缩减比)是否小于指定阈值。

机器可读指令包括数据缩减指示指令510,以响应于确定给定存储卷的存储空间节省不满足标准,指示不对给定存储卷应用数据缩减。在一些示例中,指示不对给定存储卷应用数据缩减包括将给定存储卷从能够应用数据缩减的第一类型存储卷转换为不应用数据缩减的第二类型存储卷。

在一些示例中,采用数据缩减的工作负载的集合正在消耗资源的确定、能够归因于存储系统中的存储卷的对资源消耗的相对贡献的识别、以及存储空间节省是否满足标准的确定是基于第二机器学习模型(例如,图1的数据缩减推荐机器学习模型132)的应用来执行的。第二机器学习模型的特征包括资源利用率指标(例如,图3中的302)、工作负载的集合的工作负载信息(例如,图3中的304和306)、以及应用数据缩减所花费的时间(例如,图3中的308和310)。

在一些示例中,响应于确定由于对给定存储卷应用数据缩减而实现的存储空间节省满足标准,机器可读指令允许在将数据存储到给定存储卷时,对给定存储卷继续应用数据缩减。

在一些示例中,机器可读指令根据能够归因于存储卷的对资源消耗的相对贡献对存储卷进行排名。根据该排名,为其提供指示的给定存储卷是相对于存储卷中的另一存储卷而言排名更高的存储卷。

在一些示例中,机器可读指令确定包括工作负载的集合的工作负载是否消耗大于资源的指定阈值量,其中,相对贡献的识别、存储空间节省是否满足标准的确定、以及所述指示是响应于确定包括工作负载的集合的工作负载消耗大于资源的指定阈值量而执行的。

图6是包括一个硬件处理器602(或多个硬件处理器)的系统600的框图。硬件处理器可以包括微处理器、多核微处理器的核、微控制器、可编程集成电路、可编程门阵列、或另一硬件处理电路。

系统600包括存储介质604,该存储介质存储可在硬件处理器602上执行以执行各种任务的机器可读指令。可在硬件处理器上执行的机器可读指令可以指代可在单个硬件处理器上执行的指令或可在多个硬件处理器上执行的指令。

存储介质604中的机器可读指令包括资源争用识别指令606,用于识别对存储系统中的资源的资源争用。

存储介质604中的机器可读指令包括存储卷识别指令608,用于在存储系统中识别工作负载应用数据缩减的存储卷。在一些示例中,所识别的存储卷是厚存储卷,其不同于不允许数据缩减的非厚存储卷。

存储介质604中的机器可读指令包括存储空间节省确定指令610,用于基于将机器学习模型应用于包括与存储系统和各个存储卷相关的性能相关指标的输入数据,确定由于对所识别的存储卷中的给定存储卷应用数据缩减而实现的存储空间节省是否满足标准。

存储介质604中的机器可读指令包括数据缩减指示指令612,用于响应于确定给定存储卷的存储空间节省不满足标准,指示不对给定存储卷应用数据缩减。

在一些示例中,工作负载应用数据缩减的存储卷的识别是从一组更大的存储卷中进行的,该组更大的存储卷包括不应用数据缩减的其他存储卷。

图7是过程700的流程图,该过程可以由例如数据缩减管理引擎104来执行。

过程700包括从多个存储系统中识别(在702处)存在对存储系统的资源的资源争用的存储系统。

过程700包括在存储系统中识别(在704处)工作负载应用数据缩减的存储卷,其中,数据缩减包括数据压缩和重复数据删除中的一个或多个。

过程700包括基于将机器学习模型应用于包括与存储系统和各个存储卷相关的性能相关指标的输入数据,确定(在706处)由于对所识别的存储卷中的给定存储卷应用数据缩减而实现的存储空间节省是否满足标准,其中,机器学习模型的特征包括资源利用率指标、工作负载的集合的工作负载信息以及应用数据缩减所花费的时间。

过程700包括,响应于确定给定存储卷的存储空间节省不满足标准,将给定存储卷从第一类型存储卷转换(在708处)为第二类型存储卷,其中,对于第一类型存储卷允许数据缩减,而对于第二类型存储卷不允许数据缩减。

存储介质(例如,图5中的500或图6中的604)可以包括以下各项中的任何一项或某种组合:半导体存储器设备,比如动态或静态随机存取存储器(DRAM或SRAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)和闪速存储器;磁盘,如固定盘、软盘和可移动盘等;另一种磁介质,包括磁带;光学介质,如光盘(CD)或数字视频盘(DVD)等;或另一类型的存储设备。注意,上文讨论的指令可以在一个计算机可读或机器可读存储介质上提供,或者可替代地,可以在分布在具有可能多个节点的大型系统中的多个计算机可读或机器可读存储介质上提供。这种一个或多个计算机可读或机器可读存储介质被认为是物品(或制品)的一部分。物品或制品可以指任何制造的单个部件或多个部件。一个或多个存储介质可以位于运行机器可读指令的机器中、或者位于远程站点处,可以通过网络从所述远程站点下载机器可读指令以供执行。

在前述描述中,阐述了许多细节以使得理解本文中所公开的主题。然而,可以在没有这些细节中的一些细节的情况下实践实施方式。其他实施方式可以包括上文所讨论的细节的修改和变化。所附权利要求旨在覆盖这样的修改和变化。

相关技术
  • 神经网络的训练方法、图像分割方法、装置、设备及介质
  • 基于手部皮肤纹理信息解锁AR设备的方法、装置及AR设备
  • 一种地形纹理处理方法、装置、计算机设备及可读存储介质
  • 排序模型的生成方法、搜索结果的排序方法、装置及设备
  • 词表生成方法、文本分类方法、装置、设备及存储介质
  • 纹理图像分割方法、生成方法、装置及设备
  • 眼部纹理图像生成方法、纹理贴图方法、装置和电子设备
技术分类

06120116522836