本申请涉及大数据领域,尤其涉及商业智能(bi)技术,具体涉及数据查询方法、可视化数据处理方法及其装置、电子设备及存储介质。
背景技术:
1、当前,商业智能(bi)在大数据领域得到广泛使用,其涉及数据收集、集成、分析和可视化的工具和技术。人们通常将不同数据源收集的原始数据使用bi技术转换为可理解的数据或有意义的信息,以便通过分析数据揭示的事实来支持业务决策。
2、为方便用户使用商业智能(bi)工具进行多维分析工作,通常会搭建数据仓库平台,以将业务数据提取到数据仓库平台。在数据仓库平台中,通常将根据维度表和事实表的关系,采用星型模型或雪花模型进行数据建模和etl数据开发。从而,当使用bi工具进行交互式多维数据分析时,由bi工具生成结构化查询语言(sql)进行数据查询并进行可视化展示。
3、当使用bi工具进行这样的多维数据分析时,当前可能有两种处理手段。第一种需要bi工具生成sql来实时关联查询维度表和事实表并进行数据查询。另一种是提前进行维度表和事实表关联以产出宽表,以供bi工具进行数据查询。
4、然而,若通过bi工具生成的sql实时关联查询维度表和事实表,将无法保证查询效率,影响用户体验。若为了提高查询效率,在底层数据中提前将维度表和事实表关联产出宽表,并将数据冗余存储在数据库中,这会额外消耗存储空间,并且在维度表信息发生变化时,宽表历史数据又需要重新计算,宽表数据产出过程不易维护。随着数据生成速度迅速提高、数据量规模迅速增大,当前存在的上述问题将会愈发严重。
5、本背景技术描述的内容仅为了便于了解本领域的相关技术,不视作对现有技术的承认。
技术实现思路
1、对此,本发明实施例希望提供能够有效解决或缓解任一上述技术问题的解决方案,从而能够保证使用商业智能(bi)工具进行交互式多维分析时的查询效率,并且避免大量的数据冗余存储,减轻数据维护工作量。
2、对此,在第一方面,提供一种数据查询方法,其可包括:
3、预配置维度表数据更新频率;
4、预配置事实表数据与所述维度表数据的关联关系;
5、以所述更新频率预查询维度表数据,存储预查询得到的维度表数据;
6、响应于所述数据查询,实时查询事实表数据;
7、基于所述关联关系,将查询得到的事实表数据中的字段值映射为所述维度表数据中的关联字段值,以得到数据查询结果。
8、可选地,存储预查询得到的维度表数据,包括:
9、以预定的哈希表数据结构缓存所述维度表数据。
10、可选地,所述预定的哈希表数据结构包括第一哈希表,嵌套在所述第一哈希表中的第二哈希表以及嵌套在所述第二哈希表中的第三哈希表,其中所述第三哈希表对应所述维度表数据的行索引,所述第二哈希表对应所述维度表数据的列索引,所述第一哈希表对应所述维度表数据的表索引。
11、可选地,基于所述关联关系,将查询得到的事实表数据中的字段值映射为所述维度表数据中的关联字段值,以得到数据查询结果,包括:
12、基于所述关联关系,确定需要映射的字段;
13、遍历事实表数据的查询结果,使用所述字段的字段名和字段值获取维度表数据的行索引,使用所述字段的字段名获取列索引;
14、根据所述行索引获取维度表字段值列表;
15、根据所述列索引获取维度表字段值;
16、将事实表数据的查询结果中的字段值替换为所获取的维度表字段值。
17、可选地,所述数据查询方法还可包括:
18、通过提取-转换-加载(etl)处理从联机事务处理(oltp)源数据生成维度表数据和事实表数据。
19、在第二方面,提供一种可视化数据处理方法,其可包括:
20、响应于用户在商业智能工具中的操作,确定待分析的数据维度和/或用于数据分析的计算函数;
21、基于确定的数据维度和/或计算函数,触发根据权利要求1至6中任一项所述的数据查询方法,以获得数据查询结果;
22、在所述商业智能工具中可视化报表方式显示所述数据查询结果,用于所述用户的多维数据分析。
23、在第三方面,提供一种数据查询装置,其可包括:
24、第一预配置单元,用于预配置维度表数据更新频率;
25、第二预配置单元,用于预配置所述事实表数据集与所述维度表数据集的关联关系;
26、预加载单元,用于以所述更新频率预查询维度表数据,存储预查询得到的维度表数据;
27、查询单元,用于响应于所述数据查询,查询事实表数据;
28、映射单元,用于基于所述关联关系,将查询得到的事实表数据中的字段值映射为所述维度表数据中的关联字段值,以得到数据查询结果。
29、在第四方面,提供一种可视化数据处理装置,其可包括:
30、确定单元,用于响应于用户在商业智能工具中的操作,确定待分析的数据维度和/或用于数据分析的计算函数;
31、触发单元,用于基于确定的数据维度和/或计算函数,触发利用权利要求8所述的数据查询装置进行的数据查询,以获得数据查询结果;
32、可视化单元,用于在所述商业智能工具中可视化报表方式显示所述数据查询结果,用于所述用户的多维数据分析。
33、在第五方面,提供一种电子设备,其可包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时实现本发明任一实施例所述的方法。
34、在第六方面,提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序配置成被运行时实现本发明任一实施例所述的方法。
35、本发明实施例中的数据查询方法,提出了预配置维度表数据更新频率;预配置事实表数据与所述维度表数据的关联关系;以所述更新频率预查询维度表数据,存储预查询得到的维度表数据;响应于所述数据查询,实时查询事实表数据;基于所述关联关系,将查询得到的事实表数据中的字段值映射为所述维度表数据中的关联字段值,以得到数据查询结果。这能够在保证查询效率的前提下,无需提前关联维度表和事实表产出宽表,只需要产出维度表和事实表,而且bi工具可实时地根据设置关联关系进行多维数据分析关联查询,少了数据冗余存储空间,减少数据产出人员开发工作量,又保障数据的实时性。
36、本发明实施例的其他可选特征和技术效果一部分在下文描述,一部分可通过阅读本文而明白。
1.一种数据查询方法,其特征在于,包括:
2.根据权利要求1所述的数据查询方法,其特征在于,存储预查询得到的维度表数据,包括:
3.根据权利要求2所述的数据查询方法,其特征在于,所述预定的哈希表数据结构包括第一哈希表,嵌套在所述第一哈希表中的第二哈希表以及嵌套在所述第二哈希表中的第三哈希表,其中所述第三哈希表对应所述维度表数据的行索引,所述第二哈希表对应所述维度表数据的列索引,所述第一哈希表对应所述维度表数据的表索引。
4.根据权利要求1至3中任一项所述的数据查询方法,其特征在于,基于所述关联关系,将查询得到的事实表数据中的字段值映射为所述维度表数据中的关联字段值,以得到数据查询结果,包括:
5.根据权利要求1至5中任一项所述的数据查询方法,其特征在于,还包括:
6.一种可视化数据处理方法,其特征在于,包括:
7.一种数据查询装置,其特征在于,包括:
8.一种可视化数据处理装置,其特征在于,包括:
9.一种电子设备,其特征在于,包括:处理器和存储有计算机程序的存储器,所述处理器被配置为在运行计算机程序时实现权利要求1至7中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序配置成被运行时实现权利要求1至7中任一项所述的方法。