[发明专利]基于值的出现的表压缩有效
申请号: | 200810107938.8 | 申请日: | 2008-05-21 |
公开(公告)号: | CN101311931A | 公开(公告)日: | 2008-11-26 |
发明(设计)人: | 弗朗兹·费尔伯;冈特·拉德斯托克;安德鲁·罗斯 | 申请(专利权)人: | SAP股份公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京市柳沈律师事务所 | 代理人: | 邵亚丽 |
地址: | 德国瓦*** | 国省代码: | 德国;DE |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 出现 压缩 | ||
技术领域
本公开内容涉及数字计算机的数据处理,更具体地说,涉及基于值的出 现对表进行压缩。
背景技术
搜索引擎可以在诸如关系表之类的数据库表中搜索大量数据,以找到结 果。对于海量数据,诸如包含上百万的记录的表的组合,数据的处理可能需 要大量硬件资源。例如,可能需要大量随机存取存储器空间来存储与执行用 户请求相关的所有记录。
发明内容
这里公开的主题提供包括计算机程序产品的方法和装置,其实现与基于 值的出现对表进行压缩相关的技术。
在一个方面,生成基于字典的压缩值的列,对列进行排序,生成至少一 个比特向量以用于所述列中的至少一个,生成表示所述列中的至少一个的最 频繁出现值的出现的数量,从比特向量中去除最频繁出现值,并且存储所述 数量和所述比特向量以实现对每一个所述数量和所述比特向量所表示的数据 的存储器内搜索。所述基于字典的压缩值的列以基于列的数据库的每列的可 能值的字典为基础,并且所述值可以代表结构化的业务数据。所述排序可以 包括对列进行排序,以使得在列的顺序中排在第一的第一列具有的该第一列 的最频繁出现值比其它列的频繁出现值出现得更频繁。排序还可以包括对所 述第一列进行排序,以使得该第一列的最频繁出现值的实例位于该第一列的 一端,并且对其它列进行排序,以使得所述其它列中的至少一个的最频繁出 现值的实例朝向各个其它列的端部。比特向量中的每一个可以表示各列的最 频繁出现值,其中每个比特表示最频繁出现值是否存在。
在相关的方面,为所述列中的至少一列生成对应于数据列的最频繁出现 值的至少一个比特向量,生成表示该列的最频繁出现值的出现的至少一个数 量,从所述至少一个比特向量中去除最频繁出现值,并且存储所述数量和所 述至少一个比特向量,以实现对所述数量和所述比特向量所表示的数据的搜 索。所述向量的每个比特表示在所述列的相应位置上值是否被实例化。
在相关方面,生成表示在列的相邻行的组中频繁出现值的出现量的数量, 生成表示在所述列的行中频繁出现值被实例化的位置的向量,并且存储所述 数量和所述向量以实现对所述数量和所述向量所表示的数据的搜索。所述向 量可以省略表示相邻行的组的部分。
主题可以被实现为例如计算机程序产品(例如,有形地体现在计算机可 读介质中的源代码和编译代码)、计算机实现的方法和系统。
变化可以包括一个和多个下列特征。
列的值可以是表示结构化业务数据的值,其可以具有表的同一行中的数 据相关性。业务数据可以包括业务对象,其可以被建模为连接表的集合。
动作可以在多个硬件服务器上并行执行。例如,行可以分布在多个服务 器上,并且每个服务器可以负责压缩它的行中的数据。
可以从列中去除与向量对应的频繁出现值,例如与比特向量对应的最频 繁出现值,以生成简化列。可以替代列而存储简化列。
可以为每一列、为所有列和为列的集合的任何子集生成比特向量。
对列的值的改变可以存储在与列分离的增量缓冲器中,并且可以异步整 合所述改变。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于SAP股份公司,未经SAP股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200810107938.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:立体蒸发晒盐的盐田
- 下一篇:驱动显示面板的方法和设备