[发明专利]内容派生的存储器中数据放置的方法和装置在审
| 申请号: | 201380017261.8 | 申请日: | 2013-02-22 |
| 公开(公告)号: | CN104221014A | 公开(公告)日: | 2014-12-17 |
| 发明(设计)人: | J·M·克泽尔考维茨;A·J·比弗森;S·八格拜;S·曼贾纳塔 | 申请(专利权)人: | 森普利维蒂公司 |
| 主分类号: | G06F17/30 | 分类号: | G06F17/30 |
| 代理公司: | 中国国际贸易促进委员会专利商标事务所 11038 | 代理人: | 罗银燕 |
| 地址: | 美国马*** | 国省代码: | 美国;US |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 内容 派生 存储器 数据 放置 方法 装置 | ||
技术领域
本发明涉及数据存储,且更特别地涉及在不需要使用索引的情况下基于随机访问存储器中的数据的内容来放置数据的方法和装置。
背景技术
文件系统、操作系统或其他存储管理器的一个重要工作就是在存储介质上放置数据。在何处写入数据以及何时和怎样访问数据能对性能产生重大影响。传统文件系统(例如POSIX文件系统)使用逻辑块编号(LBN)寻址来访问数据。但是,由于存储密度比访问时间增长更快,对给定的数据集大小,访问该数据所需的时间增加,因而降低了可访问性。
一种替代方法是建立具有索引的文件系统或其他存储系统以基于数据的内容本身追踪每个数据元素。索引包含记录的集合,其中每条记录可包含数据元素的加密散列(hash)(签名)、引用计数和指向数据元素在磁盘上的位置的指针。典型地,每个数据元素大小为4、8、16或256KB,因此索引中可能有数十亿条记录。对于具有数十亿条记录的商业系统,索引的大小可从64到256吉字节(gigabyte)。在这种存储系统中,对索引的操作会是至关重要的,并且经常会成为系统性能的限制因素。
因此,对不受限于现有系统的密度和/或访问限制的存储系统存在持续需求。
发明内容
提供了用于基于数据内容在计算机存储介质上放置数据从而不需要索引操作的装置和方法。更具体地,通过向数据应用强(例如加密的)散列,数据的内容本身确定应该将数据写入存储介质何处。存储介质包含随机访问存储器,以及更优选地,均匀(uniform)随机访问存储器,例如固态硬盘(SSD)存储器。
在一个实施例中,向数据元素应用强(例如加密的)散列得到签名。然后向该签名应用较弱的散列函数来为数据元素生成在存储器中的存储位置。预期较弱散列函数将多个数据元素分配至同一个存储位置,而签名包含用于定位在该位置处的特定数据元素的唯一标识符。在一个实施例中,多个较弱散列函数(每一个都提供有效的存储位置)被依次应用直到发现存储器中的空闲空间。在各种其他实施例中,所分配的存储位置可通过数据的签名和数据元素的一个或更多个属性和/或存储技术的组合(例如,不同数据类型(例如寿命短且访问频繁的对比寿命长且访问不频繁的)和存储器的具有不同性能(例如,访问等待时间(latency)、存储器寿命)特征的不同区域)来确定。在一个实施例中,存储器是持久性的。以下在本发明的各种实施例中讨论本发明的这些和其他优势。
根据本发明的一个实施例,提供了在随机访问存储器中放置数据的计算机实现的方法,所述数据包括多个数据元素且所述存储器具有多个存储位置,所述方法包括:
通过向数据元素应用强散列函数来为该数据元素生成签名;
通过向签名应用弱散列函数来为所述数据元素分配存储器中的存储位置;
其中签名包含所述数据元素的唯一标识符,而弱散列函数将复数个数据元素分配至同一个存储位置。
在一个实施例中,分配步骤包括依次应用多个弱散列函数直至定位到具有空闲空间的存储位置。
在一个实施例中,分配步骤包括选择一个或更多个不同的弱散列函数来应用到数据元素,以便优先地将数据元素分配至存储器中的存储位置的选择区域。
在一个实施例中,选择步骤基于数据元素的一个或更多个属性。
在一个实施例中,不同的弱散列函数的目标是(target)存储器中的具有不同性能特征的不同区域。
在一个实施例中,性能特征是访问时间。
在一个实施例中,选择步骤基于数据元素的预期的访问要求。
在一个实施例中,选择步骤基于存储器中的数据元素的预期的寿命。
在一个实施例中,选择步骤基于数据元素的预期的引用(reference)要求。
在一个实施例中,依次应用弱散列函数的步骤增加了存储器的空间利用率。
在一个实施例中,方法包括按照先进先出顺序将复数个数据元素放置到存储位置中。
在一个实施例中,随机访问存储器包含具有恒定的最坏情况访问时间的均匀随机访问存储器。
在一个实施例中,方法包括维持部分签名高速缓存,该部分签名高速缓存包含每个签名的比特的子集。
根据本发明的另一实施例,提供了计算机系统,包括:
具有一个或更多个处理器和存储器的服务器,该存储器存储有由该一个或更多个处理器执行的一个或更多个程序;
由该一个或更多个处理器执行的签名生成模块,用于通过向数据元素应用强散列函数来为该数据元素生成签名,其中签名包括数据元素的唯一标识符;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于森普利维蒂公司,未经森普利维蒂公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380017261.8/2.html,转载请声明来源钻瓜专利网。
- 内容再现系统、内容提供方法、内容再现装置、内容提供装置、内容再现程序和内容提供程序
- 内容记录系统、内容记录方法、内容记录设备和内容接收设备
- 内容服务系统、内容服务器、内容终端及内容服务方法
- 内容分发系统、内容分发装置、内容再生终端及内容分发方法
- 内容发布、内容获取的方法、内容发布装置及内容传播系统
- 内容提供装置、内容提供方法、内容再现装置、内容再现方法
- 内容传输设备、内容传输方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容发送设备、内容发送方法、内容再现设备、内容再现方法、程序及内容分发系统
- 内容再现装置、内容再现方法、内容再现程序及内容提供系统
- 内容记录装置、内容编辑装置、内容再生装置、内容记录方法、内容编辑方法、以及内容再生方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





