[发明专利]超大维表的切分与表连接方法无效
申请号: | 201010142719.0 | 申请日: | 2010-04-02 |
公开(公告)号: | CN102214176A | 公开(公告)日: | 2011-10-12 |
发明(设计)人: | 甘亮;李爱平;贾焰;韩伟红;刘健;金鑫 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京泛华伟业知识产权代理有限公司 11280 | 代理人: | 王勇 |
地址: | 410073 湖南*** | 国省代码: | 湖南;43 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 超大 切分 连接 方法 | ||
技术领域
本发明涉及数据库领域及数据分析领域,特别涉及一种超大维表的切分与表连接方法。
背景技术
数据处理是计算机研究领域的一个重要方向。根据数据的存在形态,数据处理分为对静态数据的处理和对动态数据(即数据流)的处理。静态数据处理以数据为中心,整个数据集存储在一个庞大的、相对稳定的中央存储介质中,并随时准备接受随机到来的用户数据请求(即“查询”)。在数据集的生命周期内,绝大部分数据是稳定不变的,而频繁变化的是用户随时可能提交的查询。数据库管理系统、信息检索系统、数据仓库系统等多种应用中都采用了静态数据处理的处理方式。但在某些应用中,如互联网管理系统、证券交易系统、电信系统、金融交易系统,数据本身具有高度流动性,而用户查询则相对稳定,这就使得这些应用的数据处理不再是对静态数据的处理,而是对动态数据的处理。在对动态数据进行处理时,由于所要处理的对象是在线的、持续的高速数据流,且因为存储空间的限制,所接收到的数据不可能完全保存到存储器中,同时又必须不间断、无延迟地处理这些数据流,以获得实时处理结果,因此,对静态数据的处理方式并不适合在动态数据处理过程中使用,动态数据处理需要采用新的数据结构与计算方法。
传统的关系型数据库系统主要面向基本的、日常的事务处理,如银行的交易事务,因此也被称为联机事务处理系统(On-Line TransactionProcessing,简称OLTP),但对于如何利用已有的海量数据提取对企业决策分析有用的信息(即分析处理)的支持一直不能令人满意,因此,由关系数据库之父E.F.Codd于1993年提出了OLAP(联机分析处理,On-LineAnalytical Processing),OLAP是使分析人员、管理人员或执行人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业维特性的信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是“维”这一概念,因此OLAP也可以说是多维数据分析工具的集合。与传统的关系型数据库中所采用的联机事务处理OLTP相比,OLAP主要应用在数据仓库系统中,它能够支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。
对数据流的处理与OLAP原本是两个相互独立的概念,但在实时数据多维分析领域中,如实时网络安全监控数据分析、实时银行交易记录分析,两者得到了紧密的结合。由于数据流本身具有快速变化、海量和潜在无限的特点,而在联机分析处理时又需要对数据做大量的操作,影响了数据流处理的实时性,因此,在现有技术中,本领域技术人员提出了采用数据流立方体(StreamCube)来提高查询速度,以克服数据流海量与实时性之间的矛盾。所述的数据流立方体是指对数据流数据建立的数据立方体(Cube),它由多个预定义的数据流聚集查询结果组成,而其中的数据立方体则是一种能快速分析数据的数据结构,它允许从多维对数据加以建模和观察。
在现有技术中,对数据流立方体的构建主要包括以下步骤:将所接收到的数据流与维表进行表连接;对表连接后的结果做聚集查询;存储聚集查询后的结果。在构建数据流立方体时之所以要将数据流与维表做表连接是因为数据流数据是单层次、单粒度的,通过数据流元组与维表连接可获取多层次、多粒度的详细属性信息。由于数据流表连接是构建数据流立方体的必要步骤,因此,提高数据流表连接效率将有助于提高数据流立方体的生成效率。
现有技术中存在多种数据流表连接方法,如哈希连接(Hash join)、嵌套循环连接(Nested-Loop Join)和排序合并连接(Sort-Merge join)。这些现有方法有各自的应用范围,但也存在各自的缺陷。如哈希连接方法在数据流系统的表连接中,驻入内存的表为维表,当维表大于内存限制时,需要反复地读取磁盘中维表的剩余数据,I/O开销过大。当数据流速率达到一定程度时,可能会使数据流中的数据未能及时连接处理而被丢弃,导致最终结果不正确,或只能得到近似的结果。维表的规模越大,这一问题越发突出。
发明内容
本发明的目的是克服现有的数据流表连接方法I/O开销大,实时性较差的缺点,从而提供一种超大维表连接方法。
为了实现上述目的,本发明提供了一种超大维表的切分方法,包括:
步骤1)、从所述超大维表的各个表项中提取一层次的维的一个属性值以及与该属性值所对应的连接键的值域范围;
步骤2)、将所述层次的维中的所有属性值以及与各个属性值相对应的连接键的值域范围保存在一子表中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010142719.0/2.html,转载请声明来源钻瓜专利网。