[发明专利]一种内存数据库OLTP&OLAP并发查询优化方法有效
申请号: | 201410198279.9 | 申请日: | 2014-05-12 |
公开(公告)号: | CN103942342B | 公开(公告)日: | 2017-02-01 |
发明(设计)人: | 张延松;张宇;王珊 | 申请(专利权)人: | 中国人民大学 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京纪凯知识产权代理有限公司11245 | 代理人: | 徐宁,孙楠 |
地址: | 100872 北京市海淀区中关*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 内存 数据库 oltp olap 并发 查询 优化 方法 | ||
技术领域
本发明涉及一种混合OLAP(分析型查询处理)和OLTP(事务型查询处理)的查询优化方法,特别是关于一种数据库管理技术领域中面向OLAP模式和负载特征的内存数据库OLTP&OLAP并发查询优化方法。
背景技术
数据库技术可以分为事务型查询处理(on-line transaction processing,OLTP)和分析型查询处理(on-line analytical processing,OLAP)两种主要类型,其中,事务型查询处理主要是对数据库中数据的增加、删除、修改操作,事务执行时间短,需要满足产ACID(原子性、一致性、隔离性、持久性)特性,需要通过复杂的并发控制机制保证事务执行的正确性;分析型查询处理主要以采用多维存储模型(星形模型或雪花形模型)的数据仓库中的多维分析处理为代表,需要通过事实表与多个维表之间的连接操作完成分组聚集计算,是一种只读的长程(long-running query)执行事务。传统的OLTP和OLAP由不同的数据库系统支持,分别采用不同的存储模型,如OLTP数据处理采用行存储模型,OLAP数据处理采用列存储模型,需要在OLTP和OLAP数据库中各自保留维表和事实表,并周期性地进行合并。当前的一个发展趋势是在内存OLAP数据库中统一地集成OLTP&OLAP功能,实现OLTP和OLAP平台的统一,支持OLAP在实时数据上的分析处理。
当前内存数据库混合OLTP&OLAP方法主要分为两种类型:通过硬件支持的snapshot机制动态隔离OLTP和OLAP事务,保证OLTP和OLAP的并发执行;通过delta表机制动态地将OLTP事务数据转移到OLAP数据库中,如Vertica(WOS、ROS、Tuple Mover)、Vectorwise(differential update mechanism)、SAP HANA (L1-delat、L2-delta、Main store机制)等。这些OLTP&OLAP并发查询处理机制主要从数据的并发访问控制的角度来解决事务与分析型查询的并发数据访问问题,而没有从OLAP模式特点和负载特点的角度来分析OLTP和OLAP事务所对应的不同数据集,即OLAP和OLTP事务在事实表和维表上的不同需求(事实表上的insert-only特性和在维表上的通用更新需求)。
从模式的角度来看,OLAP采用星形或雪花形模型,位于中心的事实表与多个维表(维表的进一步分解形成雪花形)具有不同的数据更新特点:维表上的OLTP需求包括维属性的增加(insert)、删除(delete)和修改(update),但维表具 有缓慢增长的特点,即维表上的记录数量缓慢增长,但维表上属性的更新较为频繁(如用户维表中新用户增长较为缓慢,但大量的用户更新属性的操作较为频繁),尤其是删除操作由于维表与事实表之间具有主-外键参照完整性约束条件,必须在事实表对应记录删除后才能删除维表对应的主键记录,因此维表上的删除操作很少使用,OLTP事务主要是缓慢地增加维表记录和对维表中已有记录的修改;事实表由维表外键和数值型的度量属性组成,主要用于与维表的连接操作和进行聚集计算,数据仓库的只读特性使其通常采用insert-only的更新模式,即只能增加新的事实记录而不支持对历史事实记录的修改,当数据量较大时需要周期性地将事实记录移出数据库。因此,在混合OLTP&OLAP负载中,更新操作的核心问题是事实表上的大量insert-only更新负载所产生的并发控制问题,OLAP查询在维表上的执行时间较短(主要用于生成连接用的哈希表),而在事实表上的执行时间较长,因此维表上的并发控制机制的效率对整体OLAP查询处理时间的影响并不显著。在事实表上的insert-only更新中,除并发控制之外另一个重要的问题是事实表通常采用压缩技术,需要解决更新记录原始存储结构向压缩存储结构的转换,如HANA的L1、L2delta表机制。当前大数据应用中high-velocity(高速)的更新压力要求内存数据库能够支持大量数据的连续插入负载,压缩转换机制的效率成为影响OLTP性能的关键因素。
发明内容
针对上述问题,本发明的目的是提供一种内存数据库OLTP&OLAP并发查询优化方法,该方法面向维表和事实表上不同特征的更新需求采用不同的存储和更新策略,简化存储引擎和并发控制机制的设计,提高OLAP在high-velocity更新负载时的处理能力。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民大学,未经中国人民大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410198279.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种环状刃带麻花钻头
- 下一篇:高螺旋刃带麻花钻头