数据模型的构建方法及数据查询方法和计算机存储介质技术

技术编号:30286201 阅读:17 留言:0更新日期:2021-10-09 21:57
本发明专利技术提出了一种数据模型的构建方法及数据查询方法和计算机存储介质,其方法包括步骤S1:基于列式数据建立与其对应的多个维度表,并生成对多个维度表的内容进行关联的事实表;步骤S2:基于事实表所存储的数据,将事实表所包含的每个事件的度量进行统计,得到可表征数据对应的每个事件的度量的指标度量集;步骤S3:基于用户需求,对指标度量集中的事件进行维度分解,得到分解后的单维度事件和/或通过多个单维度事件任意组合得到的多维度事件的聚合值;步骤S4:输出单维度事件和/或多维度事件及它们对应的聚合值,形成所述事件数据模型。与现有技术相比,本发明专利技术能进行多维数据分析,提高了数据分析计算及存储的效率。提高了数据分析计算及存储的效率。提高了数据分析计算及存储的效率。

【技术实现步骤摘要】
数据模型的构建方法及数据查询方法和计算机存储介质


[0001]本专利技术涉及数据模型构建,特别是一种数据模型的构建方法及数据查询方法和计算机存储介质。

技术介绍

[0002]传统的企业业务数据分析技术基于关系数据库存储进行多维数据分析计算,采用基于行的数据存储方式进行大数据量的复杂分析和查询处理,为企业管理运营进行业务指标分析及决策支持。随着互联网和大数据技术的发展,基于列式数据存储方式因其具有易扩展、海量存储、高性能、高可用的特性,在信息化建设中广泛应用。但是对于列式数据存储,缺乏构造列式数据模型并进行多维数据分析查询的方法,在数据分析中无法有效利用列式数据存储的长处。
[0003]因此,如何基于列式数据提出一种数据模型的构建方法及数据查询方法和计算机存储介质用于多维数据分析和查询是业界亟待解决的技术问题。

技术实现思路

[0004]针对现有技术中缺乏构造基于列式数据构造数据模型用于查询和分析的问题,本专利技术提出了一种数据模型的构建方法及数据查询方法和计算机存储介质。
[0005]本专利技术的技术方案为,提出了一种数据模型的构建方法包括:步骤S1:基于列式数据建立与其对应的多个维度表,并生成对多个维度表的内容进行关联的事实表;步骤S2:基于所述事实表所存储的数据,将所述事实表所包含的每个事件的度量进行统计,得到可表征所述数据对应的每个事件的度量的指标度量集;步骤S3:基于用户需求,对所述指标度量集中的事件进行维度分解,得到分解后的单维度事件和/或通过多个单维度事件任意组合得到的多维度事件的聚合值;步骤S4:输出单维度事件和/或多维度事件及它们对应的聚合值,形成所述事件数据模型。
[0006]进一步,所述步骤S1包括:步骤S11:根据列式数据所包含的事件的维度确定所述维度表的建立个数,所述维度表的建立个数与所述事件的维度数量相同;步骤S12:基于列式数据建立维度表,每个所述维度表包括键部和值部,所述维度表的键部为所述维度表的行键、值部为所述维度表的属性值;步骤S13:建立事实表,所述事实表包括键部和值部,所述事实表的值部为所述维度表的行键值,并通过所述维度表的行键值与所述维度表进行关联,所述事实表的键部为所述事实表的行键。
[0007]进一步,所述步骤S2包括:获取每个所述事实表中键部对应的事件度量,生成反应每个事件的度量的指
标度量集,所述指标度量集的键部为所述事实表的行键,并通过所述指标度量集的键部与所述事实表进行关联,所述指标度量集的值部为与其键部对应事件匹配的度量。
[0008]进一步,所述对指标度量集中的事件进行维度分解之前,还需要基于用户需求对数据进行筛选,所述基于用户需求对数据进行筛选包括:步骤S31:根据用户需求,对每个所述维度表的属性值进行筛选,保留每个维度表中属性值满足用户需求的数据;步骤S32:将多个筛选后的维度表合并为第一键值对,并以所述维度表中满足用户需求的属性值作为键部、与所述满足用户需求的属性值对应的行键的集合作为值部,并通过所述第一键值对反应所述满足用户需求的数据。
[0009]进一步,在生成所述反应满足用户需求的数据的第一键值对后,还需要建立联系所述第一键值对与所述事实表的第二键值对,其包括:步骤S33:根据所述第一键值对的值部对多个所述事实表进行筛选,并判断每个所述事实表的值部是否满足所述第一键值对的值部中行键的集合,若是则令所述事实表中该事件的值部为1,反之则令所述事实表中该事件的值部为0;步骤S34:将判断后得到的多个事实表合并,得到所述第二键值对。
[0010]进一步,所述对指标度量集中的事件进行维度分解之前,还需要得出包含每个事件的所有维度、以及每个事件的度量的第三键值对,其包括:步骤S35:根据所述第二键值对对多个所述事实表和所述指标度量集进行筛选,保留所述事实表和所述指标度量集中与第二键值对值部为1相匹配的事件的数据;步骤S36:基于所述事实表和所述指标度量集中保留的数据生成第三键值对,所述第三键值对的键部为所述事实表中保留部分的值部、值部为所述指标度量集中保留部分的值部。
[0011]进一步,所述对指标度量集中的事件进行维度分解,得到分解后的单维度事件和/或通过单维度事件任意组合得到的多维度事件的聚合值包括:步骤S37:拆分所述第三键值对的键部,得到多个单维度事件,并根据所述第三键值对的值部得出与所述单维度的事件匹配的度量;步骤S38:将多个所述单维度事件中维度相同的事件合并到同一键值对,并将键部相同的部分合并后得到第四键值对,所述第四键值对的键部为所述单维度的事件、值部为与其键部相匹配的事件度量,并通过所述第四键值对表示所述分解后的单维度事件的聚合值;步骤S39:将多个单维度事件任意组合得到多维度事件,并根据所述第三键值对获取所述多个单维度事件任意组合的多维度事件的度量,并将维度相同的事件合并到同一键值对,生成第五键值对,所述第五键值对的键部为所述多个单维度事件任意组合的多维度事件、值部为与其键部相匹配的事件度量,并通过所述第五键值对表示多维度事件的聚合值;通过所述步骤S37后,当需要获取单维度事件的聚合值时,进入所述步骤S38,当需要获取多维度事件的聚合值时,进入所述步骤S39。
[0012]进一步,得到所述第四键值对和所述第五键值对后,还需要生成反应满足用户需
求中所有维度事件的度量的总键值对,其包括:步骤S310:将所述指标度量集中满足用户需求的全部值部中事件的度量进行合并,得到总键值对,并令总键值对的值部为代表所有维度事件的行键、值部为所述指标度量集中满足用户需求的全部值部中事件的度量合并后的值。
[0013]本专利技术还提出了一种数据查询方法,包括:采用上述数据模型的构建方法构建数据模型;根据用户输入的查询条件,从所述事实数据模型中查找相应的内容。
[0014]本专利技术还提出了一种计算机存储介质,其包括:数据采集模块:用于采集所需查询事件的数据;数据模型构建模块:用于建立用于存储数据的列式存储星型模块;数据分析指标构建模块:用于建立数据分析指标;多维数据计算模块:用于在不同层次上从不同维度和维度组合对数据分析指标进行聚合计算;数据存储模块:用于将数据存储到列式数据库;数据查询模块:用于根据所述数据分析指标进行指标数据查询。
附图说明
[0015]为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本专利技术数据模型构建的模型图;图2为本专利技术事实图和维度图的储存模型;图3为本专利技术不同层次的数据聚合示意图;图4为本专利技术一实施例中事实图和维度图的储存模型;图5为本专利技术一实施例中第一键值对的生成示意图;图6为本专利技术一实施例中第二键值对的生成示意图;图7为本专利技术一实施例中第三键值对的生成示意图;图8为本专利技术一实施例中第四键值对的生成示意图;图9为本专利技术一实施例中第本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据模型的构建方法,其特征在于,包括:步骤S1:基于列式数据建立与其对应的多个维度表,并生成对多个维度表的内容进行关联的事实表;步骤S2:基于所述事实表所存储的数据,将所述事实表所包含的每个事件的度量进行统计,得到可表征所述数据对应的每个事件的度量的指标度量集;步骤S3:基于用户需求,对所述指标度量集中的事件进行维度分解,得到分解后的单维度事件和/或通过多个单维度事件任意组合得到的多维度事件的聚合值;步骤S4:输出单维度事件和/或多维度事件及它们对应的聚合值,形成所述事件数据模型。2.根据权利要求1所述的数据模型的构建方法,其特征在于,所述步骤S1包括:步骤S11:根据列式数据所包含的事件的维度确定所述维度表的建立个数,所述维度表的建立个数与所述事件的维度数量相同;步骤S12:基于列式数据建立维度表,每个所述维度表包括键部和值部,所述维度表的键部为所述维度表的行键、值部为所述维度表的属性值;步骤S13:建立事实表,所述事实表包括键部和值部,所述事实表的值部为所述维度表的行键值,并通过所述维度表的行键值与所述维度表进行关联,所述事实表的键部为所述事实表的行键。3.根据权利要求2所述的数据模型的构建方法,其特征在于,所述步骤S2包括:获取每个所述事实表中键部对应的事件度量,生成反应每个事件的度量的指标度量集,所述指标度量集的键部为所述事实表的行键,并通过所述指标度量集的键部与所述事实表进行关联,所述指标度量集的值部为与其键部对应事件匹配的度量。4.根据权利要求3所述的数据模型的构建方法,其特征在于,所述对指标度量集中的事件进行维度分解之前,还需要基于用户需求对数据进行筛选,所述基于用户需求对数据进行筛选包括:步骤S31:根据用户需求,对每个所述维度表的属性值进行筛选,保留每个维度表中属性值满足用户需求的数据;步骤S32:将多个筛选后的维度表合并为第一键值对,并以所述维度表中满足用户需求的属性值作为键部、与所述满足用户需求的属性值对应的行键的集合作为值部,并通过所述第一键值对反应所述满足用户需求的数据。5.根据权利要求4所述的数据模型的构建方法,其特征在于,在生成所述反应满足用户需求的数据的第一键值对后,还需要建立联系所述第一键值对与所述事实表的第二键值对,其包括:步骤S33:根据所述第一键值对的值部对多个所述事实表进行筛选,并判断每个所述事实表的值部是否满足所述第一键值对的值部中行键的集合,若是则令所述事实表中该事件的值部为1,反之则令所述事实表中该事件的值部为0;步骤S34:将判断后得到的多个事实表合并,得到所述第二键值对。6.根据权利要求5所述的数据模型的构建方法,其特征在于,所述对指标度量集中的事件进行维度分解之前,还需...

【专利技术属性】
技术研发人员:尹立东左亚龙秦明
申请(专利权)人:深圳市迈安信科技有限公司
类型:发明
国别省市:

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

1