数据处理方法、装置、设备、可读介质及软件产品与流程
未命名
07-12
阅读:95
评论:0

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.内容获取模块,用于获取指标信息以及数据查询模板;
33.指标列信息输出模块,用于根据所述指标信息与所述数据查询模板,输出初始指标列信息;
34.指标列信息调整模块,用于响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;
35.查询模板生成模块,用于将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。
36.可选地,所述数据查询模板包括主查询结构以及子查询结构,所述指标列信息输
出模块包括:
37.查询模板生成子模块,用于将所述指标信息输入所述数据查询模板,生成初始查询模板;
38.字段信息输出子模块,用于响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述子查询结构对应的第一字段信息以及与所述主查询结构对应的第二字段信息。
39.可选地,所述字段信息输出子模块具体用于:
40.响应针对所述初始查询模板的运行指令,获取所述初始查询模板的目标语法树;
41.若所述目标语法树包括子查询语法树,则对所述子查询语法树进行字段识别,输出与所述子查询结构对应的第一字段信息;
42.获取所述主查询结构的字段信息,对所述字段信息进行类型识别,输出与所述主查询结构对应的第二字段信息。
43.可选地,所述指标列信息调整模块包括:
44.配置信息获取子模块,用于响应针对所述初始指标列信息的信息配置操作,获取与所述信息配置操作对应的配置信息,所述配置信息至少包括针对所述第一字段信息的第一字段名称以及第一字段类型,以及针对所述第二字段信息的第二字段名称以及第二字段类型;
45.第一字段信息调整子模块,用于采用所述第一字段名称与所述第一字段类型,将所述第一字段信息调整为第一目标字段信息;
46.第二字段信息调整子模块,用于采用所述第二字段名称与所述第二字段类型,将所述第二字段信息调整为第二目标字段信息。
47.可选地,所述查询模板生成模块包括:
48.指标列信息更新子模块,用于将所述目标指标列信息添加至所述数据查询模板,更新所述初始指标列信息;
49.查询信息获取子模块,用于获取针对所述主查询结构的主查询信息,以及针对所述子查询结构的子查询信息,所述主查询信息至少包括主查询维度以及主查询标识,所述子查询信息至少包括子查询维度以及子查询信息;
50.语法树确定子模块,用于确定所述主查询结构对应的主查询语法树,以及所述子查询结构对应的子查询语法树;
51.结构化查询模板生成子模块,用于将所述主查询维度与所述主查询结构关联,并将所述主查询标识添加至所述主查询语法树,将所述子查询维度与所述子查询结构关联,以及将所述子查询标识添加至所述子查询语法树,生成结构化查询模板。
52.可选地,还包括:
53.查询信息获取模块,用于响应于数据分析操作,获取与所述数据分析操作对应的查询信息,所述查询信息至少包括查询指标以及查询维度;
54.信息输入模块,用于将所述查询指标与所述查询维度输入所述结构化查询模板;
55.子查询结构获取模块,用于若所述查询维度与所述第一目标字段信息匹配成功,则确定与所述子查询维度对应的第一维度表,并从所述第一维度表中获取与所述查询维度匹配的子查询结果;
56.主查询结构获取模块,用于若所述查询指标与所述第二目标字段信息匹配成功,则从所述查询结果中提取与所述查询指标匹配的主查询结果;
57.数据分析结果生成模块,用于采用所述子查询结果与所述子查询结果,生成与所述数据分析操作对应的数据分析结果。
58.本技术实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
59.所述存储器,用于存放计算机程序;
60.所述处理器,用于执行存储器上所存放的程序时,实现如本技术实施例所述的方法。
61.本技术实施例还公开了一个或多个计算机可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本技术实施例所述的方法。
62.本技术实施例还公开了一种软件产品,包括计算机程序/指令,其中,当所述计算机程序/指令被执行时,实现执行如本技术实施例所述的方法。
63.本技术实施例包括以下优点:
64.在本技术实施例中,在数据查询的过程中,尤其是在配置结构化查询模板的过程中,可以通过获取指标信息以及数据查询模板,接着可以根据指标信息与数据查询模板,输出初始指标列信息,通过解析出指标列信息,使得研发人员能够了解指标信息所对应的查询内容,接着可以对初始指标列信息进行配置,将初始指标列信息调整为目标指标列信息,通过对指标列信息进行调整,实现在模板中更加清楚地描述指标的信息,然后将目标指标列信息添加至数据查询模板中,更新查询模板,生成结构化查询模板,使得数据分析人员可以通过该结构化查询模板进行数据查询,从而在结构化查询模板支持进行多维度、交叉分析的情况下,通过将指标信息接入到对应的数据查询模板中,并进行校验、调整,有效缩短了数据查询语言配置的时间、降低了调试成本,提高了调试效率。
附图说明
65.图1是本技术实施例中提供的一种数据处理方法的步骤流程图;
66.图2是本技术实施例中提供的指标接入的流程示意图;
67.图3是本技术实施例中提供的一种数据处理装置的结构框图;
68.图4是本技术的一种电子设备的框图;
69.图5是本技术的一种计算机可读介质的示意图。
具体实施方式
70.为使本技术的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本技术作进一步详细的说明。
71.随着互联网行业的数据积累和进入精细化运营,越来越多的产品、运营、技术人员需要掌握数据分析师的技能,以便通过查找数据、分析数据等从大量的数据中确定用户需求,并根据用户需求提供对应的服务。例如,在物流领域中,可以对某个物流应用程序中的相关指标进行分析,包括应用程序的日活跃用户量、寄件订单的履约率、寄件订单的取消
率、日收件量、日寄件量等等,通过对物流过程中的相关指标进行分析,可以分析用户的需求,以便根据用户需求提供更加合理、人性化、定置化的服务。然而,非专业的数据分析人员(如产品、运营人员等)对数据来源、加工逻辑、数据的维度组装等涉及专业数据分析的内容,无法自助使用,而是只能通过专业的数据研发人员通过一些报表工具定制形成报表或看板等才能使用,这种方式对非专业的数据分析人员而言,数据门槛分析高、通用性与普适性差。
72.此外,为了解决上述技术问题,在相关技术
①
中,非专业的数据分析人员一次性整理好数据分析需求,包括分析指标、特定的分析维度、特定的分析人员等,接着由专业的数据研发人员将数据加工成指定的指标后,通过相关报表工具以看板的形式进行呈现,并在预加工的范围内支持一定程度的下拉筛选,然而在这种方式中,无法对常用指标、常用维度以及常用人员等进行沉淀,导致数据分析人员无法灵活地自助选择分析维度进行数据分析。在相关技术
②
中,通过占位符指标实现多维交叉分析,具体为数据研发人员提前定义指标,接入sql(structured query language,结构化查询语言)片段,在sql片段中添加${date}、${crowdsql}等替换符,在数据分析人员需要选择分析维度、分析人群时,通过将替换符替换为指定的维度表或者人群表片段,拼接成完整sql进行多维交叉分析,然而在这种方式中,指标接入成本高,需要研发人员花费大量的时间调整sql以适应接入规则,并且sql片段无法直接运行,进一步提高了调试成本,导致sql调试效率低下。由此可见,在相关的数据分析过程中,需要数据研发人员对数据分析的指标进行接入,并花费大量的时间调整数据查询语言,大大提高了数据查询语言调试的成本,且调试效率低下。
73.对此,本技术实施例的核心发明点之一在于在数据查询的过程中,尤其是在配置结构化查询模板的过程中,通过获取指标信息以及数据查询模板,其中,数据查询模板可以为sql模板,接着将指标信息接入sql模板,并输出初始指标列信息,通过解析指标列信息,使得数据研发人员能够了解到指标信息所对应的查询内容,接着为了在模板中能够更加清楚地描述指标的信息,研发人员可以对指标列信息进行配置,得到目标指标列信息,并将其添加至数据查询模板中,更新查询模板,生成结构化查询模板,使得数据分析人员可以通过该结构化查询模板进行数据查询,从而在结构化查询模板支持进行多维度、交叉分析的情况下,通过将指标信息接入到对应的数据查询模板中,并进行校验、调整,有效缩短了数据查询语言配置的时间、降低了调试成本,提高了调试效率。
74.为了使本领域技术人员更好地理解本技术实施例的技术方案,下面对本技术所涉及的部分技术名词进行解释说明:
75.指标,具备一定分析含义概念的数据值,可以包括维度修饰、时间修饰以及度量值等,例如,某app个人寄件一天的单量,维度为该app的“个人寄件”,时间修饰为“一天”,度量值为“单量”等。
76.维度,用于修饰指标的一种描述,例如,以寄件页面下单转化率为指标,则相关维度可以包括“从首页进入下单页”、“从短信连接进入下单页”等不同的入口维度,还可以包括“新用户”、“老用户”等用户维度等。
77.人群,可以为特定的一个用户群体,在进行数据分析的过程中,针对不同的人群进行分析,包括“近180天内没有登录的用户”、“男性用户”以及“女性用户”等等。
78.具体的,参照图1,示出了本技术实施例中提供的一种数据处理方法的步骤流程
图,具体可以包括如下步骤:
79.步骤101,获取指标信息以及数据查询模板;
80.在本技术实施例中,为了使非专业的数据分析人员(如产品、运营人员等)能够自助地使用分析工具进行多维度交叉分析,数据研发人员可以先配置对应的结构化查询模板,以便数据分析人员进行数据分析。可选地,可以在终端中运行对应的程序,数据研发人员可以在程序中对数据查询模板进行配置,以得到对应的结构化查询模板。
81.在配置结构化查询模板的过程中,可以先获取指标信息以及数据查询模板,以便将指标信息接入数据查询模板中,生成对应的结构化查询语言。其中,指标信息可以包括需要进行分析的指标、指标的名称、指标的描述、指标的应用类型、用于修饰指标的维度、用于修饰指标的时间以及指标对应的度量等;数据查询模板可以为包含预设结构的sql模板,则可以将指标信息输入至sql模板,以生成对应的结构化查询模板。
82.需要说明的是,本技术实施例中以数据查询模板为sql模板为例进行示例性说明,对于sql,其可以为一种特殊目的的编程语言,是一种数据库查询和程序设计语言,可以用于存取数据以及查询、更新和管理关系数据库系统,其可以实现数据定义、数据操纵以及数据控制等功能,在进行数据分析的过程中,数据研发人员可以通过将指标信息接入到对应的sql,实现模板配置,以便数据分析人员通过所配置的模板进行多维度交叉的数据分析。
83.在一种示例中,数据查询模板可以包括位于外层的主查询结构、子查询结构以及数据表参数,其中,可以在主查询结构中配置需要分析的指标值列(包括指标名称、指标的字段、字段的类型等等);子查询结构可以为具体分析维度的sql,且其子查询结果返回ds、user_id等,对于ds,其需要在子查询结构中返回,用于图表的时间展示和关联数据表,user_id也需要在子查询结构中返回,用于关联数据表等;通过数据表参数可以关联对应的数据表。此外,子查询结构还可以包括返回用于外层查询统计指标值的列所对应的参数。
84.步骤102,根据所述指标信息与所述数据查询模板,输出初始指标列信息;
85.在本技术实施例中,对于数据查询模板,其可以通过主查询结构与子查询接口的sql对指标信息进行接入,相比于通过替换符方式的sql片段的方式,不需要替换符,通过主查询结构与子查询结构之间的配合即可实现数据查询与分析,有效避免了指标信息接入时需要大量定制sql的逻辑,以及sql片段无法直接运行导致无法判断模板是否存在运行异常,进而提高了结构化查询模板的配置、调试效率,同时保证了模板运行的稳定性。
86.在具体实现中,可以将指标信息输入至数据查询模板,生成初始查询模板,接着响应针对初始查询模板的运行指令,对接入了指标信息的初始查询模板进行校验,以判断其是否能够正常运行。若能够正常运行,则可以在运行结束后,输出与子查询结构对应的第一字段信息以及与主查询结构对应的第二字段信息,从而通过输出模板所对应的指标列信息,实现对指标信息所对应的分析内容进行输出,以便数据研发人员查看分析内容,并按需对其进行调整、修改。
87.可选地,子查询结构可以用于与查询维度关联以及提供外层查询统计,主查询结构可以用于定义需要分析的指标,则在数据分析的过程中,可以先通过子查询结构进行相关维度的数据查询,得到子查询结果后,基于该子查询结果返回至外层查询结构(即主查询结构)进行指标的数据查询,得到最后的数据分析结果。对于第一字段信息,其可以为与子查询结构对应的维度字段、维度字段的字段名称、维度字段的字段类型;对于第二字段信
息,其可以为与主查询结构对应的指标字段、指标字段的字段名称以及指标字段的字段类型,从而通过对初始查询模板进行试运行,一方面可以检测指标信息是否成功接入sql模板,以及检测接入的指标信息包括需要进行分析的哪些指标,以及从什么维度对指标进行分析等,另一方面可以检测sql模板是否能够有效运行,进而有效保证了数据查询模板运行的稳定性。
88.具体的,对于初始查询模板的校验过程,数据研发人员输入运行指令后,程序可以响应针对初始查询模板的运行指令,获取初始查询模板的目标语法树,该目标语法树可以为初始查询模板对应的整个查询sql语法树,接着可以对该查询sql语法树进行检测,判断其是否存在子查询语法树,若目标语法树包括子查询语法树,则对子查询语法树进行字段识别,输出与子查询结构对应的第一字段信息,以及获取主查询结构的字段信息,对字段信息进行类型识别,输出与主查询结构对应的第二字段信息。
89.在一种示例中,当研发人员将指标信息接入sql模板后,可以创建对应的sql解析器,对模板进行解析,获取整个查询sql语法树,接着获取语法树中的from语法树,并判断from语法树是否为子查询语法树,从而判断模板中是否存在对应的子查询结构。若存在子查询结构,则获取其对应的字段信息,并对字段信息进行识别,判断其是否包含ds、user_id等字段,并在包含的情况下输出对应的第一字段信息,即第一字段信息可以包括ds、user_id等,其中,ds可以代表一个日期,其用于表征指标的时间分析维度;user_id可以表示一个用户的id,其用于表征指标的用户分析维度等。同时,可以通过获取最外层查询的字段信息(即主查询结构的字段信息),并对该字段信息进行识别,得到对应的第二字段信息,第二字段信息可以包括需要进行分析查询的指标所对应的字段类型(如字符串、数值、百分比、时间等),从而通过对初始查询模板进行试运行,一方面可以检测指标信息是否成功接入sql模板,以及检测接入的指标信息包括需要进行分析的哪些指标,以及从什么维度对指标进行分析等,另一方面可以检测sql模板是否能够有效运行,进而有效保证了数据查询模板运行的稳定性。
90.步骤103,响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;
91.为了更好地在查询模板中定义和描述相关查询字段的用途,数据研发人员可以对试运行时输出的字段信息进行调整。在具体实现中,程序可以响应针对初始指标列信息的信息配置操作,获取与信息配置操作对应的配置信息,配置信息至少包括针对第一字段信息的第一字段名称以及第一字段类型,以及针对第二字段信息的第二字段名称以及第二字段类型,接着采用第一字段名称与第一字段类型,将第一字段信息调整为第一目标字段信息,以及采用第二字段名称与第二字段类型,将第二字段信息调整为第二目标字段信息。
92.可选地,第一字段信息与第二字段信息可以为查询模板在试运行时解析出来的物理字段信息,则为了更好地定义和描述这些物理字段的用途,数据研发人员可以调整字段的名称以及类型等信息,从而将第一字段信息调整为第一目标字段信息,将第二字段信息调整为第二目标字段信息,优化字段的定义、描述。
93.在一种示例中,当接入某app的日活用户数指标,将指标接入sql完成指标sql编写后,数据研发人员可以输入运行指令,在运行过程中,可以通过解析指标sql的查询列信息(包括主查询结构与子查询结构中涉及查询的指标、维度等),然后输出只有查询列的物理
字段信息,物理字段信息可以包括ds、dau等,前者可以用于表征一个日期,即指标中的时间分析维度;后者可以用于表征日活用户数指标,即指标中的度量值。其中,为了方便数据研发人员进行配置,可以通过对物理字段信息进行可视化的展示,接着根据数据研发人员在相应地可视化窗口上进行操作,调整物理字段信息的字段名称、类型等,如针对ds,其涉及的数据类型为指标中的查询维度,则可以配置为“维度”,用于表征ds属于维度修饰,同时其表征的是一个日期,则可以将其对应的字段数据类型配置为“时间/yyyymmdd”,以及配置数据字段名为“日期”,从而将ds配置为用于修饰指标的分析时间维度;针对dau,其涉及的数据类型为指标中的度量值,则可以配置为“度量”,用于表征dau属于度量值,同时其表征的是一个数值,则可以将其对应的字段数据类型配置为“数值类型”,以及配置数据字段名为“日活用户数”,从而通过对指标列信息进行调整
94.步骤104,将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。
95.当完成了指标列信息的调整后,可以将调整后的目标指标列信息添加至数据查询模板,更新初始指标列信息。此时,只是定义了需要进行分析查询的指标、维度等信息,还需要与对应的数据表进行关联,以确定需要从哪些维度进行分析查询,具体的,可以先获取针对主查询结构的主查询信息,以及针对子查询结构的子查询信息,主查询信息至少包括主查询维度以及主查询标识,子查询信息至少包括子查询维度以及子查询信息,接着可以确定主查询结构对应的主查询语法树,以及子查询结构对应的子查询语法树,然后将主查询维度与主查询结构关联,并将主查询标识添加至主查询语法树,将子查询维度与子查询结构关联,以及将子查询标识添加至子查询语法树,生成结构化查询模板。
96.其中,主查询维度可以用于表征主查询结构进行查询的维度,其可以关联有对应的数据表,子查询维度可以用于表征子查询结构进行查询的维度,其可以关联有对应的数据表,主查询维度对应的数据表与子查询维度对应的数据表可以为相同的数据表,也可以为不同的数据表。此外,主查询标识可以为主查询结构的查询名称,子查询标识可以为子查询结构的查询名称等,本技术对此不作限制。
97.需要说明的是,在本技术实施例的上述示例中,以某一个指标、该指标对应的不同维度进行指标sql配置为例进行示例性说明,可以理解的是,在相关的数据分析中,分析的常用维度、时间周期都是可穷举的,常用的分析方法也可以穷举,因此,通过本技术实施例的技术方案,可以在一个数据查询模板中将所涉及的分析维度、时间周期、分析方法等接入sql模板中,实现指标和维度的沉淀,在模板生成后,数据分析人员可以根据自身需求选择需要进行分析的指标、维度等进行数据分析,避免了每次数据分析都需要通过替换符替换对应的指标、维度等,有效降低了数据分析的门槛,使得非专业的数据分析人员能够自助进行数据分析,保证了数据分析的通用性与普适性。
98.在一种示例中,当完成了指标列信息的调整后,可以对sql进行改写,将模板中的主查询结构与子查询结构关联对应的数据表,以便在进行数据分析时可以通过相应的数据表获取对应的数据。具体的,可以创建对应的sql解析器,接着获取查询模板中的子查询语法树,接着获取子查询维度以及子查询标识,并在子查询语法树中添加子查询维度与子查询标识,以将子查询语法树与对应的数据查询维度进行关联,例如,子查询标识可以为“xxxx_index”,子查询维度可以包括圈人、数据表、人群分层等关联的sql,则可以在子查询
语法树上添加该子查询标识,并将上述关联的sql关联至子查询结构,实现对子查询结构的改写。对于外层查询语法树(即主查询结构),则可以为该外层查询语法树添加对应的主查询维度以及主查询标识,例如,可以获取目标字段,该目标字段可以用于关联主查询结构的查询维度以及主查询标识,从而通过上述过程可以在完成指标值列的调整后,将模板与关联的sql、数据表等进行关联,同时对外层查询语法树、子查询语法树等进行命名等,实现指标sql模板的改写,完成数据查询模板,生成结构化查询模板,进而通过在结构化查询模板中对指标、维度等进行沉淀,使得数据分析人员能够直接选择指标、维度等进行数据分析,在结构化查询模板支持进行多维度、交叉分析的情况下,有效缩短了数据查询语言配置的时间、降低了调试成本,提高了调试效率。
99.在一种可选实施例中,在数据分析查询过程中,相应的数据分析人员可以在终端中运行对应的数据分析工具,该数据分析工具中可以配置有上述过程中所涉及的结构化查询模板,则终端可以响应于数据分析操作,获取与数据分析操作对应的查询信息,查询信息至少包括查询指标以及查询维度,接着将查询指标与查询维度输入结构化查询模板,若查询维度与第一目标字段信息匹配成功,则确定与子查询维度对应的第一维度表,并从第一维度表中获取与查询维度匹配的子查询结果,若查询指标与第二目标字段信息匹配成功,则从查询结果中提取与查询指标匹配的主查询结果,然后采用子查询结果与子查询结果,生成与数据分析操作对应的数据分析结果。
100.在具体实现中,数据分析人员可以输入想要进行分析的指标、维度、分析方式,接着终端可以根据数据分析人员的输入操作,获取对应的查询指标、查询维度等,接着将查询指标与模板中主查询结构所定义的指标(即第二目标字段信息)进行匹配,判断模板中是否接入了该查询指标,同理将查询维度与子查询结构中的维度(即第一目标字段信息)进行匹配,当模板中存在时,则可以从对应的数据表中获取对应的数据,得到与维度、指标对应的查询结果,当模板中的主查询结构依赖于子查询结构的查询结果时,可以将子查询结构得到的查询结构返回至主查询结构进行查询分析,从而得到与数据分析人员输入的查询信息对应的数据分析结果,通过配置对应的结构化查询模板,使得数据分析人员可以根据自身需求选择需要进行分析的指标、维度等进行数据分析,避免了每次数据分析都需要通过替换符替换对应的指标、维度等,有效降低了数据分析的门槛,使得非专业的数据分析人员能够自助进行数据分析,保证了数据分析的通用性与普适性。
101.可选地,对于本技术实施例中的数据处理方法可以应用于商品购物平台、物流管理系统、短视频平台、音乐平台、生活服务平台、医疗服务平台等等,相关人员可以在这些平台/系统中对相关指标进行分析,从而挖掘用户需求,以便为用户提供更加合理、人性化以及个性化的服务,提高用户体验。
102.在本技术实施例中,在数据查询的过程中,尤其是在配置结构化查询模板的过程中,可以通过获取指标信息以及数据查询模板,接着可以根据指标信息与数据查询模板,输出初始指标列信息,通过解析出指标列信息,使得研发人员能够了解指标信息所对应的查询内容,接着可以对初始指标列信息进行配置,将初始指标列信息调整为目标指标列信息,通过对指标列信息进行调整,实现在模板中更加清楚地描述指标的信息,然后将目标指标列信息添加至数据查询模板中,更新查询模板,生成结构化查询模板,使得数据分析人员可以通过该结构化查询模板进行数据查询,从而在结构化查询模板支持进行多维度、交叉分
析的情况下,通过将指标信息接入到对应的数据查询模板中,并进行校验、调整,有效缩短了数据查询语言配置的时间、降低了调试成本,提高了调试效率。
103.为了使本领域技术人员更好地理解本技术实施例的技术方案,下面通过一个示例进行解释、说明:
104.在数据分析过程中,所涉及的使用人员包括数据研发人员以及数据分析人员,其中,数据分析人员可以包括非专业数据分析的产品人员、运营人员等。为了使非专业数据分析的产品人员、运营人员能够对数据分析工具自助使用,以实现多维度交叉的数据分析,可以通过本技术实施例的数据查询模板构建,构建对应的结构化查询模板,使得数据分析人员可以根据自身需求选择需要进行分析的指标、维度等进行数据分析。
105.具体的,数据研发人员对模板进行配置的过程可以包括:
106.1、确定指标名称、指标的描述、指标的类型、应用类型、用于修饰指标的维度、用于修饰指标的时间以及指标对应的度量等;
107.2、将上述过程所涉及的指标信息接入至指标sql;
108.3、接入后,对指标sql进行试运行,检测sql是否能够正常运行,以及解析出对应的指标值列;
109.4、对指标值列所对应的物理字段信息进行字段类型、描述信息的调整;
110.5、接入关联的sql,使得指标sql与对应的数据表关联,然后可以存储该指标sql,生成结构化查询模板。
111.数据分析人员进行数据查询分析的过程可以包括:
112.1、输入分析名称、分析描述、应用类型、指标、用户维度等查询信息;
113.2、通过结构化查询模板进行数据分析查询;
114.3、输出对应的数据分析结果,例如以报表可视化的方式进行展示等。
115.可选地,对于上述模板配置过程中,其可以包括指标接入、指标sql校验、指标列解析、指标sql改写等过程,参照图2,示出了本技术实施例中提供的指标接入的流程示意图,具体过程可以包括:
116.1、配置指标定义、指标加工信息:
117.1.1、指标接入sql校验;
118.1.2、解析接入指标sql;
119.1.3、返回指标列信息、
120.2、设置指标列名称、维度、类型等:
121.2.1、指标列名称、维度、类型落库;
122.2.2、返回设置结果
123.通过上述过程,可以完成对结构化配置模板(即指标sql)的配置,在结构化查询模板支持进行多维度、交叉分析的情况下,通过将指标信息接入到对应的数据查询模板中,并进行校验、调整,有效缩短了数据查询语言配置的时间、降低了调试成本,提高了调试效率。
124.在物流领域的应用场景中,上述数据处理方法可以应用于物流管理系统,则数据研发人员可以在物流管理系统中对模板进行配置,包括确定诸如日活跃用户量、寄件订单的履约率、寄件订单的取消率、日收件量、日寄件量等指标的名称、描述、类型、应用类型、用于修饰这些指标的维度、用于修饰指标的时间以及指标对应的度量等等,接着可以参照前
述相关过程生成应用于物流管理系统的结构化查询模板。模板配置完成后,数据分析人员可以在物流管理系统上对日活跃用户量、寄件订单的履约率、寄件订单的取消率、日收件量、日寄件量等指标进行数据分析,并得到对应的分析结果,然后可以根据分析结果确定用户需求,以便根据用户需求为用户提供更优质的物流服务。可选地,还可以应用于商品购物平台、短视频平台、音乐平台、生活服务平台、医疗服务平台等等,以便为通过数据分析确定用户需求,进而根据用户需求提供更加优质的服务。
125.需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术实施例并不受所描述的动作顺序的限制,因为依据本技术实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本技术实施例所必须的。
126.参照图3,示出了本技术实施例中提供的一种数据处理装置的结构框图,具体可以包括如下模块:
127.内容获取模块301,用于获取指标信息以及数据查询模板;
128.指标列信息输出模块302,用于根据所述指标信息与所述数据查询模板,输出初始指标列信息;
129.指标列信息调整模块303,用于响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;
130.查询模板生成模块304,用于将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。
131.在一种可选实施例中,所述数据查询模板包括主查询结构以及子查询结构,所述指标列信息输出模块302包括:
132.查询模板生成子模块,用于将所述指标信息输入所述数据查询模板,生成初始查询模板;
133.字段信息输出子模块,用于响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述子查询结构对应的第一字段信息以及与所述主查询结构对应的第二字段信息。
134.在一种可选实施例中,所述字段信息输出子模块具体用于:
135.响应针对所述初始查询模板的运行指令,获取所述初始查询模板的目标语法树;
136.若所述目标语法树包括子查询语法树,则对所述子查询语法树进行字段识别,输出与所述子查询结构对应的第一字段信息;
137.获取所述主查询结构的字段信息,对所述字段信息进行类型识别,输出与所述主查询结构对应的第二字段信息。
138.在一种可选实施例中,所述指标列信息调整模块303包括:
139.配置信息获取子模块,用于响应针对所述初始指标列信息的信息配置操作,获取与所述信息配置操作对应的配置信息,所述配置信息至少包括针对所述第一字段信息的第一字段名称以及第一字段类型,以及针对所述第二字段信息的第二字段名称以及第二字段类型;
140.第一字段信息调整子模块,用于采用所述第一字段名称与所述第一字段类型,将
所述第一字段信息调整为第一目标字段信息;
141.第二字段信息调整子模块,用于采用所述第二字段名称与所述第二字段类型,将所述第二字段信息调整为第二目标字段信息。
142.在一种可选实施例中,所述查询模板生成模块304包括:
143.指标列信息更新子模块,用于将所述目标指标列信息添加至所述数据查询模板,更新所述初始指标列信息;
144.查询信息获取子模块,用于获取针对所述主查询结构的主查询信息,以及针对所述子查询结构的子查询信息,所述主查询信息至少包括主查询维度以及主查询标识,所述子查询信息至少包括子查询维度以及子查询信息;
145.语法树确定子模块,用于确定所述主查询结构对应的主查询语法树,以及所述子查询结构对应的子查询语法树;
146.结构化查询模板生成子模块,用于将所述主查询维度与所述主查询结构关联,并将所述主查询标识添加至所述主查询语法树,将所述子查询维度与所述子查询结构关联,以及将所述子查询标识添加至所述子查询语法树,生成结构化查询模板。
147.在一种可选实施例中,还包括:
148.查询信息获取模块,用于响应于数据分析操作,获取与所述数据分析操作对应的查询信息,所述查询信息至少包括查询指标以及查询维度;
149.信息输入模块,用于将所述查询指标与所述查询维度输入所述结构化查询模板;
150.子查询结构获取模块,用于若所述查询维度与所述第一目标字段信息匹配成功,则确定与所述子查询维度对应的第一维度表,并从所述第一维度表中获取与所述查询维度匹配的子查询结果;
151.主查询结构获取模块,用于若所述查询指标与所述第二目标字段信息匹配成功,则从所述查询结果中提取与所述查询指标匹配的主查询结果;
152.数据分析结果生成模块,用于采用所述子查询结果与所述子查询结果,生成与所述数据分析操作对应的数据分析结果。
153.对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
154.另外,本技术实施例还提供一种电子设备,如图4所示,包括处理器401、通信接口402、存储器403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信,
155.存储器403,用于存放计算机程序;
156.处理器401,用于执行存储器403上所存放的程序时,实现如下步骤:
157.获取指标信息以及数据查询模板;
158.根据所述指标信息与所述数据查询模板,输出初始指标列信息;
159.响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;
160.将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。
161.在一种可选实施例中,所述数据查询模板包括主查询结构以及子查询结构,所述根据所述指标信息与所述数据查询模板,输出初始指标列信息,包括:
162.将所述指标信息输入所述数据查询模板,生成初始查询模板;
163.响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述子查询结构对应的第一字段信息以及与所述主查询结构对应的第二字段信息。
164.在一种可选实施例中,所述响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述主查询结构对应的第一字段信息以及与所述子结构对应的第二字段信息,包括:
165.响应针对所述初始查询模板的运行指令,获取所述初始查询模板的目标语法树;
166.若所述目标语法树包括子查询语法树,则对所述子查询语法树进行字段识别,输出与所述子查询结构对应的第一字段信息;
167.获取所述主查询结构的字段信息,对所述字段信息进行类型识别,输出与所述主查询结构对应的第二字段信息。
168.在一种可选实施例中,所述响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息,包括:
169.响应针对所述初始指标列信息的信息配置操作,获取与所述信息配置操作对应的配置信息,所述配置信息至少包括针对所述第一字段信息的第一字段名称以及第一字段类型,以及针对所述第二字段信息的第二字段名称以及第二字段类型;
170.采用所述第一字段名称与所述第一字段类型,将所述第一字段信息调整为第一目标字段信息;
171.采用所述第二字段名称与所述第二字段类型,将所述第二字段信息调整为第二目标字段信息。
172.在一种可选实施例中,所述将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板,包括:
173.将所述目标指标列信息添加至所述数据查询模板,更新所述初始指标列信息;
174.获取针对所述主查询结构的主查询信息,以及针对所述子查询结构的子查询信息,所述主查询信息至少包括主查询维度以及主查询标识,所述子查询信息至少包括子查询维度以及子查询信息;
175.确定所述主查询结构对应的主查询语法树,以及所述子查询结构对应的子查询语法树;
176.将所述主查询维度与所述主查询结构关联,并将所述主查询标识添加至所述主查询语法树,将所述子查询维度与所述子查询结构关联,以及将所述子查询标识添加至所述子查询语法树,生成结构化查询模板。
177.在一种可选实施例中,还包括:
178.响应于数据分析操作,获取与所述数据分析操作对应的查询信息,所述查询信息至少包括查询指标以及查询维度;
179.将所述查询指标与所述查询维度输入所述结构化查询模板;
180.若所述查询维度与所述第一目标字段信息匹配成功,则确定与所述子查询维度对应的第一维度表,并从所述第一维度表中获取与所述查询维度匹配的子查询结果;
181.若所述查询指标与所述第二目标字段信息匹配成功,则从所述查询结果中提取与所述查询指标匹配的主查询结果;
182.采用所述子查询结果与所述子查询结果,生成与所述数据分析操作对应的数据分析结果。
183.上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
184.通信接口用于上述终端与其他设备之间的通信。
185.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
186.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
187.如图5所示,在本技术提供的又一实施例中,还提供了一种计算机可读存储介质501,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中所述的数据处理方法。
188.在本技术提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中所述的数据处理方法。
189.在本技术提供的又一实施例中,还提供了一种软件产品,包括计算机程序/指令,其中,当所述计算机程序/指令被执行时,实现执行上述实施例中所述的数据处理方法。
190.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
191.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
192.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
193.以上所述仅为本技术的较佳实施例而已,并非用于限定本技术的保护范围。凡在本技术的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本技术的保护范围内。
技术特征:
1.一种数据处理方法,其特征在于,包括:获取指标信息以及数据查询模板;根据所述指标信息与所述数据查询模板,输出初始指标列信息;响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。2.根据权利要求1所述的方法,其特征在于,所述数据查询模板包括主查询结构以及子查询结构,所述根据所述指标信息与所述数据查询模板,输出初始指标列信息,包括:将所述指标信息输入所述数据查询模板,生成初始查询模板;响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述子查询结构对应的第一字段信息以及与所述主查询结构对应的第二字段信息。3.根据权利要求2所述的方法,其特征在于,所述响应针对所述初始查询模板的运行指令,对所述初始查询模板进行校验,并输出与所述主查询结构对应的第一字段信息以及与所述子结构对应的第二字段信息,包括:响应针对所述初始查询模板的运行指令,获取所述初始查询模板的目标语法树;若所述目标语法树包括子查询语法树,则对所述子查询语法树进行字段识别,输出与所述子查询结构对应的第一字段信息;获取所述主查询结构的字段信息,对所述字段信息进行类型识别,输出与所述主查询结构对应的第二字段信息。4.根据权利要求2或3所述的方法,其特征在于,所述响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息,包括:响应针对所述初始指标列信息的信息配置操作,获取与所述信息配置操作对应的配置信息,所述配置信息至少包括针对所述第一字段信息的第一字段名称以及第一字段类型,以及针对所述第二字段信息的第二字段名称以及第二字段类型;采用所述第一字段名称与所述第一字段类型,将所述第一字段信息调整为第一目标字段信息;采用所述第二字段名称与所述第二字段类型,将所述第二字段信息调整为第二目标字段信息。5.根据权利要求4所述的方法,其特征在于,所述将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板,包括:将所述目标指标列信息添加至所述数据查询模板,更新所述初始指标列信息;获取针对所述主查询结构的主查询信息,以及针对所述子查询结构的子查询信息,所述主查询信息至少包括主查询维度以及主查询标识,所述子查询信息至少包括子查询维度以及子查询信息;确定所述主查询结构对应的主查询语法树,以及所述子查询结构对应的子查询语法树;将所述主查询维度与所述主查询结构关联,并将所述主查询标识添加至所述主查询语法树,将所述子查询维度与所述子查询结构关联,以及将所述子查询标识添加至所述子查
询语法树,生成结构化查询模板。6.根据权利要求5所述的方法,其特征在于,还包括:响应于数据分析操作,获取与所述数据分析操作对应的查询信息,所述查询信息至少包括查询指标以及查询维度;将所述查询指标与所述查询维度输入所述结构化查询模板;若所述查询维度与所述第一目标字段信息匹配成功,则确定与所述子查询维度对应的第一维度表,并从所述第一维度表中获取与所述查询维度匹配的子查询结果;若所述查询指标与所述第二目标字段信息匹配成功,则从所述查询结果中提取与所述查询指标匹配的主查询结果;采用所述子查询结果与所述子查询结果,生成与所述数据分析操作对应的数据分析结果。7.一种数据处理装置,其特征在于,包括:内容获取模块,用于获取指标信息以及数据查询模板;指标列信息输出模块,用于根据所述指标信息与所述数据查询模板,输出初始指标列信息;指标列信息调整模块,用于响应针对所述初始指标列信息的信息配置操作,将所述初始指标列信息调整为与所述信息配置操作对应的目标指标列信息;查询模板生成模块,用于将所述目标指标列信息添加至所述数据查询模板,生成结构化查询模板。8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-6任一项所述的方法。9.一个或多个计算机可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-6任一项所述的方法。10.一种软件产品,包括计算机程序/指令,其中,当所述计算机程序/指令被执行时,实现执行如权利要求1-6中任一项所述的方法。
技术总结
本申请实施例提供了一种数据处理方法、装置、设备、可读介质及软件产品,所述方法包括:在数据查询的过程中,尤其是在配置结构化查询模板的过程中,可以通过获取指标信息以及数据查询模板,接着可以根据指标信息与数据查询模板,输出初始指标列信息,通过解析出指标列信息,使得研发人员能够了解指标信息所对应的查询内容,接着可以对初始指标列信息进行配置,将初始指标列信息调整为目标指标列信息,通过对指标列信息进行调整,实现在模板中更加清楚地描述指标的信息,然后将目标指标列信息添加至数据查询模板中,更新查询模板,生成结构化查询模板,使得数据分析人员可以通过该结构化查询模板进行数据查询。查询模板进行数据查询。查询模板进行数据查询。
技术研发人员:张世其 项欢
受保护的技术使用者:浙江菜鸟供应链管理有限公司
技术研发日:2021.12.28
技术公布日:2023/7/11
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/