存储系统、存储管理装置、存储器、混合存储装置及存储管理方法制造方法及图纸

技术编号:14399549 阅读:60 留言:0更新日期:2017-01-11 12:46
本发明专利技术提供一种存储系统、存储管理装置、存储器、混合存储装置及存储管理方法。所述存储系统包括存储器和管理器;所述管理器接收数据写请求,确定待写入的数据页的数据类别,为数据类别不同的待写入数据页指定不同的逻辑块,向所述存储器发送数据写指令,所述数据写指令携带至少一个指定的逻辑块对应的待写入数据页;所述存储器用于接收所述数据写指令,根据所述数据写指令将所述至少一个指定的逻辑块对应的待写入数据页写入所述至少一个指定的逻辑块对应的物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。使用本发明专利技术,可有效减少SSD的物理块擦除时产生的写放大。

【技术实现步骤摘要】

本专利技术涉及存储
,特别涉及一种存储系统、存储管理装置、存储器、混合存储装置及存储管理方法
技术介绍
固态存储器(Solidstatedisk,SSD)具有高性能、低延迟、低功耗、环境适应性强等优点,同时成本也在不断降低,因此目前应用的越来越普遍,主要用作硬盘(Harddiskdrive,HDD)的缓存。由于SSD不能像HDD那样在原地进行覆盖写,而是需要擦除原来的数据,才能写入新的数据,而且SSD的读写单位为页,但擦除的单位却是物理块,所以在对SSD中的数据进行更新时,需要将更新的数据写入另外一个空闲的位置,而把原来的数据设置为无效,等到SSD满的时候再选择无效数据比较多的物理块进行擦除。SSD擦除的物理块中可能包括大量的有效页,这就需要把这些有效页的数据重新拷贝到另外的空闲位置后,再对需要擦除的物理块中的数据进行擦除,这个过程即为垃圾回收,而在垃圾回收的过程,将这些有效页的数据重新拷贝到另外的空闲位置,额外增加了数据的写入,即引起了SSD的写放大。SSD的写放大会降低SSD的性能,缩短SSD的寿命。
技术实现思路
本专利技术实施例提供SSD存储器管理装置及方法,减少SSD存储器在数据擦除过程中产生的写放大问题。本专利技术实施例第一方面提供一种存储系统,包括存储器和管理器;所述存储器包括多个物理块;所述管理器用于接收数据写请求,确定待写入数据页的数据类别,为数据类别不同的待写入数据页指定不同的逻辑块,并向所述存储器发送数据写指令,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页,所述数据写指令携带所指定的至少一个逻辑块对应的待写入数据页;所述存储器用于接收所述数据写指令,根据所述数据写指令,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。结合第一方面,在第一种可能的实现方式中,所述存储器中还预先配置物理块与逻辑块的对应关系,其中,所述每个物理块对应一个逻辑块,每个逻辑块对应至少一个物理块;则,所述管理器还用于在所述数据写指令中进一步携带所述至少一个逻辑块的信息;所述存储器在接收到所述数据写指令后,具体用于:根据所述数据写指令中的所述至少一个逻辑块的信息查询所述物理块与逻辑块的对应关系,确定所述至少一个逻辑块对应的物理块,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中。结合第一方面,在第二种可能的实现方式中,所述存储系统还包括至少一个缓存,每个缓存的容量小于或等于所述每个逻辑块的容量;所述管理器在接收数据写请求之后,具体用于:将数据类别不同的待写入数据页写入不同的缓存中,所述每个缓存中写入同一种数据类别的待写入数据页,为每个写满的缓存中的同一种数据类别的数据页指定至少一个逻辑块,向所述存储器发送数据写指令,所述数据写指令携带所述至少一个逻辑块的信息和所述至少一个逻辑块对应的待写入数据页;所述存储器在接收到所述数据写指令后,具体用于:根据所述数据写指令,为所述至少一个逻辑块分配物理块,以及将所述至少一个逻辑块对应的数据页写入所述分配的物理块中,其中,所述至少一个逻辑块中的每个逻辑块被分配的物理块为所述存储器中的空闲物理块,且所述空闲物理块在被分配之后被标记为非空闲,所述至少一个逻辑块中的每个逻辑块被分配的物理块的总容量大于或等于所述至少一个逻辑块中的每个逻辑块的容量。结合第一方面的第二种实现方式,第三种可能的实现方式中,所述存储器还用于根据所述数据写指令中的所述至少一个逻辑块的信息以及所述至少一个逻辑块被分配的物理块的信息,记录物理块与逻辑块之间的对应关系。结合第一方面的第一种可能的实现方式,或者第三种可能的实现方式,在第四种可能的实现方式中,所述管理器还用于在所述至少一个逻辑块中记录所述至少一个逻辑块对应的每个待写入数据页的逻辑地址,以及记录所述至少一个逻辑块对应的数据页的数据类别。结合第一方面的第四种可能的实现方式,在第五种可能的实现方式中,所述管理器还用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块,向所述存储器发送擦除指令,所述擦除指令携带所述待擦除的逻辑块的信息;所述存储器还用于接收所述擦除指令,根据所述擦除指令中的所述待擦除的逻辑块的信息和所述物理块与逻辑块的对应关系,确定待擦除的物理块,以及擦除所述待擦除的物理块。结合第一方面的第五种可能的实现方式,在第六种可能的实现方式中,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述管理器还用于在确定需要对已存储的数据页进行更新时,将所述已存储的数据页对应的逻辑块中记录的所述已存储的数据页的逻辑地址置为无效;所述管理器用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块具体包括:选择数据类别为热数据的逻辑块,或者无效逻辑地址数量多的逻辑块作为所述待擦除的逻辑块。结合第一方面的第五种可能的实现方式,在第七种可能的实现方式中,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述管理器用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块具体包括:选择数据类别为冷数据的逻辑块作为所述待擦除的逻辑块;所述管理器还用于在所述擦除指令携带禁止垃圾回收的指示。结合第一方面的第五种或者第六种或者第七种可能的实现方式中,在第八种可能的实现方式中,所述管理器在向所述存储器发送所述擦除指令之前,所述管理器还用于根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页,并向所述存储器发送数据迁移指令,所述数据迁移指令携带所述待迁移的数据页的信息;所述存储器还用于根据所述数据迁移指令将所述存储器中所述待迁移的数据页进行迁移。结合第一方面的第八种可能的实现方式中,在第九种可能的实现方式中,所述管理器还用于根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页具体包括:将所述待擦除的逻辑块中当前数据类别为热数据且逻辑地址有效的数据页确定为所述待迁移的数据页。第二方面,提供一种存储管理装置,应用于包括存储器的存储系统,所述存储器包括多个物理块,所述存储管理装置包括:分类模块,用于接收数据写请求,确定待写入数据页的数据类别;逻辑块管理模块,用于根据所述分类模块的分类结果,为数据类别不同的待写入数据页指定不同的逻辑块,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页;写入指令模块,用于根据所述逻辑块管理模块为所述待写入数据页指定的逻辑块,向所述存储器发送数据写指令,其中,所述数据写指令携带至少一个逻辑块对应的待写入数据页,所述数据写指令用于指示所述存储器根据所述数据写指令将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。结合第二方面,在第一种可能的实现方式中,所述数据写指令中进一步携带所述至少一个逻辑块信息;所述数据写指令具体用于指示所述存储器根据所述数据写指令中的所述至少一个逻辑块的信息查询所述存储器中预设的物理块与逻辑块的对应关系,确定所述至少一个逻辑块对应的物理块,将所述至少一个逻辑块对应的待写入数据页写入所述至少一本文档来自技高网...
存储系统、存储管理装置、存储器、混合存储装置及存储管理方法

【技术保护点】
一种存储系统,包括存储器和管理器;所述存储器包括多个物理块;所述管理器用于接收数据写请求,确定待写入数据页的数据类别,为数据类别不同的待写入数据页指定不同的逻辑块,并向所述存储器发送数据写指令,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页,所述数据写指令携带所指定的至少一个逻辑块对应的待写入数据页;所述存储器用于接收所述数据写指令,根据所述数据写指令,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。

【技术特征摘要】
1.一种存储系统,包括存储器和管理器;所述存储器包括多个物理块;所述管理器用于接收数据写请求,确定待写入数据页的数据类别,为数据类别不同的待写入数据页指定不同的逻辑块,并向所述存储器发送数据写指令,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页,所述数据写指令携带所指定的至少一个逻辑块对应的待写入数据页;所述存储器用于接收所述数据写指令,根据所述数据写指令,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。2.如权利要求1所述的存储系统,其特征在于,所述存储器中还预先配置物理块与逻辑块的对应关系,其中,所述每个物理块对应一个逻辑块,每个逻辑块对应至少一个物理块;则,所述管理器还用于在所述数据写指令中进一步携带所述至少一个逻辑块的信息;所述存储器在接收到所述数据写指令后,具体用于:根据所述数据写指令中的所述至少一个逻辑块的信息查询所述物理块与逻辑块的对应关系,确定所述至少一个逻辑块对应的物理块,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中。3.如权利要求1所述的存储系统,其特征在于,所述存储系统还包括至少一个缓存,每个缓存的容量小于或等于所述每个逻辑块的容量;所述管理器在接收数据写请求之后,具体用于:将数据类别不同的待写入数据页写入不同的缓存中,所述每个缓存中写入同一种数据类别的待写入数据页,为每个写满的缓存中的同一种数据类别的数据页指定至少一个逻辑块,向所述存储器发送数据写指令,所述数据写指令携带所述至少一个逻辑块的信息和所述至少一个逻辑块对应的待写入数据页;所述存储器在接收到所述数据写指令后,具体用于:根据所述数据写指令,为所述至少一个逻辑块分配物理块,以及将所述至少一个逻辑块对应的数据页写入所述分配的物理块中,其中,所述至少一个逻辑块中的每个逻辑块被分配的物理块为所述存储器中的空闲物理块,且所述空闲物理块在被分配之后被标记为非空闲,所述至少一个逻辑块中的每个逻辑块被分配的物理块的总容量大于或等于所述至少一个逻辑块中的每个逻辑块的容量。4.如权利要求3所述的存储系统,其特征在于,所述存储器还用于根据所述数据写指令中的所述至少一个逻辑块的信息以及所述至少一个逻辑块被分配的物理块的信息,记录物理块与逻辑块之间的对应关系。5.如权利要求2或4所述的存储系统,其特征在于,所述管理器还用于在所述至少一个逻辑块中记录所述至少一个逻辑块对应的每个待写入数据页的逻辑地址。6.如权利要求5所述的存储系统,其特征在于,所述管理器还用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块,向所述存储器发送擦除指令,所述擦除指令携带所述待擦除的逻辑块的信息;所述存储器还用于接收所述擦除指令,根据所述擦除指令中的所述待擦除的逻辑块的信息和所述物理块与逻辑块的对应关系,确定待擦除的物理块,以及擦除所述待擦除的物理块。7.如权利要求6所述的存储系统,其特征在于,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述管理器还用于在确定需要对已存储的数据页进行更新时,将所述已存储的数据页对应的逻辑块中记录的所述已存储的数据页的逻辑地址置为无效;所述管理器用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块具体包括:选择数据类别为热数据的逻辑块。8.如权利要求6所述的存储系统,其特征在于,所述管理器还用于在确定需要对已存储的数据页进行更新时,将所述已存储的数据页对应的逻辑块中记录的所述已存储的数据页的逻辑地址置为无效;所述管理器用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块具体包括:选择无效逻辑地址数量多的逻辑块作为所述待擦除的逻辑块。9.如权利要求6所述的存储系统,其特征在于,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述管理器用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块具体包括:选择数据类别为冷数据的逻辑块作为所述待擦除的逻辑块;所述管理器还用于在所述擦除指令携带禁止垃圾回收的指示。10.如权利要求6至9中任意一项所述的存储系统,其特征在于,所述管理器在向所述存储器发送所述擦除指令之前,所述管理器还用于根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页,并向所述存储器发送数据迁移指令,所述数据迁移指令携带所述待迁移的数据页的信息;所述存储器还用于根据所述数据迁移指令将所述存储器中所述待迁移的数据页进行迁移。11.如权利要求10所述的存储系统,其特征在于,所述管理器还用于根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页具体包括:将所述待擦除的逻辑块中当前数据类别为热数据且逻辑地址有效的数据页确定为所述待迁移的数据页。12.一种存储管理装置,其特征在于,应用于包括存储器的存储系统,所述存储器包括多个物理块,所述存储管理装置包括:分类模块,用于接收数据写请求,确定待写入数据页的数据类别;逻辑块管理模块,用于根据所述分类模块的分类结果,为数据类别不同的待写入数据页指定不同的逻辑块,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页;写入指令模块,用于根据所述逻辑块管理模块为所述待写入数据页指定的逻辑块,向所述存储器发送数据写指令,其中,所述数据写指令携带至少一个逻辑块对应的待写入数据页,所述数据写指令用于指示所述存储器根据所述数据写指令将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。13.如权利要求12所述的存储管理装置,其特征在于,所述数据写指令中进一步携带所述至少一个逻辑块信息;所述数据写指令具体用于指示所述存储器根据所述数据写指令中的所述至少一个逻辑块的信息查询所述存储器中预设的物理块与逻辑块的对应关系,确定所述至少一个逻辑块对应的物理块,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中。14.如权利要求12所述的存储管理装置,其特征在于,所述存储管理装置还包括:缓存写入模块,用于根据所述分类模块的分类结果,将数据类别不同的待写入数据页写入不同的缓存中,同一种数据类别的待写入数据页被写入同一缓存中,每个缓存的容量小于或等于所述每个逻辑块的容量;所述逻辑块管理模块用于为每个写满的缓存中的同一种数据类别的数据页指定一个逻辑块;所述写入指令模块具体用于根据所述逻辑块管理模块为所述待写入数据页指定的逻
\t辑块,向所述存储器发送数据写指令,所述数据写指令携带所述至少一个逻辑块的信息和所述至少一个逻辑块对应的数据页,所述数据写指令具体用于指示所述存储器为所述至少一个逻辑块分配物理块,以及将所述至少一个逻辑块对应的数据页写入所述分配的物理块,其中,所述至少一个逻辑块中的每个逻辑块被分配的物理块为所述存储器中的空闲物理块,且所述空闲物理块被分配之后被标记为非空闲,所述至少一个逻辑块中的每个逻辑块被分配的物理块的总容量大于或等于所述至少一个逻辑块中的每个逻辑块的容量。15.如权利要求13或14所述的存储管理装置,其特征在于,所述逻辑块管理模块还用于在所述至少一个逻辑块中记录所述至少一个逻辑块对应的每个待写入数据页的逻辑地址,以及记录所述至少一个逻辑块对应的数据页的数据类别。16.如权利要求15所述的存储管理装置,其特征在于,所述的存储管理装置还包括擦除指令模块,用于根据每个逻辑块对应的数据页,确定待擦除的逻辑块,向所述存储器发送擦除指令,所述擦除指令携带所述待擦除的逻辑块的信息,所述擦除指令用于指示所述存储器根据所述擦除指令中的所述待擦除的逻辑块的信息和所述存储器中设置的物理块与逻辑块的对应关系,确定待擦除的物理块,以及擦除所述待擦除的物理块。17.如权利要求16所述的存储管理装置,其特征在于,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述逻辑块管理模块还用于在确定需要对已存储的数据页进行更新时,将所述已存储的数据页对应的逻辑块中记录的所述已存储的数据页的逻辑地址置为无效;所述擦除指令模块用于确定待擦除的逻辑块具体包括:选择数据类别为热数据的逻辑块,或者无效逻辑地址数量多的逻辑块作为所述待擦除的逻辑块。18.如权利要求16所述的存储管理装置,其特征在于,所述数据类别为根据数据被访问的频率确定的冷数据和热数据;所述擦除指令模块用于确定待擦除的逻辑块具体包括:选择数据类别为冷数据的逻辑块作为所述待擦除的逻辑块;所述擦除指令模块还用于在所述擦除指令携带禁止垃圾回收的指示。19.如权利要求16或17或18所述的存储管理装置,其特征在于,所述存储管理装置还包括迁移指令模块,在所述擦除指令模块在向所述存储器发送所述擦除指令之前,所述迁移指令模块用于根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页,并向所述存储器发送数据迁移指令,所述数据迁移指令携带所述待迁移的数据页的信息,所述数据迁移指令用于指示所述存储器将所述存储器中所述待迁移的数据页进行迁移。20.如权利要求19所述的存储管理装置,其特征在于,所述迁移指令模块根据预设的迁移策略确定所述待擦除的逻辑块中待迁移的数据页具体包括:将所述待擦除的逻辑块中当前数据类别为热数据且逻辑地址有效的数据页确定为所述待迁移的数据页。21.一种存储器,其特征在于,包括:接收模块,用于接收数据写指令,所述数据写指令携带至少一个逻辑块对应的待写入数据页,所述数据写指令是由管理器在确定待写入的数据页的数据类别,并为数据类别不同的待写入数据页指定不同的逻辑块之后发送的,其中,所指定的每个逻辑块对应同一种数据类别的待写入数据页;写入模块,用于根据所述数据写指令将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中,其中,同一个逻辑块对应的待写入数据页写入至少一个物理块中,每个物理块中写入同一个逻辑块对应的待写入数据页。22.如权利要求21所述的存储器,其特征在于,所述存储器中包括预设的物理块与逻辑块的对应关系,其中,所述每个物理块对应一个逻辑块,每个逻辑块对应至少一个物理块;则,所述接收模块所接收的数据写指令中进一步携带所述至少一个逻辑块信息;在所述接收模块接收到所述数据写指令后,所述写入模块具体用于:根据所述数据写指令中的所述至少一个逻辑块的信息查询所述配置模块预先配置的所述物理块与逻辑块的对应关系,确定所述至少一个逻辑块对应的物理块,将所述至少一个逻辑块对应的待写入数据页写入所述至少一个逻辑块对应的物理块中。23.如权利要求21所述的存储器,其特征在于,所述数据写指令为所述管理器将数据类别不同的待写入数据页写入不同的缓存中,为每个写满的缓存中的同一种数据类别的数据页指定至少一个逻辑块之后发送的,其中,所述每个缓存写入同一种数据类别的待写入数据页;在所述接收模块接收到所述数据写指令后,所述写入模块具体用于:根据所述数据写指令,为所述至少一个逻辑块分配物理块,以及将所述至少一个逻辑块对应的数据页写入所述分配的物理块,其中,所述至少一个逻辑块中的每个逻辑块被分配的物理块为所述存储器中的空闲物理块,且所述空闲物理块被分配之后被标记为非空闲,所述至少一个逻辑块中的每个逻辑块被分配的物理块的总容量大于或等于所述至少一个逻辑块中的每个逻辑块的容量。24.如权利要求2...

【专利技术属性】
技术研发人员:张子刚熊劲蒋德钧
申请(专利权)人:华为技术有限公司中国科学院计算技术研究所
类型:发明
国别省市:广东;44

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

1