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

技术编号:36846818 阅读:15 留言:0更新日期:2023-03-15 16:36
提供了一种数据存储方法和数据存储的装置。所述数据存储方法,包括:基于数据文件的第一访问属性信息,为所述数据文件分配支持多流的存储装置的多个流的第一子集的第一流标识ID;基于所述数据文件的元数据的第二访问属性信息,为所述元数据分配所述多个流的第二子集的第二流ID;以及分别基于第一流ID和第二流ID将所述数据文件和元数据写入所述存储装置的存储区域中。存储区域中。存储区域中。

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


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

技术介绍

[0002]多流(Multi

Stream)存储机制基于针对闪存装置(例如,支持多流的固态驱动器(SSD)、通用闪存(Universal Flash Storage,UFS)和嵌入多媒体卡(embedded Multi Media Card,eMMC))的特殊写特性,将具有相同更新频率的数据写入存储装置的同一块(block)中。该机制通过减少有效数据的搬移操作并减小写放大来减少或消除垃圾回收(Garbage Collection,GC)。
[0003]多流机制将具有不同更新频率的数据映射到不同的流,并使用流(stream)标识(identifier,ID)表示不同的流。
[0004]流ID的分配机制会直接影响存储装置的垃圾回收效果,当同属于一个流的所有数据具有完全相同或相近的更新频率时,多流机制能带来极大的性能提升。
[0005]因此,基于多流机制如何向数据分配准确的流ID,以保证同一流ID对应的数据的更新频率更接近进而提升GC性能,是亟待解决的问题。

技术实现思路

[0006]各种实施例提供了数据存储方法和数据存储的装置,所述数据存储方法和数据存储的装置能够更精准地为实际具有相同或相近更新频率的数据分配所述存储装置的相同的块,从而减少垃圾回收时的数据搬移操作,并延长所述存储装置的使用寿命。
[0007]根据本专利技术的示例性实施例的一方面,提供一种数据存储方法,包括:包括:基于数据文件的第一访问属性信息,为所述数据文件分配支持多流的存储装置的多个流的第一子集的第一流标识ID;基于所述数据文件的元数据的第二访问属性信息,为所述元数据分配所述多个流的第二子集的第二流ID;以及分别基于第一流ID和第二流ID将所述数据文件和元数据写入所述存储装置的存储区域中。
[0008]应用程序的开发者与内核开发者对数据更新频率的理解可能存在不同,例如,名义上具有相同更新频率的数据文件和元数据的实际更新频率可能存在较大的差异。该数据文件和元数据可因名义上具有相同的更新频率被分配相同的流ID,这会降低存储装置的垃圾回收性能。而根据本公开的实施例的数据存储方法,通过为数据文件和元数据分配多个流的不同子集可为名义上具有相同的更新频率,而实际上具有不同更新频率的数据文件和元数据分配不同的流ID。
[0009]可选地,第一访问属性信息包括以下项中的至少一个:创建信息、打开信息、修改信息、关闭信息和删除信息;第二访问属性信息包括:访问顺序、访问频率和重复访问时间间隔。
[0010]可选地,所述分配第一流ID的步骤包括:对第一访问属性信息进行聚类,基于所述
对第一访问属性信息进行聚类的结果确定第一流ID;或者基于第一访问属性信息确定所述数据文件之间的相似度,基于所述数据文件之间的相似度确定第一流ID。
[0011]根据本公开的实施例,基于数据文件之间的相似度或者数据文件对应的聚类类别,可将具有相同或者相似访问频率的数据文件存储到存储装置的相同的块中,从而可提高存储装置的垃圾回收性能。
[0012]可选地,所述分配第二流ID的步骤包括:对第二访问属性信息进行聚类,基于所述对第二访问属性信息进行聚类的结果确定第二流ID;或者基于第二访问属性信息确定所述元数据之间的相似度,基于所述元数据之间的相似度确定第二流ID。
[0013]根据本公开的实施例,基于元数据之间的相似度或者元数据对应的聚类类别,可将具有相同或者相似更新频率的元数据存储到存储装置的相同的块中,从而可提高存储的垃圾回收性能。
[0014]可选地,所述数据存储方法还包括:在文件属性表中保存第一访问属性信息;以及在元数据访问表中保存第二访问属性信息。
[0015]可选地,第一子集与第二子集不交叉。
[0016]可选地,第一流ID被嵌入在所述数据文件中,并且第二流ID被嵌入在所述元数据中。
[0017]根据本公开的实施例的另一方面,提供了一种数据存储的装置,包括:分配单元,被配置为:基于数据文件的第一访问属性信息,为所述数据文件分配支持多流的存储装置的多个流的第一子集的第一流标识ID,并基于所述数据文件的元数据的第二访问属性信息,为所述元数据分配所述多个流的第二子集的第二流ID;写入单元,被配置为:分别基于第一流ID和第二流ID将所述数据文件和元数据写入所述存储装置的存储区域中。
[0018]应用程序的开发者与内核开发者对数据更新频率的理解可能存在不同,例如,名义上具有相同更新频率的数据文件和元数据的实际更新频率可能存在较大的差异,该数据文件和元数据会因名义上具有相同的更新频率被分配相同的流ID,这会降低存储装置的垃圾回收性能。而根据本公开的实施例的数据存储的装置,通过为数据文件和元数据分配多个流的不同子集可为名义上具有相同的更新频率,而实际上具有不同更新频率的数据文件和元数据分配不同的流ID。
[0019]可选地,第一访问属性信息包括以下项中的至少一个:创建信息、打开信息、修改信息、关闭信息和删除信息;以及其中,第二访问属性信息包括:访问顺序、访问频率和重复访问时间间隔。
[0020]可选地,所述分配单元被配置为:对第一访问属性信息进行聚类,基于所述对第一访问属性信息进行聚类的结果确定第一流ID;或者基于第一访问属性信息确定所述数据文件之间的相似度,基于所述数据文件之间的相似度确定第一流ID。
[0021]根据本公开的实施例,基于数据文件之间的相似度或者数据文件对应的聚类类别,可将具有相同或者相似访问频率的数据文件存储到存储装置的相同的块中,从而可提高存储的垃圾回收性能。
[0022]可选地,所述分配单元被配置为:对第二访问属性信息进行聚类,基于所述对第二访问属性信息进行聚类的结果确定第二流ID;或者基于第二访问属性信息确定所述元数据之间的相似度,基于所述元数据之间的相似度确定第二流ID。
[0023]根据本公开的实施例,基于元数据之间的相似度或者元数据对应的聚类类别,可将具有相同或者相似更新频率的元数据存储到存储装置的相同的块中,从而可提高存储的垃圾回收性能。
[0024]可选地,所述数据存储的装置还包括:存储单元,被配置为:在文件属性表中保存第一访问属性信息;以及在元数据访问表中保存第二访问属性信息。
[0025]可选地,第一子集与第二子集不交叉。
[0026]可选地,第一流ID被嵌入在所述数据文件中,并且第二流ID被嵌入在所述元数据中。
[0027]根据本公开的实施例的另一方面,提供了一种数据存储装置,包括:至少一个处理器,被配置为至少执行以下操作:基于数据文件的第一访问属性信息,为所述数据文件分配支持多流的存储装置的多个流的第一子集的第一流标识ID,基于所述数据文件的元数据的第二访问属性信息,为所述元数据分配所述多个流的第二子集的第二流ID,以及分别基于第一流ID和本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储方法,包括:基于数据文件的第一访问属性信息,为所述数据文件分配支持多流的存储装置的多个流的第一子集的第一流标识ID;基于所述数据文件的元数据的第二访问属性信息,为所述元数据分配所述多个流的第二子集的第二流ID;以及分别基于第一流ID和第二流ID将所述数据文件和元数据写入所述存储装置的存储区域中。2.如权利要求1所述的数据存储方法,其中,第一访问属性信息包括以下项中的至少一个:创建信息、打开信息、修改信息、关闭信息和删除信息;第二访问属性信息包括:访问顺序、访问频率和重复访问时间间隔。3.如权利要求1所述的数据存储方法,其中,所述分配第一流ID的步骤包括:对第一访问属性信息进行聚类,基于所述对第一访问属性信息进行聚类的结果确定第一流ID;或者基于第一访问属性信息确定所述数据文件之间的相似度,基于所述数据文件之间的相似度确定第一流ID。4.如权利要求1或3所述的数据存储方法,其中,所述分配第二流ID的步骤包括:对第二访问属性信息进行聚类,基于所述对第二访问属性信息进行聚类的结果确定第二流ID;或者基于第二访问属性信息确定所述元数据之间的相似度,基于所述元数据之间的相似度确定第二流ID。5.如权利要求1所述的数据存储方法,其中,所述数据存储方法还包括:在文件属性表中保存第一访问属性信息;以及在元数据访问表中保存第二访问属性信息。6.如权利要求1所述的数据存储方法,其中,第一子集与第二子集不交叉。7.如权利要求1所述的数据存储方法,其中,第一流ID被嵌入在所述数据文件中,以及第二流ID被嵌入在所述元数据中。8.一种数据存储的装置,包括:分配单元,被配置为:基于数据文件的第一访问属性信息,为所述数据文件分配支...

【专利技术属性】
技术研发人员:陈忠刚
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:

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

1