【技术实现步骤摘要】
【国外来华专利技术】一种数据查询方法、装置及系统
本专利技术涉及计算机
,尤其涉及一种数据查询方法、装置及系统。
技术介绍
当前,在数据仓库与在线联机分析处理(英文:OnlineAnalyticalProcessing,简称:OLPA)领域来讲,数据的查询速度尤为重要。在OLAP领域,数据库查询过程需要遍历较大的数据量才能完成查询,在如此大的数据量下,若还需要数据库查询有较快的响应,这样就对数据库处理性能提出很大挑战。当前的数据库查询方式一般都是基于结构化查询语言(英文:StructuredQueryLanguage,简称:SQL)进行查询,查询的执行过程为:SQL查询请求进入数据库系统后,数据库系统先将SQL查询请求通过语法分析后转换成关系树,通过关系树在数据库中得到原始数据,比如说数据库中存在表A、表B、表C以及表D,通过关系树中确定出需要在表A和表B中查询数据,此时就将表A和表B从数据库中调取出来作为原始数据。再通过调用关系树上关系节点对应的执行函数,最后按照次序执行关系节点对应的执行函数在原始数据中查询出需要的查询结果。现有的基于SQL的数据库查询的执行方式主要有火山模型引擎与列式数据执行引擎。其中,火山模型执行过程如图1所示,其查询模式为执行了关系树上的一个关系节点对应的执行函数之后,将调用一次next函数,从而执行下一个节点上的执行函数,直至最后一个关系节点上的执行函数被执行完毕为止,最后在原始数据中得到查询结果。这样在关系树上的关系节点较多时,依次调用各个关系节点上的执行函数,使得调用开销将非常大,查询速度较慢。列式数据查询引擎执行过程如图2所示,数据库系 ...
【技术保护点】
PCT国内申请,权利要求书已公开。
【技术特征摘要】
【国外来华专利技术】1.一种数据查询方法,其特征在于,包括:获取用于在数据库中查询数据的查询请求;将所述查询请求转换为对应的查询关系树,并在预存的关系树集合中确定出与所述查询关系树匹配的关系树,所述预存的关系树集合中包括对不同查询请求转换得到的不同关系树;根据关系树与关系树类型之间的对应关系,确定与所述匹配的关系树对应关系树类型;根据关系树类型与执行函数模板之间的对应关系,调取与确定的关系树类型对应的执行函数模板,其中,所述执行函数模板中包含了对应类型的关系树中各关系节点上用于查询数据的执行函数;针对所述数据库执行调取出的执行函数模板对应的执行函数,得到查询结果。2.如权利要求1所述的方法,其特征在于,在预存的关系树集合中确定出与所述查询关系树匹配的关系树,包括:确定所述查询关系树中各关系节点的节点位置,以及各关系节点的类型;遍历预存的关系树集合中与确定的各关系节点的节点位置以及各关系节点的类型相匹配的关系树,作为与所述查询关系树匹配的关系树。3.如权利要求2所述的方法,其特征在于,在遍历预存的关系树集合中与确定的各关系节点的节点位置以及各关系节点的类型相匹配的关系树前,还包括:在所述查询关系树中确定出关系节点总数;在预存的关系树集合中筛选出关系节点总数与确定的关系节点总数相等的关系树;将筛选出的关系树,作为要遍历的预存的关系树集合。4.如权利要求1所述的方法,其特征在于,在预存的关系树集合中确定出与所述查询关系树匹配的关系树,包括:对所述查询关系树进行哈希计算,得到所述查询关系树对应的哈希值;在预存的关系树与关系树对应的哈希值的对应关系中,确定出哈希值与得到的查询关系树的哈希值相同的关系树,作为与所述查询关系树匹配的关系树。5.如权利要求1~4中任一项所述的方法,其特征在于,针对所述数据库执行调取出的执行函数模板对应的执行函数,包括:在针对所述数据库执行调取出的执行函数模板对应的执行函数时,在所述数据库确定出原始数据,所述原始数据为未被所述执行函数模板执行的数据;获取用以表征所述原始数据的数据量大小的数据特征;根据数据特征与执行函数模板之间的对应关系,在调取出的执行函数模板中确定出所述数据特征对应的执行函数模板,并针对所述原始数据执行所述数据特征对应的执行函数模板对应的执行函数。6.一种数据查询装置,其特征在于,包括:获取模块,用于获取用于在数据库中查询数据的查询请求;转换模块,用于将所述查询请求转换为对应的查询关系树,并在预存的关系树集合中确定出与所述查询关系树匹配的关系树,所述预存的关系树集合中包括对不同的查询请求转换得到的不同关系树;确定模块,用于根据关系树与关系树类型之间的对应关系,确定与所述匹配的关系树对应的关系树类型;调取模块,用于根据关系树类型与执行函数模板之间的对应关系,调取与确定的关系树类型对应的执行函数模板,其中,所述执行函数模板中包含了对应类型的关系树中各关系节点上用于查询数据的执行函数;执行模块,用于针对所述数据库执行调取出的执行函数模板对应的执行函数,得到查询结果。7.如权利要求6所述的装置,其特征在于,所述转换模块,包括:确定单元,用于确定所述查询关系树中各关系节点的节点位置,以及各关系节点的类型;查询单元,用于遍历预存的关系树集合中与确定的各关系节点的节点位置以及各关系节点的类型相匹配的关系树,作为与所述查询关系树匹配的关系树。8.如权利要求7所述的装置,其特征在于,所述转换模块,还包括:筛选单...
【专利技术属性】
技术研发人员:施会华,李俊,方帆,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。