本发明涉及大数据分析领域,具体涉及一种事件分析方法、装置和系统。
背景技术:
1、数据埋点是一种常用的采集用户数据的方式,互联网企业的产品人员和运营人员可以系统性的分析复杂的用户数据,便于分析了解用户行为与洞察用户偏好。事件分析是其中常用的一类数据分析,事件分析本质上是分析埋点事件的用户触发情况以及埋点事件的分析统计情况。事件又分为元事件和虚拟事件,事件分析方法是根据所选单个或者多个元事件(元事件指埋点真实存在的埋点事件,不经过任何二次处理,比如埋了一个app启动事件,统计app启动次数的事件即元事件)、虚拟事件(基于元事件进行算法推导、计算得出的事件,比如创建一个虚拟事件,算法为app启动事件的次数/app元素点击的次数)或者属性层面指标(总次数、用户数等)进行组合分析。
2、现有技术在进行事件分析时,用户只能从数据库中调取元事件,现有数据库系统不具备直接处理虚拟事件的能力,若想进行复杂的虚拟事件分析,则需要进行手动记录元事件相关数据,然后手动操作元事件之间的加减乘除运算,再得到用于事件分析的计算结果,在企业的分析任务较多时严重降低了事件分析的效率。
技术实现思路
1、有鉴于此,本发明实施方式提供了一种事件分析方法、装置和电子设备,从而提高了自定义事件分析的效率。
2、根据第一方面,本发明实施例提供了一种事件分析方法,应用于服务端,所述方法包括:接收客户端发送的分析请求,并解析出所述分析请求中的元事件和计算规则;基于解析出的元事件和计算规则生成操作指令;利用所述操作指令从数据库中读取所述元事件对应的运行数据,并将所述运行数据按照所述计算规则进行计算,得到计算结果。
3、可选地,所述解析出所述分析请求中的元事件和计算规则,包括:提取所述分析请求中的分析表达式,并对所述分析表达式中的运算符号进行格式校验;若格式校验通过,则校验所述分析表达式中元事件扩展名是否符合预设条件;若扩展名校验通过,则校验所述分析表达式中元事件的id是否满足第二预设条件;若元事件的id校验通过,则从所述分析表达式中解析出所述元事件和所述计算规则。
4、可选地,基于解析出的元事件和计算规则生成操作指令,包括:基于解析出的元事件生成用于从数据库读取所述运行数据的数据库读取指令;基于所述计算规则生成用于将所述运行数据进行计算的运算指令;将所述数据库读取指令和所述运算指令按照所述计算规则中的计算顺序进行组合,生成所述操作指令。
5、可选地,所述方法还包括:基于所述分析请求生成请求标识,并将所述请求标识发送至所述客户端;将中间结果和所述计算结果均与所述请求标识进行关联,并存储关联后的所述计算结果与所述中间结果,所述中间结果是操作指令执行运算时生成的中间量。
6、可选地,所述方法还包括:接收所述客户端发送的查询请求,所述查询请求中包括所述分析请求的请求标识;获取所述请求标识对应的计算结果和/或中间结果;基于所述请求标识对应的计算结果和/或中间结果判断当前计算进度;若所述当前计算进度达到预设进度,则将所述计算结果和/或中间结果反馈至所述客户端。
7、根据第二方面,本发明实施例提供了一种事件分析方法,应用于客户端,所述方法包括:展示事件分析页面,并接收基于所述事件分析页面输入的筛选条件,所述筛选条件用于表征当前事件分析涉及的元事件和计算规则;响应于所述筛选条件生成对应的分析请求,并将所述分析请求发送至服务端,以使所述服务端解析出所述分析请求中的元事件和计算规则,之后基于解析出的元事件和计算规则生成操作指令,然后利用所述操作指令从数据库中读取所述元事件对应的运行数据,并将所述运行数据按照所述计算规则进行计算,得到计算结果。
8、可选地,所述方法还包括:接收所述服务端返回的请求标识,所述请求标识是所述服务端基于所述分析请求生成的唯一标识;接收基于所述请求标识输入的查询请求,并将带有所述请求标识的查询请求发送至所述服务端,以使所述服务端获取所述请求标识对应的计算结果和/或所述操作指令执行运算时生成的中间结果;接收所述服务端基于所述查询请求返回的所述计算结果和/或所述中间结果。
9、根据第三方面,本发明实施例提供了一种事件分析装置,应用于服务端,所述装置包括:分析请求模块,用于接收客户端发送的分析请求,并解析出所述分析请求中的元事件和计算规则;指令创建模块,用于基于解析出的元事件和计算规则生成操作指令;事件分析模块,用于利用所述操作指令从数据库中读取所述元事件对应的运行数据,并将所述运行数据按照所述计算规则进行计算,得到计算结果。
10、根据第四方面,本发明实施例提供了一种事件分析装置,应用于客户端,所述装置包括:交互模块,用于展示事件分析页面,并接收基于所述事件分析页面输入的筛选条件,所述筛选条件用于表征当前事件分析涉及的元事件和计算规则;第二分析请求模块,用于响应于所述筛选条件生成对应的分析请求,并将所述分析请求发送至服务端,以使所述服务端解析出所述分析请求中的元事件和计算规则,之后基于解析出的元事件和计算规则生成操作指令,然后利用所述操作指令从数据库中读取所述元事件对应的运行数据,并将所述运行数据按照所述计算规则进行合并计算,得到计算结果。
11、根据第五方面,本发明实施例提供了一种事件分析系统,至少包括服务端和客户端,其中:所述客户端展示事件分析页面,并接收基于所述事件分析页面输入的筛选条件,所述筛选条件用于表征当前事件分析涉及的元事件和计算规则;所述客户端响应于所述筛选条件生成对应的分析请求,并将所述分析请求发送至所述服务端;所述服务端接收客户端发送的分析请求,并解析出所述分析请求中的元事件和计算规则;所述服务端基于解析出的元事件和计算规则生成操作指令;所述服务端利用所述操作指令从数据库中读取所述元事件对应的运行数据,并将所述运行数据按照所述计算规则进行合并计算,得到计算结果。
12、本申请提供的技术方案,具有如下优点:
13、本申请提供的技术方案,应用于客户端和服务端两个设备,客户端与服务端之间建立通信连接,当用户需要进行事件分析时,用户输入分析请求到客户端,然后客户端将分析请求发送到服务端,服务端对分析请求进行解析,解析出其中涉及到的元事件和元事件之间进行计算的计算规则。然后按照预设的代码生成规则生成与分析请求对应的操作指令。之后,服务端运行操作指令,从数据库中调取元事件对应的运行数据,并按照计算规则将运行数据代入计算公式进行加、减、乘、除等综合运算,从而得到虚拟事件对应的计算结果。无需人工手动记录元事件的运行数据,也无需基于运行数据手工进行综合计算,在企业内部进行大量虚拟事件分析时,能够大幅度提高事件分析效率。
1.一种事件分析方法,其特征在于,应用于服务端,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述解析出所述分析请求中的元事件和计算规则,包括:
3.根据权利要求1所述的方法,其特征在于,基于解析出的元事件和计算规则生成操作指令,包括:
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
6.一种事件分析方法,其特征在于,应用于客户端,所述方法包括:
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
8.一种事件分析装置,其特征在于,应用于服务端,所述装置包括:
9.一种事件分析装置,其特征在于,应用于客户端,所述装置包括:
10.一种事件分析系统,其特征在于,至少包括服务端和客户端,其中: