[发明专利]用于高速内存在线分析处理查询和操作的加速查询操作器有效

专利信息
申请号: 201210448474.3 申请日: 2012-09-28
公开(公告)号: CN103177062A 公开(公告)日: 2013-06-26
发明(设计)人: C·莱姆基;T·明德尼克;C·韦耶豪瑟;F·费尔伯;K-U·萨特勒 申请(专利权)人: SAP股份公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京市柳沈律师事务所 11105 代理人: 邵亚丽
地址: 德国瓦*** 国省代码: 德国;DE
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 高速 内存 在线 分析 处理 查询 操作 加速
【说明书】:

技术领域

在此描述的主题涉及数据库查询和其他操作的改进。

背景技术

多用户并行的对专用(ad-hoc)实时数据分析的需求正以与要处理的数据量增长的方式相同的方式增长。为了跟上当前经济气候的竞争,具有关于组织(例如公司)内和/或市场中的过程的最新信息以便能够迅速作出正确决定是至关重要的。因此,尽可能快地处理由分析工具生成的查询是重要的。由于对主存储器和外部存储器的访问时间之间的较大间隔,而导致完成这些需求的限制因素一般是对外部存储器的访问。解决该问题的多个方法可以包括将从外部存储器读取的数据限制为最小并且最快的可能访问,通过在主存中保存和处理数据,避免输入和输出访问,以及并行处理分布于多个适合的服务器系统(也称为“刀片”)的查询。

对主存中的所有数据的管理实际上相对快速地达到上限,特别是在数据密集型应用中,数据密集型应用例如包括但不限于商业软件解决方案,商业软件解决方案例如企业资源规划(ERP)系统。系统存储器(例如,随机访问存储器或RAM)与盘空间相比通常更昂贵并且也被系统扩展能力限制到一个上限。例如,既减少数据量(data volume)又允许高效使用单独的元组(tuple)和域(field)的适当的压缩技术是非常有用的。所处理的数据单元大小的缩减凭借CPU高速缓存的改善的使用率以及需要处理的数据量的缩减也能够提供额外的速度益处。

在线事务处理(OLTP)和在线分析处理(OLAP)是两个潜在的应用,其中高速数据处理可能是有用的。OLTP一般用于公司运营的日常业务,其中许多短小事务并行执行并且需要高吞吐量。为写访问优化的数据库,例如按行来组织数据(行存储)的典型的关系数据库管理系统(DBMS),能够适于必须为最新的非常详细的事务数据。相比之下,支持决策制定的、在较长时间段上对操作数据的分析更典型地集中于OLAP操作。一般地,OLAP查询更复杂并且结果所需的详细程度较低。在读模式中与OLAP关联的较长时间运行的事务通常仅仅访问某些列。因而,为读访问优化的数据库对于支持OLAP过程来说是有益的。

发明内容

在一个方面,一种方法包括:访问表格中压缩数据的列,其至少包括在该列中寻找一个或多个特定值而不必解压缩该列;从该列中删除最频繁出现值的所有出现并在比特向量中存储所删除值的位置;初始化包含前缀的附加数据结构,所述前缀为该列中值的每一块存储比特向量内的先前块中设置的比特总数;确定多个块中的目标块的块号,其包括检查指定行号是否位于所述前缀内;和如果所述指定行号位于所述前缀内则返回所述前缀的前缀值,如果指定行号内的比特向量中的相应比特不在所述前缀中则返回最频繁出现的值,或计算指定行在该列的索引向量中的位置。

在某些变化中,一个或多个以下特征可选地包括在任意可行的组合内。确定块号可以进一步可选地包括基于所述索引向量内的命中位置估计所述块号。所述命中位置可以可选地包括遍历该列的索引向量并且对未设置的比特的数量进行计数的结果。该列中的数据可以可选地划分为多个固定长度的块。该列中的同样的相邻值可以可选地被分组在一起以形成不同大小的块。所述分组可以可选地包括管理包括不同大小块的起始位置的第一索引向量和与不同大小块中的值相关联的第二索引向量。所述管理可以可选地包括通过仅存储每个值和该值的出现次数来将连续值分组在一起。至少部分地通过对所述比特向量中的比特进行计数,可以可选地确定压缩块和未压缩块的数目。可以可选地使用先前命中的结果,例如至少部分地通过对于尚未遍历的列的区域递增地调整先前命中的结果来使用先前命中的结果。

当前主题的实现方案包括但不限于具有一个或多个所描述的特征的系统和方法,以及包含有形地具体化的机器可读介质的物品,所述介质可操作以引起一个或多个机器(例如计算机等)产生这里描述的操作。类似地,也描述了包括一个或多个处理器和耦合到一个或多个处理器的一个或多个存储器的计算机系统。存储器,其可以包括计算机可读存储介质,可以对一个或多个程序进行包括、编码、存储等等操作,所述一个或多个程序使得一个或多个处理器执行这里描述的一个或多个操作。与当前主题的一个或多个实现方案相一致的计算机实现的方法可以由驻留在单个计算系统或多个计算系统中的一个或多个数据处理器实现。这样的多个计算系统可以经由一个或多个连接(包括但不限于通过网络(例如因特网、无线广域网、局域网、广域网、有线网等等)的连接)、经由一个或多个所述多计算机系统之间的直连,等等,进行连接并能够交换数据和/或命令或其它指令等等。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于SAP股份公司,未经SAP股份公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201210448474.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top