基于键值存储数据的存储设备及其操作方法技术

技术编号:26969531 阅读:31 留言:0更新日期:2021-01-05 23:58
一种存储设备包括:控制器,被配置为:从主机接收多个键值对,从多个键值对中的每一个中分离键并从多个键值对中的每一个中分离值,并通过合并从多个键值对分离的多个键生成第一键流;以及非易失性存储器,被配置为存储第一键流。第一键流与从多个键值对中的每一个分离的值分开地被存储在非易失性存储器中。

【技术实现步骤摘要】
基于键值存储数据的存储设备及其操作方法相关申请交叉引用本申请要求于2019年7月5日向韩国知识产权局提交的第10-2019-0081522号韩国专利申请的优先权,其全部公开内容通过引用合并于此。
本专利技术构思涉及一种存储设备和该存储设备的操作方法,并且更具体地,涉及一种基于键值存储数据的存储设备和该存储设备的操作方法。
技术介绍
近来,已经使用了各种类型的电子设备。一些电子设备可以存储数据并且可以基于存储的数据进行操作。为此,电子设备可以包括用于存储数据的存储设备或存储系统,或者可以在与外部存储设备或存储系统进行通信的同时存储或读取数据。可以对存储设备进行各种分类。例如,存储设备可以分类为基于非易失性存储器(non-volatilememory,NVM)的存储和基于易失性存储器的存储。即使不供电,基于非易失性存储器的存储也不会丢失数据。另一方面,尽管当中断提供给基于易失性存储器的存储的电力时存储在基于易失性存储器的存储中的数据会丢失,但是基于易失性存储器的存储可以比基于非易失性存储器的存储更快地操作。例如,存储设备可以分类为块存储、文件存储和对象存储。块存储可以基于物理位置管理数据,文件存储可以基于逻辑序列管理数据。另一方面,对象存储可以基于唯一标识符管理数据。当存在大量文本数据时,块存储和文件存储很有用,而当存在大量非结构化数据(诸如声音数据、图像数据等)时,对象存储可能是有效的选择。作为对象存储的示例,存在键值存储,它基于键值存储数据。
技术实现思路
本专利技术构思提供一种有效地管理键和值的存储设备以及该存储设备的操作方法。本专利技术构思还提供一种对键和值有效地执行压缩的存储设备以及该存储设备的操作方法。根据本专利技术的示例性实施例,存储设备包括:控制器,被配置为:从主机接收多个键值对,从多个键值对中的每一个中分离键并从多个键值对中的每一个中分离值,以及通过合并从多个键值对分离的多个键生成第一键流;以及非易失性存储器,被配置为存储第一键流。第一键流与从多个键值对中的每一个分离的值分开地被存储在非易失性存储器中。根据本专利技术的示例性实施例,一种存储设备的操作方法,所述存储设备包括非易失性存储器和控制所述非易失性存储器的控制器,所述操作方法包括:控制器接收多个键值对;控制器通过从多个键值对中的每一个中提取键来生成第一键流;以及控制器将第一键流存储在非易失性存储器中。根据本专利技术的示例性实施例,一种存储设备的操作方法,所述存储设备包括非易失性存储器和控制非易失性存储器的控制器,所述操作方法包括:控制器从多个数据页生成数据流;控制器将数据流存储在非易失性存储器中;控制器生成多映射表,所述多映射表包括:非易失性存储器中的多个数据页中的第一数据页的物理地址;以及至少一个有效性比特,指示数据流中包括的多个数据页中的对应页是否有效;以及响应于多个数据页中的第一数据页无效,控制器用指示第一数据页是否有效的第一有效性比特来更新多映射表。附图说明通过以下结合附图的详细描述,将更清楚地理解本专利技术构思的实施例,在附图中:图1是示出根据本专利技术构思的示例实施例的存储系统的框图;图2是示出根据本专利技术构思的示例实施例的存储设备的框图;图3是示出根据本专利技术构思的示例实施例的包括在存储器单元阵列中的存储器块的电路图;图4是示出图3的存储器块的透视图;图5是示出根据本专利技术构思的示例实施例的存储设备的操作的概念图;图6是示出根据本专利技术构思的示例实施例的键值管理器的操作方法的流程图;图7是示出根据本专利技术构思的示例实施例的键值管理器的操作的概念图;图8是示出根据本专利技术构思的示例实施例的键值管理器的操作方法的流程图;图9A是示出根据本专利技术构思的示例实施例的块的示图,图9B是示出根据本专利技术构思的示例实施例的多映射表的示图;图10是示出根据本专利技术构思的示例实施例的存储系统随时间的操作的示图;图11是示出根据本专利技术构思的示例实施例的存储系统随时间的操作的示图;图12是示出根据本专利技术构思的示例实施例的存储系统随时间的操作的示图;图13是示出根据本专利技术构思的示例实施例的存储系统随时间的操作的示图;图14是示出根据本专利技术构思的示例实施例的存储系统随时间的操作的示图;图15是示出根据本专利技术构思的示例实施例的存储设备的框图;以及图16是示出根据专利技术构思的示例实施例的电子设备的框图。具体实施方式图1是示出根据本专利技术构思的示例实施例的存储系统的框图。参照图1,存储系统10可以包括存储设备100和主机200,并且存储设备100可以包括控制器110、数据缓冲器130和非易失性存储器(NVM)140。主机200可以通过各种接口与存储设备100通信。例如,主机200可以用应用处理器(applicationprocessor,AP)或片上系统(system-on-chip,SoC)来实现。在一个实施例中,存储设备100可以是键值存储设备或键值存储,例如,键值固态驱动器(solidstatedrive,SSD)。键值存储设备是通过使用键值对快速而简单地处理数据的设备。如本文所使用的,术语“键值对”可以指具有唯一性的键和作为与该键相对应(即,相关联)的数据的值的对子,并且可以被称为术语“元组”或“键值元组”。在键值对中,键可以用任何字符串表示,诸如文件名、统一资源标识符(uniformresourceidentifier,URI)或哈希,并且值可以是任何种类的数据,诸如图像、用户偏好文件或文档。在此,键和值的大小可以是可变的,并且例如,值的大小可以随值中包括的数据而变化。在下文中,将描述存储设备100是键值存储设备的实施例,并且在说明书中,存储设备100可以具有与键值存储设备或键值存储相同的含义。然而,存储设备100不限于键值存储设备,并且可以应用于以对象为单位管理数据的任何对象缓存系统或对象存储系统。因此,存储设备100可以以除键值对方式之外的任何方式以对象为单位管理数据。主机200可以向存储设备100发送用于写入包括键值对的数据的命令CMD,例如,写入请求或放置(put)命令,并且存储设备100可以响应于命令CMD向非易失性存储器140写入值VALUE。在一个实施例中,主机200可以向存储设备100发送包括键KEY的命令CMD,例如,读取请求或获取(get)命令,并且存储设备100可以响应于命令CMD从非易失性存储器140读取与键KEY相对应的值VALUE。控制器110可以控制非易失性存储器140,使得响应于来自主机200的写入请求,将值写入非易失性存储器140,或者使得响应于来自主机200的读取请求,读取存储在非易失性存储器140中的值。控制器110可以包括键值管理器120。键值管理器120可以接收命令CMD中包括的键值对,并且可以将都包括在键值对中的键和值彼此分开。例如,键值管理器120可以从键值对分离多个键KEY,并且还可以从键值本文档来自技高网...

【技术保护点】
1.一种存储设备,包括:/n控制器,被配置为:/n从主机接收多个键值对,/n从所述多个键值对中的每一个中分离键并从所述多个键值对中的每一个中分离值,以及/n通过合并从所述多个键值对分离的多个键生成第一键流;以及/n非易失性存储器,被配置为存储所述第一键流,/n其中,所述第一键流与从所述多个键值对中的每一个分离的值分开地被存储在所述非易失性存储器中。/n

【技术特征摘要】
20190705 KR 10-2019-00815221.一种存储设备,包括:
控制器,被配置为:
从主机接收多个键值对,
从所述多个键值对中的每一个中分离键并从所述多个键值对中的每一个中分离值,以及
通过合并从所述多个键值对分离的多个键生成第一键流;以及
非易失性存储器,被配置为存储所述第一键流,
其中,所述第一键流与从所述多个键值对中的每一个分离的值分开地被存储在所述非易失性存储器中。


2.根据权利要求1所述的存储设备,其中,
所述控制器还被配置为通过将所述多个键值对中的对应一个的键与对应于所述多个键值对中的对应一个的值的索引进行合并来生成所述第一键流。


3.根据权利要求1所述的存储设备,其中,
所述控制器响应于来自主机的压缩命令,从非易失性存储器中读取所述第一键流和第二键流;
通过合并所述第一键流和所述第二键流,生成第三键流;以及
将所述第三键流存储在所述非易失性存储器中。


4.根据权利要求3所述的存储设备,其中,
所述控制器还被配置为通过合并从所述多个键值对分离的多个值来生成值流,并将所述值流存储在所述非易失性存储器中,以及
所述值流与所述第一键流分开存储在所述非易失性存储器中。


5.根据权利要求3所述的存储设备,其中,
所述控制器通过合并所述第一键流的第一有效键和所述第二键流的第二有效键,生成所述第三键流;
所述第一有效键和所述第二有效键中的每一个对应于值中主机未向其发出擦除命令的值。


6.根据权利要求5所述的存储设备,还包括:
易失性存储器,被配置为存储哈希表和值表,所述哈希表包括所述第一键流至所述第三键流在所述非易失性存储器中的物理地址,以及所述值表包括所述值流在所述非易失性存储器中的物理地址。


7.一种存储设备的操作方法,所述存储设备包括非易失性存储器和控制所述非易失性存储器的控制器,所述操作方法包括:
所述控制器接收多个键值对;
所述控制器通过从所述多个键值对中的每一个中提取键来生成第一键流;以及
所述控制器将所述第一键流存储在所述非易失性存储器中。


8.根据权利要求7所述的操作方法,其中,
所述第一键流的生成包括:
为多个键值对中的对应一个的值生成索引;以及
将所述多个键值对中的对应一个的键与所述索引合并。


9.根据权利要求7所述的操作方法,还包括:
所述控制器通过从所述多个键值对中的每一个中提取值来生成值流;以及
所述控制器将所述值流存储在所述非易失性存储器中。


10.根据权利要求7所述的操作方法,还包括:所述控制器执行的压缩操作,所述压缩操作包括:
从所述非易失性存储器中读取所述第一键流和第二键流;
通过合并所述第一键流和所述第二键流,生产第三键流;以及
将所述第三键流存储在所述非易失性存储器中。


11.根据权利要求10所述的操作方法,其中,
生...

【专利技术属性】
技术研发人员:李昞奇S库马尔金在燽
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国;KR

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

1