管理可单独访问的数据单元的存储器制造技术

技术编号:5469610 阅读:210 留言:0更新日期:2012-04-11 18:40
提供一种用于管理数据的方法,该方法包括:接收可单独访的数据单元,每个数据单元由键值来识别;存储多个数据块,至少一些块中的每一个是通过组合多个所述数据单元而生成的;以及提供包括用于每个所述块的条目的索引。一个或多个条目基于所提供的键值使能包括数据单元的块的位置,该数据单元与包括所提供的键值的键值范围对应。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及管理可单独访问的数据单元的存储器
技术介绍
数据库系统可以用多种格式中任意一种存储数据或"记录"的可单独访问(individually accessible)单元。每个记录可以对应诸如信用卡交易这样的 逻辑实体,并且典型地具有用于唯一识别该记录的关联的主键(primary key)。该记录可以包括与记录格式的各个字段(field)相关联的多个值。所 述记录可以存储在一个或多个文件中(例如,平面文件或诸如XML文件这 样的结构数据文件)。在压缩的数据库系统中,记录中的单独记录或值可以 在存储时压缩,并在访问时解压缩,以降低系统的存储要求。
技术实现思路
在一个方面, 一般来说,用于管理数据的方法包括接收可单独访问的 数据单元,每个数据单元由键值来识别(identify);存储多个数据块,至少 一些块中的每一个是通过组合多个所述数据单元而生成的;以及提供包括用 于每个所述块的条目(entry)的索引,其中, 一个或多个条目基于所提供的 键值使能包括数据单元的块的位置,该数据单元与包括所提供的键值的键值 范围对应。在另一个方面, 一般来说,用于管理数据的系统包括用于接收可单独 访问的凝:据单元的装置,每个数据单元由4定值来识别;用于存储多个数据块 的装置,至少一些块中的每一个是通过组合多个所述邀:据单元而生成的;以 及用于提供包括用于每个所述块的条目的索引的装置,其中, 一个或多个条 目基于所提供的键值使能包括数据单元的块的位置,该数据单元与包括所提 供的键值的键值范围对应。在再一个方面, 一般来说,存储在计算机可读介质上的用于管理数据的 计算机程序,包括用于使计算机执行以下步骤的指令接收可单独访问的数据单元,每个数据单元由4建值来识别;存储多个数据块,至少一些块中的每 一个是通过组合多个所述数据单元而生成的;以及提供包括用于每个所述块 的条目的索引,其中, 一个或多个条目基于所提供的键值使能包括数据单元 的块的位置,该数据单元与包括所提供的键值的键值范围对应。 这些方面可以包括一个或多个下列特征。至少一些块是通过基于所述键值的定义的顺序(defined order)来组合 所述数据单元而生成的。所述定义的顺序是字母顺序(alphabetical )。 所述定义的顺序是数字顺序(numerical )。各个块是从数据单元的各个集合生成的,并且这些集合根据定义的顺序 对应于无重叠的键值范围。索引中的 一个或多个条目识别与对应块从其生成的数据单元对应的键 值范围。所述键值范围由包括键值范围的至少一个极值的信息来识别。 所述键值范围由来自索引中第一条目的第一极值和来自索引中第二条目的第二极值来识别。所述键值范围由包括与对应块从其生成的数据单元相关联的键值的至少一个极值的信息来识别。所述键值范围由来自索引中第一条目的第一极值和来自索引中第二条目的第二极值来识别。索引中至少一些条目中的每一个识别对应块的存储位置。 通过组合多个数据单元生成块包括压缩数据单元的集合。 解压缩通过压缩数据单元的集合而生成的块包括处理整个块。 所述数据单元是每个都具有一个或多个与对应字段相关联的值的记录。 识别所接收的数据单元的键值对应于在被接收之前与给定数据单元相关联的一个或多个字段。识别所接收的数据单元的键值被分配给在被接收之后的数据单元。 键值被单调地(monotonically)分配。 4建值-故顺序地(sequentially)分配。 所存储的数据块被存储为块的第 一集合。 所述块的第 一集合被存储在文件中。存储一个或多个数据块的第二集合,所述第二集合中的至少一些块的每 一个是从在存储所述块的第一集合之后接收到的多个数据单元中生成的。 所述第二集合中的至少一些块是通过压缩数据单元的集合而生成的。提供包括用于第二集合中每个块的条目的索引,其中, 一个或多个条目 基于所提供的键值使能包括数据单元的块的位置,该数据单元与包括所提供 的键值的键值范围对应。处理块的第一和第二集合,以便恢复从其生成块的数据单元;根据与所述数据单元对应的键值的顺序,排序从第一集合中恢复的数据单元和从第二集合中恢复的数据单元,以生成经排序的数据单元的集合;以及生成块的第 三集合,所述第三集合中至少一些块的每一个是通过组合多个经排序的数据 单元而生成的。排序从第一集合中恢复的数据单元和从第二集合恢复的数据单元包括, 根据与所述数据单元对应的键值的顺序,合并从第一集合恢复的数据单元和从第二集合恢复的数据单元,以生成经排序的数据单元的集合。提供包括用于第三集合中每个块的条目的第三集合的索引,其中, 一个或多个条目基于所提供的键值使能包括数据单元的块的位置,所述数据单元与包括所提供的键值的键值范围对应。提供与所存储的块相关联的筛选数据结构(screening data structure),用于确定包括给定属性值的数据单元包括在从其生成所述块的数据单元中的可能性(possibility )。所述属性值包括识别单元的键值。所述筛选数据结构对于给定属性值确定包括给定属性值的数据单元肯 定没有包括(definitely not included),或者包括给定属性值的数据单元可能 被包括(possibly included )。当所述数据单元没有被包括时,所述篩选数据结构确定包括给定属性值 的数据单元可能被包括的概率(probability)取决于所述数据结构的大小基于从其生成所述块的数据单元的数目来选择筛选数据结构的大小。提供与所存储的块相关联的次级索引,用于确定包括给定属性值的数据 单元的 一个或多个键值。所述数据单元是每个都具有与对应字段相关联的一个或多个值的记录, 识别记录的键值对应于主键值,并且与次级索引相关联的属性值对应于所述辅键值。所述次级索引包括表,该表具有通过所述数据单元中的属性值而非一建值进行排序的行。这些方面可以包括一个或多个下列优点。通过压缩多个记录的块,可以实现比单独压缩记录更高的压缩度。索引的块(indexed blocks )提供在无需从压缩记录的文件开头进行解压缩的条件下访问给定记录的能力。块的大小可以选择为足够大以提供高压缩度,以及选择为足够小以限制访问块内给定记录所需的解压缩量。可以使用这样的压缩技术来压缩每个块这些技术不需要提供从压缩块的任意位置开始解压缩的能力。从而可以使用提供较大压缩度的技术。通过存储识别与从其生成对应块的记录相对应的4建值范围的索引,由于不需要具有每个记录的条目,所以索引可以被保持得很小(例如,小到足以适应相对较快的存储器)。索引条目使能可以载入(loaded)和解压缩的一个或多个块的位置,以便恢复能够用来搜索期望记录的记录集合。将签字与压缩块相关联可以表示期望记录不存在,排除了载入压缩块以搜索该记录的需要。其它特征和优点将从下面的说明以及权利要求中变得清楚。附图说明图1是用于存储和检索记录的系统的框图。图2A、 2B、 2C和2D是由系统处理和存储在系统中的数据的示意图。图3A和3B是示出对于不同的签字大小的错误肯定概率(false positiveprobability)的表。图4A和4B是用于搜索记录的过程的流程图。具体实施例方式参照图1,记录存储与检索系统100从一个或多个源接受数据本文档来自技高网...

【技术保护点】
一种用于管理数据的方法,该方法包括: 接收可单独访问的数据单元,每个数据单元由键值来识别; 存储多个数据块,至少一些块中的每一个是通过组合多个所述数据单元而生成的;以及 提供包括针对每个所述块的条目的索引,其中,一个或多个 条目基于所提供的键值使能包括数据单元的块的位置,该数据单元与包括所提供的键值的键值范围对应。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:埃弗雷姆M维施尼亚克马歇尔A伊斯曼保罗贝H马克布罗姆利约翰L理查森
申请(专利权)人:起元技术有限责任公司
类型:发明
国别省市:US[美国]

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

1