一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据模型的构建方法、数据查询的方法、装置及存储介质与流程

2022-11-14 22:48:21 来源:中国专利 TAG:


1.本技术涉及数据处理技术领域,特别涉及一种数据模型的构建方法、数据查询的方法、装置及存储介质。


背景技术:

2.数据仓库是为企业所有级别的决策制作过程,提供所有类型数据支持的战略集合。
3.面对业务运营、商业分析和数据产品等业务需求,数据使用方需要从数据仓库中提取所需数据。而一般情况下,数据使用方所了解的数据仓库的相关知识,不足以支持其直接从数据仓库中提取所需数据,所以,数据使用方会向数据开发人员提出大量零散的数据读取需求,由数据开发人员为其提供所需数据。进一步地,为了方便数据使用方自己从数据仓库中提取所需数据,数据开发人员根据业务需求在已有数据表基础上额外构建主题宽表。
4.但是,额外构建的主题宽表无法复用数据仓库的已有建设成果,造成了资源浪费。


技术实现要素:

5.本技术实施例提供了一种数据模型的构建方法、数据查询的方法、装置及存储介质,可以在数据仓库的已有建设成果的基础上构建有向无环连通图作为数据模型,以通过数据模型确定查询指标在数据仓库中的路径,充分利用了数据仓库的已有建设成果。所述技术方案如下:
6.根据本技术的一方面,提供了一种数据模型的构建方法,该方法包括:
7.获取维度模型的模型信息,所述维度模型是基于维度表和事实表构建的,所述模型信息包括字段信息和所述维度表的至少两个维度,所述字段信息指示有所述至少两个维度之间的映射关系;
8.基于所述字段信息构建所述至少两个维度之间的全量维度关系图,所述字段信息还指示有所述至少两个维度中每一个维度与所述事实表之间的关联关系;
9.基于所述字段信息将所述事实表挂载到所述全量维度关系图中的至少一个维度上,生成以所述事实表为中心的有向无环连通图作为数据模型,所述数据模型用于基于查询指标和所述查询指标的维度确定所述查询指标到所述事实表的路径。
10.根据本技术的另一方面,提供了一种数据查询的方法,应用于数据系统中,数据系统中包括如上一个方面所述的方法构建的数据模型,该方法包括:
11.接收数据查询请求,所述数据查询请求包括查询指标;
12.基于所述查询指标和所述查询指标的维度,调用所述数据模型计算到达所述查询指标对应的事实表的路径;
13.基于所述路径生成所述查询指标的查询语句;
14.执行所述查询语句,从所述数据系统中获取所述查询指标的值。
15.根据本技术的另一方面,提供了一种数据模型的构建装置,该装置包括:
16.第一获取模块,用于获取维度模型的模型信息,所述维度模型是基于维度表和事实表构建的,所述模型信息包括字段信息和所述维度表的至少两个维度,所述字段信息指示有所述至少两个维度之间的映射关系;
17.构建模块,用于基于所述字段信息构建所述至少两个维度之间的全量维度关系图,所述字段信息还指示有所述至少两个维度中每一个维度与所述事实表之间的关联关系;
18.第一生成模块,用于基于所述字段信息将所述事实表挂载到所述全量维度关系图中的至少一个维度上,生成以所述事实表为中心的有向无环连通图作为数据模型,所述数据模型用于基于查询指标和所述查询指标的维度确定所述查询指标到所述事实表的路径。
19.根据本技术的另一方面,提供了一种数据查询的装置,应用如上一个方面所述的方法构建的数据模型,该装置包括:
20.接收模块,用于接收数据查询请求,所述数据查询请求包括查询指标;
21.计算模块,用于基于所述查询指标和所述查询指标的维度,调用所述数据模型计算到达所述查询指标对应的事实表的路径;
22.第二生成模块,用于基于所述路径生成所述查询指标的查询语句;
23.第二获取模块,用于执行所述查询语句,从所述数据系统中获取所述查询指标的值。
24.根据本技术的另一方面,提供了一种服务器,该服务器包括:
25.存储器,与存储器相连的处理器;
26.处理器,被配置为加载并执行存储器中存储的可执行指令以实现如上一个方面及其可选实施例所述的数据模型的构建方法,或者,如上另一个方面及其可选实施例所述的数据查询的方法。
27.根据本技术的另一方面,提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,上述至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如上述一个方面及其可选实施例所述的数据模型的构建方法,或者,如上另一个方面及其可选实施例所述的数据查询的方法。
28.根据本技术的另一个方面,提供了一种计算机程序产品,上述计算机程序产品包括计算机指令,上述计算机指令存储在计算机可读存储介质中。计算机设备的处理器从上述计算机可读存储介质读取上述计算机指令,上述处理器执行上述计算机指令,使得上述计算机设备执行如上所述一个方面及其可选实施例所述的数据模型的构建方法,或者,如上另一个方面及其可选实施例所述的数据查询的方法。
29.本技术实施例提供的技术方案带来的有益效果至少包括:
30.该方法从数据系统中获取维度模型的模型信息,基于模型信息构建维度表与事实表对应的有向无环连通图,来连接维度与维度、维度与事实表,将有向无环连通图作为数据模型,在进行指标查询时可以通过数据模型来确定查询指标到事实表的路径,进而按照上述路径从数据仓库中提取出查询指标的值,充分的利用了数据仓库已有的建设成果,为用户提供更方便快捷的指标数据提取环境,避免了由于额外构建的主题宽表无法复用数据仓库已有建设成果,而导致的资源浪费问题;其次,该方法还可以实现跨主题的数据查询,避
免了额外构建的主题宽表仅能够实现针对指定主题的数据查询这一问题;再有,该方法因为无需构建主题宽表,所以释放了原本花费在主题宽表构建上的大量人力资源。
附图说明
31.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
32.图1是本技术一个示例性实施例提供的数据系统的结构示意图;
33.图2是本技术一个示例性实施例提供的数据模型的构建方法的流程图;
34.图3是本技术一个示例性实施例提供的数据模型的结构示意图;
35.图4是本技术一个示例性实施例提供的数据模型的构建过程的示意图;
36.图5是本技术一个示例性实施例提供的数据查询的方法的流程图;
37.图6是本技术一个示例性实施例提供的数据查询的过程的示意图;
38.图7是本技术一个示例性实施例提供的数据模型的构建装置的框图;
39.图8是本技术一个示例性实施例提供的数据查询的装置的框图;
40.图9是本技术一个示例性实施例提供的服务器的结构示意图。
具体实施方式
41.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
42.针对本技术中涉及词语的解释如下:
43.元数据,又称中介数据、中继数据,为描述数据的数据,主要描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资料查找、文件记录等功能,元数据算是一种电子式目录,为了达到编制目录的目的,必须在描述并收藏数据的内容或特色,进而达到协助数据检索的目的。
44.指标,是衡量事务发展程度的单位和方法,通常需要经过加和、平均等聚合统计才能得到,并且是在一定条件下,比如,好评率、增长量等即是指标。
45.维度,是事务现象的某种特征,比如,性别、地区、时间都是维度。
46.维度表,也称维表,包含事实数据表中事实记录的特性,有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息,维度表包含帮助汇总数据的特性的层次结构。
47.事实表,也即事实数据表,其主要特点是包含数字数据(事实),并且这些数字信息汇总,以提供有关单位作为历史的数据,每个事实数据表包含一个由多部分组成的索引,该索引包含作为外键的相关性表的主键,而维度表包含事实记录的特性。
48.宽表,是指指标、维度、以及属性关联在一起的一张数据表。
49.原子指标,是指表达业务实体原子量化属性的且不可再分的概念集合,比如,订单量、用户量、访问量(page view,pv)、独立访客(unique visiter,uv)等。
50.计算指标,是指建立在原子指标之上,通过一定运算规则形成的计算指标集合,比
如,平均用户交易额、资产负债率等。
51.派生指标,在原子指标或计算指标与维度成员、统计属性、管理属性等相结合产生的指标,比如,交易金额的完成值、计划值、累计值、同比、环比、占比等。
52.图1示出了本技术实施例涉及的一种数据系统100的结构示意图,该数据系统100包括应用层101、服务层102、中间件103和存储层104。
53.应用层101提供了提数需求管理、任务执行、数据安全控制、运维管理、应用接入这五项功能;其中,提数需求管理是对数据提取需求的管理,任务执行是对在应用层101设置的任务的执行管理,数据安全控制是数据系统100中数据安全的管理,运维管理是维护数据系统100运行的管理,应用接入是对应用程序接入数据系统100的管理。
54.服务层102包括元数据处理1021、数据查询处理1022和辅助模块1023三个模块。元数据处理1021包括了元数据同步、元数据构建、元数据存储三项功能,元数据处理1021可以实现本技术实施例中提供的数据模型的构建方法,其中,元数据同步包括对物理表、指标、维度、映射关系和资源密级的同步;元数据构建包括扩展指标和扩展维度两个方面,扩展指标又包括原子指标、衍生指标和计算指标的扩展,扩展维度又包括宽表模型、星型模型和雪花模型的扩展;元数据存储包括维度路径图(包括有向无环连通图)和逻辑宽表的存储。
55.数据查询处理1022包括了协议解析、逻辑构建、模型优化和物理构建。协议解析提供了统计指标、筛选条件、汇总维度和查询属性的功能,协议解析为逻辑构建提供了指标与维度;逻辑构建提供了可用指标计算、可用维度计算、宽表模型筛选和用户权限标记的功能,进而构建候选逻辑宽表,为模型优化提供了候选逻辑宽表;模型优化包括宽表筛选和维表筛选两方面,宽表筛选条件包括维度字段少、层级高、事实表少,维表筛选条件包括关联事实表层次少和关联覆盖度高,从候选逻辑宽表中筛选出符合上述筛选条件的逻辑宽表;物理构建是基于逻辑宽表实现宽表到事实表、指标到字段、维度到维表、维度到字段和事实表到维表的映射,以及事实表合并,最终生成查询语句;采用查询语句从数据仓库中提取查询指标的值。
56.辅助模块1023提供了任务管理、运维管理、权限管理、任务调度和查询限流的辅助服务,以辅助元数据和数据查询的处理。
57.中间件103包括离线查询引擎、任务调度系统和权限管控服务,任务调度系统调度任务,比如调度数据查询任务,权限管控服务来确定是否具备数据查询权限,离线查询引擎执行任务调度系统调度的查询任务来实现数据查询。
58.存储层104包括数据仓库工具hive、关系型数据库管理系统mysql和云服务;hive用于进行数据提取、转化和加载,这是一种可以存储、查询和分析存储的大规模数据的机制;mysql用于将数据保存在不同的表中,支持数据的快速查询;云服务用于将数据存储与云服务端,支持数据的存储与查询。
59.对于数据系统100的数据治理,可以采用数据治理应用支撑200,数据治理应用支撑200包括针对数据系统100的模型管理、权限管理、流程控制和接口服务,其中,模型管理还包括逻辑模型、物理模型和关系映射。数据治理应用支撑200可以实现对数据系统100中元数据的治理,比如更新数据系统100中的元数据。
60.示例性的,上述数据系统100是由服务器集群承载的,上述服务器集群可以包括一台服务器、多台服务器、云计算平台和虚拟化中心中的至少一种。本领域技术人员可以知
晓,上述服务器集群可以仅为一个,或者为几十个、几百个,或者更多数量,本技术实施例对服务器集群的数量和类型不加以限定。
61.图2示出了本技术一个示例性实施例提供的数据模型的构建方法的流程图,该方法应用于图1所示的数据系统的服务器中,该方法包括:
62.步骤301,获取维度模型的模型信息,模型信息包括字段信息和维度表的至少两个维度。
63.服务器从数据系统中获取上述维度模型的模型信息,上述维度模型是基于维度表和事实表构建的,上述字段信息指示有至少两个维度之间的映射关系,还指示有至少两个维度中每一个维度与事实表之间的关联关系。示例性的,上述字段信息包括维度表的字段信息和事实表的字段信息中的至少一项。
64.示例性的,上述模型信息包括n个字段信息,n个字段信息中包括用于唯一标识一个维度的至少一个字段信息;比如,在5个字段信息中,字段信息1唯一标识维度1,字段信息2、字段信息3、字段信息4以及字段信息5这四个字段信息均用于唯一标识维度2。
65.示例性的,服务器在数据系统初始化时,开始执行步骤301,以构建数据莫兴国;或者,服务器响应于数据系统中元数据更新,开始执行步骤301,以重新构建数据模型。
66.步骤302,基于字段信息构建至少两个维度之间的全量维度关系图。
67.服务器按照字段信息指示的映射关系构建至少两个维度之间的全量维度关系图,其中,全量维度关系图中维度之间有向连接。
68.全量维度关系图中的维度分为维度主键和维度成员。可选地,每一个维度主键唯一标识一个主体,与维度主键具备直接或者间接映射关系的维度成员用于共同描述维度主键标识的主体;比如,维度主键“商家三级城市”唯一标识主体是“商家城市”,该维度主键的维度成员包括“商家一级城市”和“商家二级城市”,“商家一级城市”和“商家二级城市”均是围绕“商家城市”这一主体扩展的维度成员。
69.维度主键是相对于维度成员而言的,一个主体的维度成员还可以作为其他主体的维度主键;比如,维度主键“日商家”的维度成员“商家蜂窝”在另一个主体下作为维度主键,“商家蜂窝”与其“商家三级城市”和“商家蜂窝类型”这两个维度成员之间存在有向连接。
70.示例性的,全量维度关系图中的有向连接包括由维度主键指向维度成员的有向连接;有向连接还可以包括一个维度成员指向另一个维度成员的有向连接。
71.可选地,对于全量维度关系图的构建,服务器从至少两个维度中确定维度主键;基于字段信息和至少两个维度确定维度主键的维度成员,构建维度主键与维度成员之间的映射关系,形成上述全量维度关系图;其中,具备映射关系的至少两个维度是针对同一主体进行描述的维度。
72.可选地,维度主键与维度成员可以是直接映射关系或者间接映射关系。示例性的,维度成员包括第一维度成员和第二维度成员,对于维度之间映射关系的构建,服务器构建维度主键与第一维度成员的第一映射关系、第一维度成员与第二维度成员之间的第二映射关系,第一映射关系和第二映射关系共同描述了第二维度成员与维度主键之间的间接映射关系。
73.可选地,对于维度的扩展,服务器遍历维度模型,针对至少两个维度中的每一个维度进行维度扩展,得到扩展维度;基于字段信息从至少两个维度和扩展维度中确定维度成
员。示例性的,服务器可以遍历维度模型,基于维度之间的关联关系跨维度表进行维度扩展。
74.可选地,对于维度主键的确定,服务器可以将至少两个维度中维度表关联事实表的维度确定为维度主键。示例性的,一个事实表关联至少一个维度表,该维度表通过一个维度与事实表进行关联,服务器在构建数据模型的过程中将该维度确定为维度主键。
75.步骤303,基于字段信息将事实表挂载到全量维度关系图中的至少一个维度上,生成以事实表为中心的有向无环连通图作为数据模型,数据模型用于基于查询指标和查询指标的维度确定查询指标到事实表的路径。
76.服务器基于字段信息指示的事实表与维度之间的映射关系,将事实表挂载到全量维度关系图中的至少一个维度上,生成以事实表为中心的有向无环连通图,即得到数据模型。
77.可选地,服务器基于字段信息将事实表挂载到全量维度关系图中的至少一个维度主键上,生成以事实为中心的有向无环连通图作为数据模型。
78.示例性的,如图3,上图中是构建的全量维度关系图的结构示意图,全量维度关系图中包括了维度主键和维度成员;下图中是构建的有向无环连通图的结构示意图,事实表11挂载在“日商家”、“商家蜂窝”、“日”和“用户三级城市”这四个维度主键上。
79.可选地,服务器在基于字段信息将事实表挂载到全量维度关系图中的至少一个维度上之后,删除有向无环连通图中与事实表无映射关系的维度,生成以事实表为中心的有向无环连通图作为数据模型。示例性的,如图3中,上图中虚线框圈出的维度主键和维度成员与事实表无映射关系,因此可以删除,下图中示出了删除了虚线框圈出的维度的有向无环连通图。
80.示例性的,服务器在生成有向无环连通图之后,可以将数据模型支持的指标、指标的计算方式、至少两个维度、维度间映射方式中的至少一项,与数据模型以宽表的形式存储至内存,最终形成了与事实表一一对应的宽表。示例性的,如图4所示,对上述宽表的形成进行示意性说明,数据系统中存在结构化存储的元数据,如元数据结构化存储21所示,服务器进行元数据同步,将元数据结构化存储同步为雪花模型存储22,对字段f1进行字段到维度的映射,得到维度“日期”和“商家”;对字段f1进行字段到指标的映射,得到指标“订单数”和“交易额”。在完成字段到维度的映射之后,还进行了维度到维表的映射,得到维表d1和d2;以此类推,继续字段到维度、字段到指标、维度到维表的映射。在完成映射之后进行元数据构建,将维度扩展和指标扩展后进行拼接生成宽表23,在逻辑宽表23中包括了维度之间的映射关系,维度与事实表之间的映射关系。
81.在数据模型的构建过程中,服务器遍历维度模型进行指标扩展。示例性的,服务器遍历维度模型之后,基于原子指标和计算指标中的至少一种进行指标扩展,生成扩展指标。上述扩展指标可以包括派生指标和计算指标中的至少一种。即存在部分原子指标可以通过一定运算规则形成计算指标,和/或,存在部分原子指标或者计算指标可以与维度成员、统计属性、管理属性等相结合形成派生指标,因此,服务器遍历维度模型之后,扩展计算指标和派生指标,将上述扩展指标与该扩展指标所对应的维度相关联。上述扩展指标可以用于生成上述宽表。
82.综上所述,本实施例提供的数据模型的构建方法,从数据系统中获取维度模型的
模型信息,基于模型信息构建维度表与事实表对应的有向无环连通图,来连接维度与维度、维度与事实表,将有向无环连通图作为数据模型,在进行指标查询时可以通过数据模型来确定查询指标到事实表的路径,进而按照上述路径从数据仓库中提取出查询指标的值,充分的利用了数据仓库已有的建设成果,为用户提供更方便快捷的指标数据提取环境,避免了由于额外构建的主题宽表无法复用数据仓库已有建设成果,而导致的资源浪费问题;其次,该方法还可以实现跨主题的数据查询,避免了额外构建的主题宽表仅能够实现针对指定主题的数据查询这一问题;再有,该方法因为无需构建主题宽表,所以释放了原本花费在主题宽表构建上的大量人力资源。
83.图5示出了本技术一个示例性实施例提供的数据查询的方法的流程图,该方法应用于图1所示的数据系统的服务器中,上述数据系统中包括如图2所示实施例提供的方法构建的数据模型,该方法包括:
84.步骤401,接收数据查询请求,数据查询请求包括查询指标。
85.服务器接收终端发送的数据查询请求,数据查询请求携带了查询指标,服务器从数据查询请求中提取出查询指标,确定查询指标的维度;或者,数据查询请求携带了查询指标和查询指标的维度,服务器从数据查询请求中提取查询指标和查询指标的维度。
86.步骤402,基于查询指标和查询指标的维度,调用数据模型计算到达查询指标对应的事实表的路径。
87.示例性的,服务器对数据查询请求进行解析,得到查询指标和查询指标的维度之后,筛选对查询指标和查询指标的维度共同存储的宽表组合;调用数据模型基于宽表组合计算到达事实表所关联维度最少的路径。
88.可选地,对于宽表组合的筛选,服务器可以基于查询指标和查询指标的维度筛选至少两个候选宽表组合;从至少两个候选宽表组合中确定符合优化条件的宽表组合,优化条件用于筛选具备快速地实现指标查询性能的宽表组合。
89.可选地,上述优化条件包括以下至少一项:
90.宽表组合的信息所占行数最少,或者,宽表的信息所占行数小于行数阈值;
91.宽表的使用频率最高,或者,宽表组合的使用频率大于使用频率阈值;示例性的,在指标查询时,数据系统记录宽表组合的使用频率;
92.宽表组合对应的维度表组合与事实表关联最少。
93.步骤403,基于路径生成查询指标的查询语句。
94.示例性的,如图6,服务器在获得查询指标之后进行逻辑构建,得到宽表组合1和宽表组合2;之后进行逻辑模型优化,即采用优化条件对宽表组合进行筛选,确定出宽表组合的信息所占行数少、使用频率高的宽表组合1;之后进行物理模型优化,即计算宽表组合对应的映射路径中关联维度(或者关联事实表)最少的路径,即得到从事实表至商家、至d2、至蜂窝类型这一路径;最终进行物理构建生成上述路径对应的查询语句。示例性的,宽表组合是指至少两个宽表的组合形式,比如,宽表1和宽表2组合成为宽表组合12。
95.示例性的,上述查询语句可以包括结构化查询语言(structured query language,sql)语句。示例性的,上述路径中事实表与维度表之间使用left outer join、事实表之间使用union all生成最终的sql语句。
96.步骤404,执行查询语句,从数据系统中获取查询指标的值。
97.示例性的,服务器执行sql语句,从数据系统中提取查询指标的值。
98.综上所述,本实施例提供的数据查询的方法,应用了图2所示实施例提供的方法构建的数据模型,该数据模型中包括了维度之间、维度与事实表之间的映射关系,在进行指标查询时可以通过数据模型来确定查询指标到事实表的路径,进而按照上述路径从数据仓库中提取出查询指标的值,充分的利用了数据仓库已有的建设成果,为用户提供更方便快捷的指标数据提取环境,避免了由于额外构建的主题宽表无法复用数据仓库已有建设成果,而导致的资源浪费问题;其次,该方法还可以实现跨主题的数据查询,避免了额外构建的主题宽表仅能够实现针对指定主题的数据查询这一问题;再有,该方法因为无需构建主题宽表,所以释放了原本花费在主题宽表构建上的大量人力资源。
99.图7示出了本技术一个示例性实施例提供的数据模型的构建装置的框图,该装置应用于服务器中,该装置通过软件、硬件或者二者的结合实现成为服务器的部分或者全部,该装置包括:
100.第一获取模块512,用于获取维度模型的模型信息,维度模型是基于维度表和事实表构建的,模型信息包括字段信息和维度表的至少两个维度,字段信息指示有至少两个维度之间的映射关系;
101.构建模块514,用于基于字段信息构建至少两个维度之间的全量维度关系图,字段信息还指示有至少两个维度中每一个维度与事实表之间的关联关系;
102.第一生成模块516,用于基于字段信息将事实表挂载到全量维度关系图中的至少一个维度上,生成以事实表为中心的有向无环连通图作为数据模型,数据模型用于基于查询指标和查询指标的维度确定查询指标到事实表的路径。
103.在一些实施例中,构建模块514,用于:
104.从至少两个维度中确定维度主键;
105.基于字段信息和至少两个维度确定维度主键的维度成员,构建维度主键与维度成员之间的映射关系,形成全量维度关系图;
106.其中,具备映射关系的至少两个维度是针对同一主体进行描述的维度。
107.在一些实施例中,构建模块514,用于:
108.针对至少两个维度中的每一个维度进行维度扩展,得到扩展维度;
109.基于字段信息从至少两个维度和扩展维度中确定维度成员。
110.在一些实施例中,维度成员包括第一维度成员和第二维度成员;构建模块514,用于:
111.构建维度主键与第一维度成员的第一映射关系、第一维度成员与第二维度成员之间的第二映射关系,第一映射关系和第二映射关系共同描述了第二维度成员与维度主键之间的间接映射关系。
112.在一些实施例中,构建模块514,用于:
113.将至少两个维度中维度表关联事实表的维度确定为维度主键。
114.在一些实施例中,该装置还包括存储模块518;
115.存储模块518,用于将数据模型支持的指标、指标的计算方式、至少两个维度、维度间映射方式中的至少一项,与数据模型以宽表的形式存储至内存。
116.在一些实施例中,第一生成模块516,用于:
117.在生成以事实表为中心的有向无环连通图作为数据模型之前,删除有向无环连通图中与事实表无映射关系的维度。
118.综上所述,本实施例提供的数据模型的构建装置,从数据系统中获取维度模型的模型信息,基于模型信息构建维度表与事实表对应的有向无环连通图,来连接维度与维度、维度与事实表,将有向无环连通图作为数据模型,在进行指标查询时可以通过数据模型来确定查询指标到事实表的路径,进而按照上述路径从数据仓库中提取出查询指标的值,充分的利用了数据仓库已有的建设成果,为用户提供更方便快捷的指标数据提取环境,避免了由于额外构建的主题宽表无法复用数据仓库已有建设成果,而导致的资源浪费问题;其次,该装置还可以实现跨主题的数据查询,避免了额外构建的主题宽表仅能够实现针对指定主题的数据查询这一问题;再有,该装置因为无需构建主题宽表,所以释放了原本花费在主题宽表构建上的大量人力资源。
119.图8示出了本技术一个示例性实施例提供的数据查询的装置的框图,该装置应用于服务器中,该装置通过软件、硬件或者二者的结合实现成为服务器的部分或者全部,该装置应用如图2所示实施例的方法构建的数据模型,该装置包括:
120.接收模块522,用于接收数据查询请求,数据查询请求包括查询指标;
121.计算模块524,用于基于查询指标和查询指标的维度,调用数据模型计算到达查询指标对应的事实表的路径;
122.第二生成模块526,用于基于路径生成查询指标的查询语句;
123.第二获取模块528,用于执行查询语句,从数据系统中获取查询指标的值。
124.在一些实施例中,计算模块524,用于:
125.筛选对查询指标和查询指标的维度共同存储的宽表组合;
126.调用数据模型基于宽表组合计算到达事实表所关联维度最少的路径。
127.在一些实施例中,计算模块524,用于:
128.基于查询指标和查询指标的维度筛选至少两个候选宽表组合;
129.从至少两个候选宽表组合中确定符合优化条件的宽表组合,优化条件用于筛选具备快速准确地实现指标查询性能的宽表组合。
130.在一些实施例中,优化条件包括以下至少一项:
131.宽表组合的信息所占行数最少,或者,宽表组合的信息所占行数小于行数阈值;
132.宽表组合的使用频率最高,或者,宽表组合的使用频率大于使用频率阈值;
133.宽表组合对应的维度表组合与事实表关联最少。
134.综上所述,本实施例提供的数据查询的装置,应用了图2所示实施例提供的方法构建的数据模型,该数据模型中包括了维度之间、维度与事实表之间的映射关系,在进行指标查询时可以通过数据模型来确定查询指标到事实表的路径,进而按照上述路径从数据仓库中提取出查询指标的值,充分的利用了数据仓库已有的建设成果,为用户提供更方便快捷的指标数据提取环境,避免了由于额外构建的主题宽表无法复用数据仓库已有建设成果,而导致的资源浪费问题;其次,该装置还可以实现跨主题的数据查询,避免了额外构建的主题宽表仅能够实现针对指定主题的数据查询这一问题;再有,该装置因为无需构建主题宽表,所以释放了原本花费在主题宽表构建上的大量人力资源。
135.图9示出了本技术一个实施例提供的服务器的结构示意图。该服务器用于实施上
述实施例中提供的数据模型的构建方法,或者,数据查询的方法。具体来讲:
136.所述服务器600包括cpu(central processing unit,中央处理器)601、包括ram(random access memory,随机存取存储器)602和rom(read-only memory,只读存储器)603的系统存储器604,以及连接系统存储器604和中央处理单元601的系统总线605。所述服务器600还包括帮助计算机内的各个器件之间传输信息的基本i/o(input/output,输入/输出)系统606,和用于存储操作系统613、应用程序614和其他程序模块615的大容量存储设备607。
137.所述基本输入/输出系统606包括有用于显示信息的显示器608和用于用户输入信息的诸如鼠标、键盘之类的输入设备609。其中所述显示器608和输入设备609都通过连接到系统总线605的输入输出控制器610连接到中央处理单元601。所述基本输入/输出系统606还可以包括输入输出控制器610以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器610还提供输出到显示屏、打印机或其他类型的输出设备。
138.所述大容量存储设备607通过连接到系统总线605的大容量存储控制器(未示出)连接到中央处理单元601。所述大容量存储设备607及其相关联的计算机可读介质为服务器600提供非易失性存储。也就是说,所述大容量存储设备607可以包括诸如硬盘或者cd-rom(compact disc read-only memory,只读光盘)驱动器之类的计算机可读介质(未示出)。
139.不失一般性,所述计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括ram、rom、eprom(erasable programmable read-only memory,可擦除可编程只读存储器)、eeprom(electrically erasable programmable read-only memory,电可擦可编程只读存储器)、闪存(flash memory)或其他固态存储其技术,cd-rom、dvd(digital versatile disc,数字通用光盘)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器604和大容量存储设备607可以统称为存储器。
140.根据本技术的各种实施例,所述服务器600还可以通过诸如因特网等网络连接到网络上的远程计算机运行。也即服务器600可以通过连接在所述系统总线605上的网络接口单元611连接到网络612,或者说,也可以使用网络接口单元611来连接到其他类型的网络或远程计算机系统(未示出)。
141.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
142.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
143.以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献