用于数据存储的方法和装置制造方法及图纸

技术编号:34697353 阅读:28 留言:0更新日期:2022-08-27 16:33
一种用于数据存储的方法和装置。所述用于数据存储的方法包括:响应于对第一文件的写入消息,确定所述第一文件所属的应用程序,所述第一文件所属的文件类型及所述所属的文件类型的属性信息,其中所述所属的文件类型的属性信息为基于已响应写入消息的所述应用程序的所属的文件类型的所有文件的属性信息获得的;基于所述第一文件所属的应用程序,所述第一文件的文件类型及所述文件类型的属性信息,利用文件分类器预测所述第一文件对应的流ID,其中所述文件分类器为已训练的机器学习模型;向存储装置发送写入命令,所述写入命令携带有所述流ID,以使得存储装置将所述第一文件写入所述流ID对应的存储块中。流ID对应的存储块中。流ID对应的存储块中。

【技术实现步骤摘要】
用于数据存储的方法和装置


[0001]本申请涉及数据存储
,更具体地,涉及一种用于数据存储的方法和装置。

技术介绍

[0002]多流机制通过对向具有不同生命周期的数据分配不同的流(Stream)标识(Identity,ID),以此将数据存储在流ID对应的块存储装置的不同的块中,可以降低块存储装置的写放大因子(Write Amplification Factor,WAF),并延长块存储装置的寿命。
[0003]现有的流分配方案主要包括以下两种:
[0004]1)闪存友好文件系统(Flash Friendly File System,F2FS)
[0005]当F2FS分配流时,F2FS为文件和元数据分别分配被称为热(hot)、暖(warm)和冷(cold)的三个流。
[0006]针对文件,F2FS根据文件的后缀名,将文件划分为热数据、暖数据、冷数据三种类型,每种类型的数据对应一个流。当无法基于后缀名被划分文件的类型时,如果文件的回写(write back)的脏页数小于设定的阈值,则将该文件划分为热数据,如果文件被F2FS的垃圾回收(Garbage Collection,GC)线程搬移,则将该文件划分为冷数据。
[0007]对于元数据,F2FS将目录和普通文件的直接节点(node)分配至同一个流,间接节点被分配至另一个流,其它元数据被分配至第三个流。
[0008]应用于F2FS的流分配方案属于静态流分配方案,即当某一文件类型的文件确定了对应的流之后,该文件类型的文件对应的流将不会变化。然而文件的生命周期不仅仅依赖于文件类型,因此分流效果不佳。
[0009]2)自动流(Auto

Stream)
[0010]Auto

Stream将连续的逻辑块地址(Logic Block Address,LBA)划分为固定大小的组块(chunk),统计各组块的写入次数,基于组块的写入次数决定其被分配的流。
[0011]自动流分配流的粒度是组块,组块被设置的过小,占用内存太多;组块设置的过大,则一个chunk中可能包含多个文件,如果多个文件中的某些文件写入次数较为频繁,造成该组块的写入次数较多,则会使该组块内的其它写入不频繁的文件被分配到不适合的流。
[0012]因此,如何有效提高流分配效果是亟待解决的问题。

技术实现思路

[0013]本专利技术的目的在于提供一种用于数据存储的方法和装置,所述用于数据存储的方法和装置能够尽可能的将具有相同寿命的文件存储到相同的块,降低块存储装置的WAF。
[0014]根据本专利技术的示例性实施例,提供一种用于数据存储的方法,所述方法包括:响应于对第一文件的写入消息,确定所述第一文件所属的应用程序,第一文件所属的文件类型及所述所属的文件类型的属性信息,其中所述所属的文件类型的属性信息为基于已响应写入消息的所述应用程序的所属的文件类型的所有文件的属性信息获得的;基于所述第一文
件所属的应用程序,第一文件的文件类型及所述文件类型的属性信息,利用文件分类器预测所述第一文件对应的流ID,其中所述文件分类器为已训练的机器学习模型;向存储装置发送写入命令,所述写入命令携带有所述流ID,以使得存储装置将所述第一文件写入所述流ID对应的存储块中。
[0015]根据本公开的实施例,本申请的流ID分配方案根据写入文件所属的文件类型的属性信息为写入文件分配流ID,与文件系统的类型无关,因此可适用于不同的文件系统。此外,本申请的流ID分配方案分流的粒度为文件,从而可以避免以组块为粒度分流导致的问题。
[0016]可选地,基于所述第一文件所属的应用程序,第一文件的文件类型及所述文件类型的属性信息利用文件分类器预测所述第一文件对应的流ID包括:若所述应用程序的启动时间超过预设时间,利用文件分类器预测所述第一文件对应的流ID。
[0017]可选地,在确定所述第一文件所属的应用程序,第一文件所属的文件类型及所述所属的文件类型的属性信息之后,所述方法还包括:若所述应用程序的启动时间未超过预设时间,基于所述第一文件所属的应用程序和第一文件所属的文件类型,根据预设的流映射表,确定所述第一文件对应的流ID,其中,所述预设的流映射表指示应用程序,文件类型和流ID的对应关系。
[0018]根据本公开的实施例,由于流映射表和分类器被预先获得,因此,在运行应用程序时,分配流ID的操作可以占用较小的分流计算开销。
[0019]可选地,所述方法还包括:记录所述所属文件类型的属性信息和所述应用程序的已响应写入消息的所属的文件类型的所有文件的第一数量。
[0020]可选地,获取所述所属的文件类型的属性信息包括:若已记录所述所属的文件类型的属性信息和所述第一数量,根据所述第一文件的属性信息,更新所述所属文件类型的属性信息和第一数量;若没有记录所述所属的文件类型的属性信息和所述第一数量,将所述第一文件的属性信息记录为所属文件类型的属性信息。
[0021]根据本公开的实施例,利用训练好的机器学习模型,可为每种文件类型的写入文件动态的分配流ID,也就是说,对于某一文件类型的写入文件,不是分配固定的流ID,而是根据所述某一文件类型的属性信息为所述某一类型的写入文件分配不同的流ID,该动态流分配策略可将具有相同寿命的写入文件尽可能地分配同一流ID,从而能够降低块存储装置的WAF,提高块存储装置的寿命。
[0022]可选地,所述第一文件的属性信息包括所述第一文件的同步命令次数,同步写页数,文件大小和生命周期;所述所属的文件类型的属性信息包括所述所属文件类型的同步命令次数,同步写页数,文件大小和生命周期。
[0023]可选地,所属文件类型的同步命令次数为所述应用程序的已响应写入消息的所属的文件类型的所有文件的同步命令次数的平均值;所属文件类型的同步写页数为所述应用程序的已响应写入消息的所属的文件类型的所有文件的同步写页数的平均值;所属文件类型的文件大小为所述应用程序的已响应写入消息的所属的文件类型的所有文件的文件大小的平均值;所属文件类型的生命周期为所述应用程序的已响应写入消息的所属的文件类型的所有文件的生命周期的平均值。
[0024]根据本公开的实施例,提供了一种用于数据存储的装置,所述用于数据存储的装
置包括:确定单元,被配置为响应于对第一文件的写入消息,确定所述第一文件所属的应用程序,第一文件所属的文件类型及所述所属的文件类型的属性信息,其中所述所属的文件类型的属性信息为基于已响应写入消息的所述应用程序的所属的文件类型的所有文件的属性信息获得的;预测单元,被配置为基于所述第一文件所属的应用程序,第一文件的文件类型及所述文件类型的属性信息,利用文件分类器预测所述第一文件对应的流ID,其中所述文件分类器为已训练的机器学习模型;发送单元,被配置为向存储装置发送写入命令,所述写入命令携带有所述流ID,以使得存储装置将所述第一文件写入所述流ID对应的存储块中。
[0025]可选本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于数据存储的方法,所述方法包括:响应于对第一文件的写入消息,确定所述第一文件所属的应用程序,所述第一文件所属的文件类型及所述所属的文件类型的属性信息,其中所述所属的文件类型的属性信息为基于已响应写入消息的所述应用程序的所属的文件类型的所有文件的属性信息获得的;基于所述第一文件所属的应用程序,所述第一文件的文件类型及所述文件类型的属性信息,利用文件分类器预测所述第一文件对应的流ID,其中所述文件分类器为已训练的机器学习模型;向存储装置发送写入命令,所述写入命令携带有所述流ID,以使得存储装置将所述第一文件写入所述流ID对应的存储块中。2.根据权利要求1所述的方法,其中,基于所述第一文件所属的应用程序,所述第一文件的文件类型及所述文件类型的属性信息利用文件分类器预测所述第一文件对应的流ID包括:若所述应用程序的启动时间超过预设时间,利用文件分类器预测所述第一文件对应的流ID。3.根据权利要求2所述的方法,其中,在确定所述第一文件所属的应用程序,所述第一文件所属的文件类型及所述所属的文件类型的属性信息之后,所述方法还包括:若所述应用程序的启动时间未超过预设时间,基于所述第一文件所属的应用程序和所述第一文件所属的文件类型,根据预设的流映射表,确定所述第一文件对应的流ID,其中,所述预设的流映射表指示应用程序,文件类型和流ID的对应关系。4.根据权利要求1所述的方法,其中,所述方法还包括:记录所述所属文件类型的属性信息和所述应用程序的已响应写入消息的所属的文件类型的所有文件的第一数量。5.根据权利要求4所述的方法,其中,获取所述所属的文件类型的属性信息包括:若已记录所述所属的文件类型的属性信息和所述第一数量,根据所述第一文件的属性信息,更新所述所属文件类型的属性信息和第一数量;若没有记录所述所属的文件类型的属性信息和所述第一数量,将所述第一文件的属性信息记录为所属文件类型的属性信息。6.根据权利要求5所述的方法,其中,所述第一文件的属性信息包括所述第一文件的同步命令次数,同步写页数,文件大小和生命周期;所述所属的文件类型的属性信息包括所属文件类型的同步命令次数,同步写页数,文件大小和生命周期。7.根据权利要求6所述的方法,其中,所属文件类型的同步命令次数为所述应用程序的已响应写入消息的所属的文件类型的所有文件的同步命令次数的平均值;所属文件类型的同步写页数为所述应用程序的已响应写入消息的所属的文...

【专利技术属性】
技术研发人员:高宽张元轶马凯歌
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:

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

1