生成物化视图的方法及计算设备技术

技术编号:38557527 阅读:29 留言:0更新日期:2023-08-22 21:00
本申请提供一种生成物化视图的方法及计算设备。所述方法包括:根据历史查询表达式获取目标表达式集合;根据从所述目标表达式提取的子表达式的表达式签名从所述目标表达式集合提取公共子表达式集合;从所述公共子表达式集合中选择公共子表达式子集;根据所述公共子表达式子集创建物化视图。根据本申请的技术方案基于历史查询,根据表达式签名提取公共子表达式,对未来可能使用的物化视图进行发现和预测,使得用户作业任务中适合的查询被创建为物化视图,从而通过物化视图功能实现查询加速、节省计算资源的目标,且相比于复杂度很高的子表达式的等价性判断算法,能够保证整个系统在大部分场景下都能在有限时间内完成作业。大部分场景下都能在有限时间内完成作业。大部分场景下都能在有限时间内完成作业。

【技术实现步骤摘要】
生成物化视图的方法及计算设备


[0001]本专利技术涉及数据库
,具体涉及一种生成物化视图的方法及计算设备。

技术介绍

[0002]随着数据仓库技术的发展,物化视图的功能得到不断完善和发展,扩展到大数据和云计算等复杂分布式环境中。然而,物化视图需要占用大量的存储空间,其维护也需要消耗计算资源和网络带宽。因此,需要开发一种可以更优地创建符合用户预期的物化视图的方法。

技术实现思路

[0003]本申请旨在提供一种生成物化视图的方法及计算设备,基于历史查询对物化视图的未来使用进行预测,可以实现查询加速并节省用户的存储资源和计算资源。
[0004]根据本申请的一方面,提供一种生成物化视图的方法,包括:
[0005]根据历史查询表达式获取目标表达式集合;
[0006]根据从所述目标表达式提取的子表达式的表达式签名,从所述目标表达式集合提取公共子表达式集合;
[0007]从所述公共子表达式集合中选择公共子表达式子集;
[0008]根据所述公共子表达式子集创建物化视图。
>[0009]根据一本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种生成物化视图的方法,其特征在于,包括:根据历史查询表达式获取目标表达式集合;根据所述目标表达式的子表达式的表达式签名,从所述目标表达式集合提取公共子表达式集合;从所述公共子表达式集合中选择公共子表达式子集;根据所述公共子表达式子集创建物化视图。2.根据权利要求1所述的方法,其特征在于,所述根据历史查询表达式获取目标表达式集合,包括:从历史查询表达式中筛选周期性作业,得到目标表达式集合。3.根据权利要求1所述的方法,其特征在于,根据从所述目标表达式提取的子表达式的表达式签名,从所述目标表达式集合提取公共子表达式集合,包括:获取所述历史查询表达式的逻辑表达式;从所述逻辑表达式提取子表达式,得到子表达式集合;为每个子表达式计算表达式签名;根据所述表达式签名对所述子表达式集合做分组,根据合并规则将相同组别的子表达式合并为公共子表达式,从而得到公共子表达式集合。4.根据权利要求3所述的方法,其特征在于,从所述逻辑表达式提取子表达式,包括:后序遍历所述逻辑表达式的操作符树;根据预定规则提取遍历到的子表达式。5.根据权利要求4所述的方法,其特征在于,根据预定规则提取遍历到的子表达式,包括:当遍历到的子表达式是连接操作符时,将所述子表达式提取出来;和/或当遍历到的子表达式是聚合操作符时,将所述子表达式提取出来,且忽略后面遍历到的任何操作符,直到重新遍历到叶子操作符;和/或当遍历到的子表达式是投影或过滤操作符时,如果在之前曾遍历过连接操作符或聚合操作符,则将所述子表达式提取出来。6.根据权利要求3所述的方法,其特征在于,为每个子表达式计算表达式签名包括将所述子表达式的过滤操作符、投影操作符、连接操作符、聚合操作符及数据源表转换为摘要信息,所述摘要信息包括以下信息:所述子表达式是否包含分组操作符;以及所述子表达式涉及的数据源表的列表。7.根据权利要求3所述的方法,其特征在于,所述根据合并规则将相同组别的子表达式合并为公共子表达式,包括:对所述子表达式进行归一化处理;检查两个归一化之后的子表达式是否为连接兼容;如果满足连接兼容,则执行...

【专利技术属性】
技术研发人员:吴谋雷春蔚郑君正
申请(专利权)人:阿里巴巴中国有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1