[发明专利]一种面向哈希连接的数据存储优化方法有效
申请号: | 201410199090.1 | 申请日: | 2014-05-12 |
公开(公告)号: | CN103942343B | 公开(公告)日: | 2017-03-08 |
发明(设计)人: | 张延松;张宇;王珊 | 申请(专利权)人: | 中国人民大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京纪凯知识产权代理有限公司11245 | 代理人: | 徐宁,孙楠 |
地址: | 100872 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明涉及一种面向哈希连接的数据存储优化方法,步骤选择事实表上radix哈希存储的外键属性,确定维表;设置n位radix基数,确定2n个哈希分区存储;设置2n个radix哈希分区队列;事实表和维表采用页面链表存储;页面内采用PAX列存储;记录插入时将记录的哈希分区属性值按低n位进行radix哈希,并存储于相应页面中;当某个radix哈希分区页面被记录填满后动态地申请新的页面;按连接键的哈希值直接访问指定的radix哈希分区队列,按队列中存储的页面地址访问该radix哈希分区的所有记录;全表扫描时按表的原始物理页面链接顺序访问;较小的表R和大表S进行分区存储;数据仓库中哈希连接时事实表采用列式连接方法;增加或减少radix哈希分区的位数实现哈希分区的动态增减。 | ||
搜索关键词: | 一种 面向 连接 数据 存储 优化 方法 | ||
【主权项】:
一种面向哈希连接的数据存储优化方法,其包括以下步骤:1)根据数据库模式和OLAP查询负载特征选择事实表上用于radix哈希存储的外键属性,确定与事实表连接的维表;2)对步骤1)中的事实表、维表进行radix哈希分区,并根据计算平台硬件并行计算能力设置n位的radix基数,确定2n个哈希分区存储;3)对事实表和维表分别设置2n个radix哈希分区队列,记录每个radix哈希分区页面;4)事实表和维表上的物理存储采用页面链表,在初始记录插入时初始化2n个页面,在radix哈希分区队列中记录每个radix哈希分区的页面地址;5)页面内采用PAX列存储,采用原始数据列存储,对于低势集的字符型列采用轻量字典表压缩,各列均为等长连续数据;6)事实表和维表中插入记录时,将记录的哈希分区属性值按低n位进行radix哈希,映射到对应的radix哈希分区队列,找到radix分区页面链表中的最末页面,将记录插入到该页面中;7)当某个radix哈希分区页面被记录填满后动态地申请新的页面,增加到物理页面链表中,并记录在对应的radix哈希分区队列中;8)当执行哈希连接操作时,按连接键的哈希值直接访问指定的radix哈希分区队列,按队列中存储的页面地址访问该radix哈希分区的所有记录;9)当执行全表扫描时,按表的原始物理页面链接顺序访问,跳过radix哈希分区队列结构;10)对于哈希连接操作中的维表R和事实表S进行以下处理,当R<<S时,只对较大的事实表S进行radix哈希分区存储,较小的维表R采用普通存储方式,在较小的维表R和较大的事实表S的哈希连接中,较小的维表R动态生成2n个radix哈希分区,与较大的事实表S预存储的2n个radix哈希分区进行并行哈希连接;当较小的维表R和较大的事实表S都比较大时,较小的维表R和较大的事实表S均采用radix哈希分区存储,哈希连接时在较小的维表R和较大的事实表S中选择对应的radix哈希分区进行并行连接;11)在数据仓库中,较大的事实表在radix哈希分区时采用列存储,维表根据表中字段数量、查询中访问属性的数量查询负载特点选择采用列存储或行存储,在哈希连接时事实表采用列式连接方法,通过后物化策略降低连接代价;12)当事实表和维表中的radix哈希分区数量需要调整时,增加或减少radix哈希分区的位数实现哈希分区的动态增减。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民大学,未经中国人民大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201410199090.1/,转载请声明来源钻瓜专利网。
- 上一篇:一种基于扩展UML的软件模糊自适应建模工具构造方法
- 下一篇:一种便携式纸巾
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置