[发明专利]多维度数据的查询方法及装置在审
申请号: | 201511031360.9 | 申请日: | 2015-12-31 |
公开(公告)号: | CN106933894A | 公开(公告)日: | 2017-07-07 |
发明(设计)人: | 洪超 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 韩建伟,张永明 |
地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 多维 度数 查询 方法 装置 | ||
技术领域
本申请涉及数据库领域,具体而言,涉及一种多维度数据的查询方法及装置。
背景技术
在联机分析处理(On-LineAnalytical Processing,简称OLAP)的环境下,目前常用的查询引擎有Hive、Impala等结构化的带元数据的数据库。在这些数据库中,通常,将各类事件的数据记录在各个事实数据表中。例如,在“教学管理系统”中,教学管理数据库包含以下几个事实数据表:“教师”表、“课程”表、“成绩”表、“学生”表、“班级”表和“授课”表等,通过以上事实数据表可管理教学过程中学生、教师、课程等信息。再例如,在对互联网的会话进行监测时,一般有会话表(Session)、页面浏览表(PageView)、站内搜索表(SiteSearch)、订单表(Ecommerce)和自定义事件表(Event)等多种代表各种业务场景的事实数据表,这些数据表可通过客户的会话标识(SessionID)进行关联,以形成整个会话的所有实体。当用户需要从多个角度、跨越多个事实数据表将数据关联以查看指标数据和维度数据时,在相关技术中,通常根据用户查询需求专门编写相应代码,进而实现在数据库中查询相关的指标数据和维度数据。由于相关技术中缺乏统一将用户查询需求迅速转化为查询语言的技术方案,导致多维度数据查询的执行效率较低。
针对相关技术中多维度数据查询的执行效率较低的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种多维度数据的查询方法及装置,以至少解决相关技术中多维度数据查询的执行效率较低的技术问题。
根据本申请实施例的一个方面,提供了一种多维度数据的查询方法,包括:获取查询条件,其中,查询条件为用于执行多维度数据查询的条件;从多个事实数据表中获取满足查询条件的表集合;将待分配字段分配给表集合中的相应的事实数据表,得到目标表集合,其中,待分配字段为从查询条件中获取的所需列字段;根据目标表集合中的事实数据表之间的连接关系生成用于反映数据流过程的数据结构;以及根据数 据结构生成相应的数据查询语言并通过数据查询语言执行多维度数据查询。
进一步地,将待分配字段分配给表集合中的相应的事实数据表,得到目标表集合包括:对于多个事实数据表中包含同一维度的多张事实数据表,按照事实数据表的数据量由小到大的次序,依次判断每张事实数据表是否包含于表集合,直到判断出一张事实数据表包含于表集合;判断该包含于表集合的事实数据表是否包含待分配字段;如果判断出该包含于表集合的事实数据表包含待分配字段,则将待分配字段分配给该包含于表集合的事实数据表;以及将该包含于表集合的事实数据表添加至目标表集合。
进一步地,判断该包含于表集合的事实数据表是否包含待分配字段包括:依次判断该包含于表集合的事实数据表是否包含待分配字段集合中的待分配字段,其中,待分配字段集合中包含至少一个待分配字段,在将待分配字段分配给该包含于表集合的事实数据表之后,该方法还包括:将分配给该包含于表集合的事实数据表的待分配字段从待分配字段集合中删除。
进一步地,根据目标表集合中的事实数据表之间的连接关系生成用于反映数据流过程的数据结构包括:根据目标表集合中的事实数据表和该事实数据表对应的待分配字段确定连接关系;以及根据连接关系生成用于反映数据流过程的数据结构。
进一步地,查询条件包括查询维度链和查询指标,查询维度链包括至少一个查询维度,至少一个查询维度包括第一查询维度,从多个事实数据表中获取满足查询条件的表集合包括:判断第一查询维度是否仅包含于一个事实数据表;如果判断出第一查询维度仅包含于一个事实数据表,则将包含第一查询维度的事实数据表添加至表集合;以及如果判断出第一查询维度包含于至少两个事实数据表,则获取至少两个事实数据表中数据量最小的事实数据表,并将该数据量最小的事实数据表添加至表集合。
进一步地,如果判断出第一查询维度仅包含于一个事实数据表,将包含第一查询维度的事实数据表添加至表集合包括:检测包含第一查询维度的事实数据表是否存在于表集合中;以及如果检测出包含第一查询维度的事实数据表不存在于表集合中,则将包含第一查询维度的事实数据表添加至表集合。
进一步地,在判断第一查询维度是否仅包含于一个事实数据表之前,该方法还包括:将指标表添加至表集合,其中,指标表包括查询指标。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201511031360.9/2.html,转载请声明来源钻瓜专利网。