基于IO模式识别的IO批量处理方法、装置及存储介质制造方法及图纸

技术编号:32509890 阅读:15 留言:0更新日期:2022-03-02 10:52
提供了一种基于IO模式识别的IO批量处理方法、装置及存储介质。接收一组IO请求;对一组IO请求的场景进行IO场景模式特征提取,将所提取的IO场景模式特征与IO场景特征模式库中的场景模式特征进行相似度匹配,以对一组IO请求的场景进行IO场景模式识别,确定与IO请求的场景匹配的IO场景特征模式;其中,IO场景模式特征库是经过聚类处理后而得到的;基于所确定的IO请求场景特征模式,启动IO场景预读,将与IO请求的场景匹配的场景模式特征和IO请求对应的存储数据预读到内存缓存;响应IO请求,对预读的内存缓存进行读取,批量返回IO请求对应的数据,达到批量处理与一组IO请求对应的数据的目的。目的。目的。

【技术实现步骤摘要】
基于IO模式识别的IO批量处理方法、装置及存储介质


[0001]本公开涉及云存储领域,具体而言,涉及一种基于IO模式识别的IO批量处理方法、装置及存储介质。

技术介绍

[0002]分布式存储系统在读写数据时,通常以数据块为单位。数据块从KB到MB不等。一个文件或大块数据写入到分布式存储系统中,通常要对数据块进行再分块,并随机分布到各个服务器的磁盘中。
[0003]由于普通机械磁盘读写速度通常比较慢,特别是随机读,如果数据块在KB级别,每秒钟也就几MB。当应用层读写一个文件,通常会发起数十万个随机IO读请求到磁盘,读写一个上GB级数据,速度会相当的慢。常规的方案是加上简单的预读,但也只能在相对连续的情况下,才能略微提高速度。
[0004]针对上述的问题,目前尚未提出有效的解决方案。

技术实现思路

[0005]本公开实施例提供了一种基于IO模式识别的IO批量处理方法、装置及存储介质,以至少解决由于数据块随机分布到分布式存储系统中导致数据读写速度非常慢的技术问题。
[0006]根据本公开实施例的一个方面,提供了一种基于IO模式识别的IO批量处理方法,包括:接收一组IO请求;对所述一组IO请求的场景进行模式特征提取,将所提取的IO场景模式特征与IO场景特征模式库中的场景模式特征进行相似度匹配,以对所述一组IO请求的场景进行模式识别,确定与所述IO请求的场景匹配的IO场景的特征模式;其中,所述IO场景模式特征库是经过聚类处理后而得到的;基于所识别的场景模式,批量处理与所述一组IO请求对应的数据。
[0007]根据本公开实施例的另一方面,还提供了一种基于IO模式识别的IO批量处理装置,包括接收模块,被配置为接收一组IO请求;模式识别模块,被配置为对所述一组IO请求的场景进行模式特征提取,将所提取的场景模式特征与IO场景特征模式库中的场景模式特征进行相似度匹配,以对所述一组IO请求的场景进行模式识别,确定与所述IO请求的场景匹配的IO场景的特征模式;其中,所述IO场景模式特征库是经过聚类处理后而得到的;预读模块,被配置为将与所述IO请求的场景匹配的场景模式特征和所述IO请求对应的存储数据预读到内存缓存;响应模块,被配置为基于所识别的IO场景模式,批量处理与所述一组IO请求对应的数据。包括对预读的内存缓存进行读取,批量返回所述IO请求对应的数据。根据本公开实施例的又一方面,还提供了一种计算机可读存储介质,其上存储有程序,在所述程序运行时,使得计算机执行如上任一项所述的方法。
[0008]在本公开实施例中,通过,从而解决了由于数据块随机分布到分布式存储系统中导致数据读写速度非常慢的技术问题。
附图说明
[0009]此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
[0010]图1是根据本公开第一实施例的一种基于IO模式识别的IO批量处理方法的流程图;
[0011]图2是根据本公开第二实施例的一种基于IO模式识别的IO批量处理方法的流程图;
[0012]图3是根据本申请第三实施例的基于IO模式识别的IO批量处理方法的流程图;
[0013]图4是根据本申请第四实施例的基于IO模式识别的IO批量处理方法的流程图;
[0014]图5是根据本公开实施例的一种基于IO模式识别的IO批量处理装置的结构示意图;
[0015]图6是根据本公开实施例的一种基于IO模式识别的IO批量处理系统的结构示意图;
[0016]图7是根据本公开实施例的一种用于实现基于IO模式识别的IO批量处理方法的计算机设备的结构示意图。
具体实施例
[0017]为了使本
的人员更好地理解本公开方案,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。
[0018]需要说明的是,本公开的说明书和权利要求书及上述附图中的术语

第一



第二

等是用于区别类似的载体,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语

包括



具有

以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0019]术语定义
[0020]IO:写入数据到磁盘,或从磁盘读取数据。
[0021]分布式存储系统:分布式存储管理软件安装在多台带有大容量磁盘的服务器上,组成分布式存储系统。分布式存储管理软件负责在这些服务器之间建立存储集群,构成同一个大的存储池子,同时管理数据往各个服务器的磁盘读写,并完成数据块随机分布,以及向上层提供读写接口。
[0022]概述
[0023]在分布式海量数据备份和存储系统中,建立索引过程会发起大量的IO访问,对其进行的分析响应往往开销较大,导致系统处理速度慢,性能难以满足用户需要。这些海量IO访问实际上是有规律的,可以理解为是典型的场景化的IO;一组连续的IO访问对应一种访
问模式,往往重复出现。采用机器模式识别的方法,通过对这种重复出现的IO模式进行特征提取和机器自动或智能的识别,对IO访问按模式分组进行批量处理和响应,能够提高IO访问的响应速度。通过本方法,可以实现IO模式识别和IO批量处理,支持海量IO模式的识别和处理。
[0024]实施例1
[0025]本公开实施例提供了一种基于IO模式识别的IO批量处理方法,如图1所示,该方法包括以下步骤:
[0026]步骤S101,IO发起模块发起IO读请求。
[0027]可以发起IO读请求的模块可以是用户业务应用程序、操作系统进程、数据计算与存储指令、文件存储指令。
[0028]步骤S102,IO活动记录模块接收IO读请求,并记录到IO数据库。
[0029]IO活动记录模块将与IO读请求对应的目标文件关联的IO信息(目标文件ID,时间,读偏移,数据块指纹,数据块位置)记录到IO读写统计数据库ioDB。
[0030]步骤S103,模式识别模块对所述IO读请求进行IO场景模式特征提取。
[0031]IO模式识别模块通过如下的时间切片方法来分析IO读请求的IO场景模式特征:
[0032](1)设定IO场景模式分析的时间窗大小,每个时间窗口为一个分析周期。本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于IO模式识别的IO批量处理方法,其特征在于,包括:接收一组IO请求;对所述一组IO请求的场景进行IO场景模式特征提取,将所提取的IO场景模式特征与IO场景特征模式库中的IO场景模式特征进行相似度匹配,以对所述一组IO请求的场景进行模式识别,确定与所述IO请求的场景匹配的IO场景特征模式,其中,所述IO场景模式特征库是经过聚类处理后而得到的;基于所确定的IO场景特征模式,批量处理与所述一组IO请求对应的数据。2.根据权利要求1所述的方法,其中,所述IO场景特征模式库是经过如下的聚类处理而得到的:对所述一组IO请求之前的一时间周期内的IO请求的场景进行模式特征提取,确定多个IO场景特征模式;采用模式识别的聚类算法,对所述多个IO场景特征模式进行聚类分析,得到所述IO场景特征模式库。3.根据权利要求2所述的方法,其中,采用模式识别的聚类算法,对所述多个IO场景特征模式进行聚类分析,得到所述IO场景特征模式库,包括:分别确定所述多个IO场景特征模式中的每一个未被归类的IO场景特征模式的特征向量到至少一个聚类中心的距离,其中,所述特征向量为相应模式的读偏移量或写偏移量值组成的向量;在所述距离皆大于预设距离门限的情况下,建立新的IO场景特征模式类,将该未被归类的IO场景特征模式归属为新建的IO场景特征模式类,并将该未被归类的IO场景特征模式的特征向量作为新的聚类中心;在所述距离小于预设距离门限的情况下,将该未被归类的IO场景特征模式归属为与所述距离相应的IO场景特征模式类。4.根据权利要求3所述的方法,其中,分别确定所述多个IO场景特征模式中的每一个未被归类的IO场景特征模式的特征向量到至少一个聚类中心的距离,包括:在不存在聚类中心的情况下,取所述多个IO场景特征模式中的任意一个模式的特征向量X1作为Z1 IO场景特征模式类的聚类中心;计算下一个模式的特征向量X2到Z1模式类的聚类中心的距离d21,其中,d21=d(X2,X1);在已有聚类中心Z1,Z2,...Zk的情况下,计算尚未归类的模式的特征向量Xi到各距离中心Zj(j=1,2,...,k)的距离dij=d(Xi,Xj),其中,i的取值范围为1至尚未归类的IO场景特征模式的个数,k为已有聚类的个数。5.根据权利要求4所述的方法,其中,在所述距离皆大于预设距离门限的情况下,建立新的IO场景特征模式类,将该未被归类的模式归属为新建的IO场景特征模式类,并将该未被归类的IO场景特征模式的特征向量作为新的聚类中心;在所述距离小于预设距离门限的情况下,将该未被归类的IO场景特征模式归属为与所述距离相应的IO场景特征模式类,包括:在不存在聚类中心的情况下,如果d21>T1,则建立新的IO场景特征模式类Z2,并将X2归属于Z2 IO场景特征模式类;如果d21<T1,则将X2归属于所述Z1 IO场景特征模式类;在已有聚类中心Z1,Z2,...Zk的情况下,如果dij>T1,则将Xi对应的IO场景特征模式作为新的IO场景特征模式类Zk+1;否则,如果diq=min(di...

【专利技术属性】
技术研发人员:陈元强蔡涛
申请(专利权)人:深圳市木浪云科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1