CN113901153A - 数据处理方法及相关设备 - Google Patents
数据处理方法及相关设备 Download PDFInfo
- Publication number
- CN113901153A CN113901153A CN202111204173.1A CN202111204173A CN113901153A CN 113901153 A CN113901153 A CN 113901153A CN 202111204173 A CN202111204173 A CN 202111204173A CN 113901153 A CN113901153 A CN 113901153A
- Authority
- CN
- China
- Prior art keywords
- point data
- buried point
- data
- target
- calculation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/283—Multi-dimensional databases or data warehouses, e.g. MOLAP or ROLAP
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3624—Software debugging by performing operations on the source code, e.g. via a compiler
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
Abstract
本发明提供一种数据处理方法及相关设备,该方法包括:获取多个埋点数据;确定每一埋点数据对应的计算类型,根据埋点数据对应的计算类型确定目标埋点数据;或者,确定每一埋点数据对应的计算类型和计算规则,根据埋点数据对应的计算类型以及计算规则确定目标埋点数据;对埋点数据和目标埋点数据进行处理,生成业务指标。上述过程中,不需要配置从库或者数据仓库用于存储系统的运行数据,并对运行数据进行相关计算,来得到业务指标。由于本发明实施例涉及的各个步骤中不需要配置从库或者数据仓库,因此极大的降低了系统的运行成本。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种数据处理方法及相关设备。
背景技术
目前,在多个系统协同工作的微服务架构中,用户的一次行为往往涉及多个系统的调用。通过配置数据库存储多个系统产生的运行数据,对数据库中的运行数据执行查询操作,生成可以反映用户行为的业务指标,以此对用户行为进行分析和监控。当存在异常用户行为时,例如用户在短时间内登陆次数过多,发出告警信息。
然而,为了不影响微服务架构的稳定性以及存储大量的运行数据,往往需要配置从库或者数据仓库用于存储多个系统产生的运行数据,这增加了系统的运行成本。
发明内容
本发明实施例提供一种数据处理方法及相关设备,以解决现有技术中通过运行数据对用户行为进行分析,这需要配置从库或者数据仓库对运行数据进行存储,增加了系统的运行成本的技术问题。
第一方面,本发明实施例提供了一种数据处理方法,包括:
获取多个埋点数据,所述埋点数据用于表征用户的操作行为;
确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
或者,确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;
其中,所述目标埋点数据为与所述埋点数据的计算类型相关联的至少部分埋点数据;对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,其中,所述业务指标用于表征第一预设时长内的用户行为。
第二方面,本发明实施例提供了一种数据处理系统,包括:
中间件,用于将埋点数据发送至处理系统;
监控平台,用于将每一所述埋点数据对应的计算类型和计算规则,发送至所述处理系统;
搜索引擎,用于存储并显示所述处理系统生成的业务指标;
所述处理系统,用于实现上述数据处理方法的步骤。
第三方面,本发明实施例提供了一种数据处理装置,包括:
获取模块,用于获取多个埋点数据,所述埋点数据用于表征用户的操作行为;
第一确定模块,用于确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
第二确定模块,用于确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;其中,所述目标埋点数据为与所述埋点数据的计算类型相关联的至少部分埋点数据;
处理模块,用于对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,其中,所述业务指标用于表征第一预设时长内的用户行为。
第四方面,本发明实施例提供了一种服务器,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述数据处理方法的步骤。
第五方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述数据处理方法的步骤。
本发明实施例中,获取多个埋点数据;确定每一埋点数据对应的计算类型;根据埋点数据对应的计算类型确定目标埋点数据;或者,确定每一埋点数据对应的计算类型和计算规则,根据埋点数据对应的计算类型以及计算规则确定目标埋点数据;对埋点数据和目标埋点数据进行处理,生成业务指标。上述过程中,通过获取表征用户操作行为的埋点数据,确定每一埋点数据对应的计算类型和计算规则,进而对每一埋点数据和每一埋点数据对应的目标埋点数据进行处理,生成业务指标。而不需要配置从库或者数据仓库用于存储系统的运行数据,并对运行数据进行相关计算,来得到业务指标。由于本发明实施例涉及的各个步骤中不需要配置从库或者数据仓库,因此极大的降低了系统的运行成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据处理方法的流程图;
图2是本发明实施例提供的数据处理方法的应用场景示意图之一;
图3是本发明实施例提供的数据处理方法的应用场景示意图之二;
图4是本发明实施例提供的数据处理系统的结构图;
图5是本发明实施例提供的数据处理装置的结构图;
图6是本发明实施例提供的服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
相关技术中,针对多个系统协同工作的微服务架构,对用户行为进行分析和监控的方法通常为,配置从库或者数据仓库用于存储多个系统产生的运行数据,对运行数据执行查询操作,生成可以反映用户行为的业务指标。
然而,上述实施方式要求配置从库或者数据仓库,这增加了系统的运行成本,且需要配置专门的查询语句对数据库中的运行数据执行查询操作,这提高了对用户行为进行监控和分析的技术难度。
基于上述存在的技术问题,本发明实施例提供了一种数据处理方法,参见图1,图1是本发明实施例提供的一种数据处理方法的流程图,如图1所示,包括以下步骤:
101,获取多个埋点数据。
应理解,在多个系统协同工作的微服务架构中,用户的一次操作行为会产生一个或多个埋点数据。上述操作行为包括但不限于:应用调用、页面浏览、数据流转和系统内部调用。埋点数据是通过编码的方式生成的一些与用户操作行为相关的数据,也就是说,埋点数据用于表征用户的操作行为。
本步骤中,在产生埋点数据后,可以直接获取埋点数据,或者,将埋点数据存储至消息队列中,从消息队列中依次读取埋点数据。上述消息队列可以是中间件,也就是说,将产生的埋点数据存储至中间件,利用流作业的方式,从中间件获取埋点数据。
102,确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据。
需要说明的是,每个埋点数据均包括事件名称。其中,事件名称又称为事件,事件是埋点数据的最小数据单元,代表一个具体的业务过程、业务操作、业务状态或者数据变动。每个事件都有独有的内容,遵从相同的数据结构。比如用户点击手机应用上的登录按钮,会调用后台的登录服务,这样,会产生埋点数据,可以定义这些埋点数据对应的事件名称为登陆事件。
埋点数据还包括事件属性,事件属性代表事件的详细数据,一个事件对应多个事件属性。在埋点数据中,事件属性的数据类型是固定的,包括数字、字符串、时间戳、布尔值四种。以登录事件为例,该登陆事件的事件属性包含登录的手机类型、登录方式、手机系统类型、登录结果等。
埋点数据还包括查看维度。例如,登陆事件包括手机系统类型这一属性,若查看维度为手机系统类型,并计算每分钟总数,则表示统计在每分钟内,各个手机系统的用户登陆总数。
本步骤中,在得到埋点数据后,一种可选的实施方式为,基于埋点数据的事件名称,确定每一埋点数据对应的计算类型。其中,计算类型包括单个事件类型和联合事件类型,单个事件类型表示该埋点数据只与具有相同事件属性的其他埋点数据进行聚合计算。例如计算一分钟内用户的登陆次数,这种情况下,要求对一分钟内获取到的具有登陆操作这一属性的埋点数据进行求和。
联合事件类型表示该埋点数据与具有不同事件属性的其他埋点数据进行聚合计算。例如计算一分钟内用户的登陆成功率,这种情况下,要求对一分钟内获取到的具有登陆操作这一属性的埋点数据进行求和,得到一分钟内的登陆总次数;并且,对一分钟内获取到的具有登陆成功这一属性的埋点数据进行求和,得到一分钟内的登陆成功次数;进而将登陆成功次数与登陆总次数做除法运算,得到登陆成功率。
一种可选的实施方式为,在埋点数据对应的计算类型表征对同一事件属性相同的埋点数据进行处理的情况下,可以根据埋点数据对应的计算类型确定与该埋点数据对应的目标埋点数据。其中,目标埋点数据为与埋点数据的计算类型相关联的至少部分埋点数据。
103,确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据。
本步骤中,在得到埋点数据后,一种可选的实施方式为,基于埋点数据的事件名称,确定每一埋点数据对应的计算类型和计算规则。其中,计算规则是用户预先设置的,计算规则以字段的形式表示,每个埋点数据对应的计算规则可以相同也可以不同,应理解,在对多个埋点数据进行单个事件类型的聚合处理时,这些埋点数据的计算规则是相同的。
另一种可选的实施方式为,在埋点数据对应的计算类型表征对不同事件属性相同的埋点数据进行处理的情况下,根据埋点数据对应的计算类型以及计算规则确定与该埋点数据对应的目标埋点数据,具体的实施方式,请参见后续实施例。
104,对所述埋点数据和目标埋点数据进行处理,生成业务指标。
其中,上述业务指标用于表征第一预设时长内的用户行为。示例性的,上述业务指标可以为一串字符串,该字符串表征用户在一分钟内的登陆次数。
这里,具体的对埋点数据和目标埋点数据进行聚合处理,生成业务指标的技术方案,请参阅后续实施例。
请参阅图2,图2是本发明实施例提供的数据处理方法的应用场景示意图之一。本实施例提供的数据处理方法可以应用在数据处理系统上,该系统包括中间件、监控平台、搜索引擎和数据处理系统。
其中,上述中间件可以是kafka中间件,上述搜索引擎可以是ES搜索引擎,上述数据处理系统可以是flink系统。
如图2所示,当用户产生操作行为时,产生埋点数据至kafka中间件,应理解,上述操作行为可以是应用调用、页面浏览、数据流转和系统内部调用中的至少一种。Kafka中间件将埋点数据发送给flink系统。对于每个埋点数据,flink系统从监控平台获取该埋点数据对应的计算规则,可选的,flink系统将该埋点数据中的事件名称发送至监控平台,该监控平台反馈该事件名称对应的计算规则,容易理解的是,监控平台存储有事件名称与计算规则之间的映射关系。flink系统得到计算规则后,使用计算规则对多个关联的埋点数据进行计算,生成业务指标。随后,flink系统将业务指标发送至ES搜索引擎,ES搜索引擎可以显示所有的业务指标,并且,可以对这些业务指标进行相应的配置,在业务指标的值大于预设阈值的情况下,表示系统存在异常,ES搜索引擎发出告警信息。
进一步的,请参阅图3,图3是本发明实施例提供的数据处理方法的应用场景示意图之二。如图3所示,可能存在的应用场景为:当用户产生操作行为时,产生埋点数据,将埋点数据存储至预设的消息队列中。在消息队列中按照埋点数据的存储时间先后顺序,依次读取埋点数据,并获取当前读取到的埋点数据对应的计算规则。其中,可以通过上述图2示出场景中相同的方式,基于埋点数据中的事件名称,获取埋点数据对应的计算规则。进一步的,使用该计算规则对该埋点数据进行计算,得到业务指标。在生成业务指标后,保存该业务指标,示例性的,可以将该业务指标保存至预设的数据库,或者,保存至ES搜索引擎。
本发明实施例中,获取多个埋点数据;确定每一埋点数据对应的计算类型;根据埋点数据对应的计算类型确定目标埋点数据;或者,确定每一埋点数据对应的计算类型和计算规则,根据埋点数据对应的计算类型以及计算规则确定目标埋点数据;对埋点数据和目标埋点数据进行处理,生成业务指标。上述过程中,通过获取表征用户操作行为的埋点数据,确定每一埋点数据对应的计算类型和计算规则,进而对每一埋点数据和每一埋点数据对应的目标埋点数据进行处理,生成业务指标。从而不需要配置从库或者数据仓库用于存储系统的运行数据,并对运行数据进行相关计算,来得到业务指标。由于本发明实施例涉及的各个步骤中不需要配置从库或者数据仓库,因此极大的降低了系统的运行成本。
可选地,确定每一所述埋点数据对应的计算类型和计算规则的方式,包括:
根据所述埋点数据的事件名称在预设的键值数据库中进行查询,获得所述埋点数据对应的计算类型以及计算规则。
本实施例中,预先设置有键值数据库,该键值数据库可以是Redis。在图2示出的应用场景中,可以设置监控系统包括该键值数据库。其中,该键值数据库存储有事件名称、计算类型和计算规则这三者之间的映射关系。
示例性的,键值数据库中的存储数据可以是以下形式:事件名称_计算类型;{指标名称,计算KEY}。
上述计算KEY的生成过程为:设置一个字符串表示埋点数据中的事件名称、埋点数据中的属性字段、预设的聚合规则、预设的筛选规则和预设的查看维度,对该字符串进行哈希编码,得到该字符串对应的哈希值,将上述哈希值作为预设的转换函数的输入,得到一个8位的字符串,将这8位的字符串确定为计算KEY。
若存在2个埋点数据对应的计算KEY相同,指标名称不相同时,则在这2个埋点数据的聚合处理中,由于这2个埋点数据的计算规则相同,因此只需进行一次计算,不需要分别对这2个埋点数据的相关数据内容进行计算,以此减少聚合处理过程中的计算量。
上述指标名称是预设的聚合规则中设定的名称。可以将上述预设的聚合规则、预设的筛选规则和预设的查看维度作为计算规则。
本实施例中,在获取到埋点数据后,将埋点数据的事件名称输入至预设的键值数据库中查询,得到埋点数据对应的计算类型和计算规则,其中,可以通过解析计算KEY,得到该计算规则。
可选地,所述根据所述埋点数据对应的计算类型确定目标埋点数据包括:
若所述埋点数据对应的计算类型用于表征对事件属性相同的埋点数据进行处理,则将计算类型和事件属性都相同的埋点数据确定为目标埋点数据。
本实施例中,在键值数据库中,可以设置计算类型为0,以此表示该计算类型表征对事件属性相同的埋点数据进行聚合处理。
在埋点数据的计算类型为0的情况下,可以将获取到的计算类型也为0,且具有相同事件属性的埋点数据确定为目标埋点数据,进一步的,对埋点数据和目标埋点数据进行聚合处理,生成业务指标。
应理解,上述聚合处理的方式可以是对埋点数据的个数与目标埋点数据的个数进行加法运算,或者,对埋点数据的个数与目标埋点数据的个数进行减法运算,或者,对埋点数据的个数与目标埋点数据的个数进行乘法运算,或者,对埋点数据的个数与目标埋点数据的个数进行除法运算,或者,对埋点数据的个数与目标埋点数据的个数进行计数统计。应理解,聚合处理具体的计算方式由埋点数据对应的计算规则设定。
本实施例中,在埋点数据的计算类型表征对事件属性相同的埋点数据进行聚合处理的情况下,定义了对这部分埋点数据进行聚合处理的方式,以此生成可以表征用户行为的业务指标。
为便于理解,请参阅以下示例:
埋点数据的计算类型为0,埋点数据的计算规则表征统计每个手机系统登录的用户次数,埋点数据的事件名称为“登录事件”,埋点数据的事件属性为“手机系统”,且埋点数据的查看维度为“安卓系统”。也就是说,1个埋点数据表示的用户行为是,用户使用了手机系统为安卓系统的手机登陆了1次应用。
这种情况下,可以统计1分钟内获取到的埋点数据的数量,基于埋点数据的数量生成第一键值数据,该键值数据中的key表示埋点数据的查看维度,value表示登陆次数。
目标埋点数据的计算类型为0,目标埋点数据的计算规则表征统计每个手机系统登录的用户次数,目标埋点数据的事件名称为“登录事件”,目标埋点数据的事件属性为“手机系统”,且目标埋点数据的查看维度为“IOS系统”。也就是说,1个目标埋点数据表示的用户行为是,用户使用了手机系统为IOS系统的手机登陆了1次应用。
这种情况下,可以统计1分钟内获取到的目标埋点数据的数量,基于目标埋点数据的数量生成第二键值数据,该键值数据中的key表示目标埋点数据的查看维度,value表示登陆次数。
对上述第一键值数据和第二键值数据进行聚合处理,得到业务指标,该业务指标表征在一分钟内,用户使用IOS系统的手机登陆的次数和使用安卓系统的手机登陆的次数。
可选地,所述根据每一所述埋点数据对应的计算类型以及计算规则确定与该埋点数据对应的目标埋点数据,包括:
在每一所述埋点数据对应的计算类型用于表征对事件属性不同的埋点数据进行处理的情况下,将事件属性为所述目标事件属性的埋点数据确定为所述目标埋点数据。
本实施例中,在键值数据库中,可以设置计算类型为1或2,在对埋点数据进行聚合处理的过程中,对计算类型为1的埋点数据和与该埋点数据关联的计算类型为2的目标埋点数据进行联合计算,生成业务指标。
在确定埋点数据的计算类型表征联合计算的情况下,埋点数据的计算规则包括目标事件属性,上述目标事件属性也就是计算规则预先设定的与该埋点数据进行联合计算的目标埋点数据的事件属性,进而将包括该事件属性的埋点数据确定为目标埋点数据。
利用计算规则,生成埋点数据对应的第一聚合数据和目标埋点数据对应的第二聚合数据。应理解,聚合数据包括指标名称,该指标名称由计算规则设定,且第一聚合数据和第二聚合数据的指标名称相同,这样,可以对合并指标名称相同的聚合数据,得到业务指标。
本实施例中,在埋点数据的计算类型表征联合计算的情况下,定义了对这部分埋点数据进行聚合处理的方式,以此生成可以表征用户行为的业务指标。
为便于理解,请参阅以下示例:
埋点数据的计算类型为1,埋点数据的计算规则表征统计用户使用每个手机系统进行登录的登陆成功率,埋点数据的事件名称为“登录事件”,埋点数据的事件属性为“手机系统”,且埋点数据的查看维度为“系统的登陆成功数”。也就是说,1个埋点数据表示的用户行为是,用户使用手机成功登陆一次。
这种情况下,可以统计1分钟内获取到的埋点数据的数量,基于埋点数据的数量生成第一聚合数据。第一聚合数据包括指标名称,该指标名称可以是计算规则中预先设置的loginSuccessRate这一字段。应理解,根据事件属性的不同,可以将第一聚合数据分为2类,第一类第一聚合数据表征用户使用手机系统为安卓的手机成功登陆的次数,第二类第一聚合数据表征用户使用手机系统为IOS的手机成功登陆的次数。
目标埋点数据的计算类型为2,目标埋点数据的计算规则表征统计用户使用每个手机系统进行登录的登陆成功率,目标埋点数据的事件名称为“登录事件”,目标埋点数据的事件属性为“手机系统”,且目标埋点数据的查看维度为“系统的登陆总数”。也就是说,1个目标埋点数据表示的用户行为是,用户使用手机登陆一次。
这种情况下,可以统计1分钟内获取到的目标埋点数据的数量,基于目标埋点数据的数量生成第二聚合数据。第二聚合数据包括指标名称,该指标名称可以是预先设置的与第一聚合数据的指标名称相同的loginSuccessRate这一字段。应理解,根据事件属性的不同,可以将第二聚合数据分为两类,第一类第二聚合数据表征用户使用手机系统为安卓的手机登陆的总数,第二类第二聚合数据表征用户使用手机系统为IOS的手机登陆的总数。
将指标名称相同的第一聚合数据和第二聚合数据做除法运算,即用户成功登陆的次数与用户登陆总数相除,得到表征用户登陆成功率的业务指标。应理解,在合并第一聚合数据与第二聚合数据的过程中,也可以将第一类第一聚合数据与第一类第二聚合数据做除法运算,以使得生成的业务指标表征安卓系统的手机对应的登陆成功率;当然,也可以将第二类第一聚合数据与第二类第二聚合数据做除法运算,以使得生成的业务指标表征IOS系统的手机对应的登陆成功率。
可选地,所述方法还包括:
生成每一第一埋点数据对应的第一目标数据;
生成每一所述目标埋点数据所对应的第二目标数据;
所述对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,包括:
对所述第一原始值和所述第二原始值进行处理,生成所述业务指标。
本实施例中,在埋点数据的计算类型表征联合计算,即埋点数据的计算类型在键值数据库中的值为1或2,且埋点数据的计算规则包括目标字段,即计算规则中的部分字段为预设字段,该目标字段用于表征对第一埋点数据和目标埋点数据进行原始值计算的情况下,生成每一第一埋点数据对应的第一目标数据,以及每一目标埋点数据所对应的第二目标数据。其中,第一埋点数据为非目标埋点数据。
应理解,确定目标埋点数据的方式与上述根据埋点数据对应的计算类型以及计算规则确定目标埋点数据的方式一致,在此不做重复阐述。
本实施例中,上述第一目标数据包括关联字段和第一原始值,上述第二目标数据包括关联字段和第二原始值。上述关联字段用于关联第一目标数据和第二目标数据,以使得对第一目标数据和第二目标数据进行原始值计算,上述关联字段可以是计算规则中的部分字段。上述第一原始值为第一埋点数据的事件属性对应的值,上述第二原始值为第二埋点数据的事件属性对应的值。
进一步的,利用计算规则,对第一原始值和第二原始值进行处理,生成业务指标。其中,通过原始值计算得到的业务指标对应的计算窗口可以设定为十分钟,即可以对十分钟内获取到的埋点数据进行原始值计算,生成业务指标。上述第一原始值和第二原始值的计算过程可以是,对第一原始值和第二原始值进行加权求和;或者对第一原始值和第二原始值进行聚合处理,例如,对第一原始值和第二原始值进行加法运算,对第一原始值和第二原始值进行减法运算,对第一原始值和第二原始值进行乘法运算,对第一原始值和第二原始值进行除法运算;或者对第一原始值和第二原始值进行其他方式的计算。
本实施例中,在埋点数据的计算类型表征联合计算,且计算规则表征原始值计算的情况下,定义了对这部分埋点数据进行聚合处理的方式,以此生成可以表征用户行为的业务指标。
为便于理解,请参阅以下示例:
一种实施场景为,用户登录失败之后需要短信校验,短信发送时间到登录失败时间之间的时间间隔可以反应短信平台的服务能力,可以使用一个业务指标表征短信发送时间到登录失败时间之间的时间间隔,该业务指标对应的计算规则为发送短信事件的发送时间减去登录失败事件的登录时间,上述计算规则也是该业务指标关联的埋点数据对应的计算规则。发送短信事件和登录失败事件通过用户名称关联,即可以将关联key设置为用户名称。
这种场景下,埋点数据的计算类型为1,埋点数据的计算规则表征短信发送时间到登录失败时间之间的时间间隔,埋点数据的事件名称为“登陆失败事件”,埋点数据的事件属性为“登陆失败的时间”,也就是说,1个埋点数据表示用户登陆失败的时间。
利用计算规则,生成埋点数据对应的第一目标数据,第一目标数据包括关联key和第一原始值,关联key可以是计算规则中预先设置的“msgTime_1”字段,第一原始值可以是2100,该第一目标数据表征用户名称为1的用户在21:00登陆失败。
目标埋点数据的计算类型为2,目标埋点数据的计算规则表征短信发送时间到登录失败时间之间的时间间隔,目标埋点数据的事件名称为“发送短信事件”,目标埋点数据的事件属性为“发送短信的时间”,也就是说,1个目标埋点数据表示短信平台发送短信的时间。其中,计算规则中预先设置有目标埋点数据的事件属性,以此可以基于计算规则确定目标埋点数据。
利用计算规则,生成目标埋点数据对应的第二目标数据,第二目标数据包括关联key和第二原始值,关联key可以是计算规则中预先设置的“msgTime_1”字段,第二原始值可以是2105,该目标埋点数据表征短信平台在21:05向用户名称为1的用户发送短信。
如上所述,计算规则表征发送短信事件的发送时间减去登录失败事件的登录时间,因此可以将第二原始值减去第一原始值,生成业务指标,该业务指标表征短信发送时间到登录失败时间之间的时间间隔为5分钟。
可选地,所述对所述第一原始值和所述第二原始值进行处理,生成所述业务指标之前,上述方法还包括:
在所述计算规则包括第一标识的情况下,将所述关联字段输入至预设的键值数据库中查询,得到目标原始值;
将所述第一原始值更新为所述目标原始值。
上述第一标识可以是计算规则中预先设置的字段,上述第一标识用于更新第一原始值。在计算规则包括第一标识的情况下,将关联字段输入至预设的键值数据库中查询,得到目标原始值,并将第一原始值更新为目标原始值。
其中,键值数据库中存储有关联字段和目标原始值的映射关系,可选的,每获取一个埋点数据,更新键值数据库中存储的目标原始值。
为便于理解,请参阅以下示例:
可能存在的情况为,在十分钟的计算窗口内,用户多次登录失败,可是短信服务平台只发送了一次短信,这种情况下,需要将短信发送时间与最晚的登陆失败时间相减,得到短信发送时间到登录失败时间之间的时间间隔。
用户在十分钟的计算窗口内,登陆失败了3次,这三次登陆失败的时间分别为21:00、21:03和21:07,在这过程中,获取到三个埋点数据,其中,第一个埋点数据表征用户登陆失败的时间为21:00,第二个埋点数据表征用户登陆失败的时间为21:03,第三个埋点数据表征用户登陆失败的时间为21:07。且这三个埋点数据对应的关联字段均相同。
在得到第一个埋点数据的情况下,利用计算规则,得到该埋点数据对应的第一目标数据,并基于第一目标数据中的关联字段,将键值数据库中存储的目标原始值设定为21:00;在得到第二个埋点数据的情况下,通过上述同样的方式,将键值数据库中存储的目标原始值修改为21:03;在得到第三个埋点数据的情况下,通过上述同样的方式,将键值数据库中存储的目标原始值修改为21:07。最终,键值数据库中存储的目标原始值为21:07。
在对第一原始值和第二原始值进行处理的过程中,设定第二原始值为21:10。若计算规则包括第一标识,则将关联字段输入至键值数据库中查询,得到目标原始值21:07,并将第一原始值更新为21:07。随后,将第二原始值减去第一原始值,生成业务指标,该业务指标表征短信发送时间到登录失败时间之间的时间间隔为3分钟。
可选地,所述对所述第一原始值和所述第二原始值进行处理,生成所述业务指标之前,所述方法还包括:
在所述计算规则包括第二标识的情况下,将所述第二目标数据的关联字段输入至预设的键值数据库中进行查询;
若查询到所述键值数据库存在所述关联字段对应的计算标志的情况下,则在所述键值数据库中删除所述计算标志。
上述第二标识可以是计算规则预先设置的字段,第二标识用于判断是否对第一原始值和第二原始值进行处理。在计算规则包括第二标识的情况下,将关联字段输入至预设的键值数据库中查询。若在键值数据库中查询得到该关联字段对应的计算标志,则对第一原始值和第二原始值进行处理,生成业务指标,随后在键值数据库中删除该计算标志。其中,计算标志用于表征对第一原始值和第二原始值进行处理,可选的,计算标志对应的字段与关联字段相同,或者,计算标志对应的部分字段与关联字段相同。
为便于理解,请参阅以下示例:
可能存在的情况为,在十分钟的计算窗口内,用户登陆失败,短信平台发送了2条短信,但用户所使用的用户终端未接收到第1条短信,那么,在计算短信发送时间到登录失败时间之间的时间间隔的过程中,需要将最早的短信发送时间与登录失败时间相减。
用户在21:06登录失败,则第一原始值为21:06。短信平台在21:07发送短信,并在21:08又发送了一条短信,则产生了2个目标埋点数据,其中,第一个目标埋点数据表征短信发送时间为21:07,第二个目标埋点数据表征短信发送时间为21:08。
如上举例,目标埋点数据对应的关联字段可以是“msgTime_1”。基于计算规则中的相关字段的设定,在得到第一个目标埋点数据的情况下,生成计算标志“flag_msgTime_1”,并将该计算标志存储至键值数据库中,为该计算标志赋值“1”,可选的,该计算标志的超时时间为600秒。也就是说,键值数据库中的一个存储数据对应的key为“flag_msgTime_1”,value为“1”。
在对第一原始值和第二原始值进行计算的过程中,若存在多个第二原始值,即第一个第二原始值为2107,第二个第二原始值为2108,则对多个第二原始值按照对应的目标埋点数据的生成时间先后顺序排序。
进一步的,将关联字段输入至键值数据库中,键值数据库存在计算标志,则使用第一个第二原始值减去第一原始值,得到业务指标,该业务指标表征短信发送时间到登录失败时间之间的时间间隔为1分钟。
随后,在键值数据库中删除该计算标志。这样,按照第二原始值的排序对第二个第二原始值进行处理时,由于键值数据库中不存在计算指标,因此不对第二个第二原始值与第一原始值进行计算,就此确定短信发送时间到登录失败时间之间的时间间隔使用唯一的一个业务指标表示,且该业务指标是基于最早的短信发送时间与登录失败时间相减得到的。
可选地,所述生成业务指标之后,所述方法包括:
响应于对所述业务指标的输入,对相同类型的业务指标进行合并处理。
应理解,除了在计算类型表征原始值计算的情况下,得到的业务指标,其余的业务指标对应的计算窗口是一分钟。可以理解为,数据处理系统每次都是基于对一分钟内获取到的多个埋点数据进行聚合处理,生成的业务指标。
例如,在业务指标表征用户登陆次数的情况下,一个业务指标表征用户在1分钟内的登陆次数。
本实施例中,用户可以对数据处理系统执行相关的输入,对多个相同类型的业务指标进行聚合处理,得到的聚合后的业务指标可以表征第二预设时长内的用户行为。
示例性的,若用户想得到表征1个小时内登陆次数的业务指标,则可以执行相关的输入,上述输入可以是编程命令,对60个表征登陆次数的业务指标进行加法运算,得到一个聚合后的业务指标,该业务指标表征用户在1个小时内的登陆次数。
参见图4,图4是本发明实施例提供的数据处理系统的结构图,如图4所示,数据处理系统200包括:
中间件201,用于将埋点数据发送至处理系统204;
监控平台202,用于将每一所述埋点数据对应的计算类型和计算规则,发送至所述处理系统204;
搜索引擎203,用于存储并显示所述处理系统204生成的业务指标;
所述处理系统204,能够实现上述数据处理方法实施例的步骤。
参见图5,图5是本发明实施例提供的数据处理装置的结构图,如图5所示,数据处理装置300包括:
获取模块301,用于获取多个埋点数据;
第一确定模块302,用于确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
第二确定模块303,用于确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;
处理模块304,用于对所述埋点数据和所述目标埋点数据进行处理,生成业务指标。
可选地,所述第一确定模块302,具体用于:
根据所述埋点数据的事件名称在预设的键值数据库中进行查询,获得所述埋点数据对应的计算类型以及计算规则。
可选地,所述第二确定模块303,具体用于:
若所述埋点数据对应的计算类型用于表征对事件属性相同的埋点数据进行处理,则将计算类型和事件属性都相同的埋点数据确定为目标埋点数据。
可选地,所述第二确定模块303,还具体用于:
若每一所述埋点数据对应的计算类型用于表征对事件属性不同的埋点数据进行处理,则将事件属性为所述目标事件属性的埋点数据确定为所述目标埋点数据。
可选地,所述数据处理装置300,还包括:
第一生成模块,生成每一第一埋点数据对应的第一目标数据;
第二生成模块,生成每一所述目标埋点数据所对应的第二目标数据;
所述处理模块304,具体用于:
对所述第一原始值和所述第二原始值进行处理,生成所述业务指标。
可选地,所述数据处理装置300,还包括:
第一查询模块,用于在所述计算规则包括第一标识的情况下,将所述关联字段输入至预设的键值数据库中查询,得到目标原始值;
更新模块,用于将所述第一原始值更新为所述目标原始值。
可选地,所述数据处理装置300,还包括:
第二查询模块,用于在所述计算规则包括第二标识的情况下,将所述关联字段输入至预设的键值数据库中进行查询;
删除模块,用于若查询到所述键值数据库存在所述关联字段对应的计算标志,则在所述键值数据库中删除所述计算标志。
可选地,所述数据处理装置300,还包括:
合并模块,用于响应于对所述业务指标的输入,对相同类型的业务指标进行合并处理。
本发明实施例提供的数据处理装置能够实现如上方法实施例中数据处理方法的各个过程,为避免重复,这里不再赘述。
参见图6,图6是本发明实施例提供的服务器的结构图,如图6所示,该服务器400包括:处理器401、收发机402、存储器403和总线接口,其中:
处理器401,用于执行以下操作:
获取多个埋点数据;
确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
或者,确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;
对所述埋点数据和所述目标埋点数据进行处理,生成业务指标。
应理解,本实施例中,上述处理器401和收发机402能够实现图1的方法实施例中的各个过程,为避免重复,这里不再赘述。
在图6中,总线架构可以包括任意数量的互联的总线和桥,具体由处理器401代表的一个或多个处理器和存储器403代表的存储器的各种电路链接在一起。总线架构还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口提供接口。收发机402可以是多个元件,即包括发送机和接收机,提供用于在传输介质上与各种其他装置通信的单元。针对不同的用户设备,用户接口404还可以是能够外接内接需要设备的接口,连接的设备包括但不限于小键盘、显示器、扬声器、麦克风、操纵杆等。
处理器401负责管理总线架构和通常的处理,存储器403可以存储处理器401在执行操作时所使用的数据。
本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
Claims (12)
1.一种数据处理方法,其特征在于,包括:
获取多个埋点数据,所述埋点数据用于表征用户的操作行为;
确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
或者,确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;
其中,所述目标埋点数据为与所述埋点数据的计算类型相关联的至少部分埋点数据;对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,其中,所述业务指标用于表征第一预设时长内的用户行为。
2.根据权利要求1所述的方法,其特征在于,确定每一所述埋点数据对应的计算类型和计算规则的方式,包括:
根据所述埋点数据的事件名称在预设的键值数据库中进行查询,获得所述埋点数据对应的计算类型以及计算规则。
3.根据权利要求1所述的方法,其特征在于,所述根据所述埋点数据对应的计算类型确定目标埋点数据,包括:
若所述埋点数据对应的计算类型用于表征对事件属性相同的埋点数据进行处理,则将计算类型和事件属性都相同的埋点数据确定为目标埋点数据。
4.根据权利要求1所述的方法,其特征在于,所述计算规则包括目标事件属性;
所述根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据,包括:
若所述埋点数据对应的计算类型用于表征对事件属性不同的埋点数据进行处理,则将事件属性为所述目标事件属性的埋点数据确定为所述目标埋点数据。
5.根据权利要求3或4所述的方法,其特征在于,所述计算规则包括目标字段,所述目标字段用于表征对第一埋点数据和目标埋点数据进行原始值计算,所述方法还包括:
生成每一所述第一埋点数据对应的第一目标数据;所述第一目标数据包括关联字段和第一原始值,所述第一原始值为所述第一埋点数据的事件属性对应的值,所述第一埋点数据为非目标埋点数据;
生成每一所述目标埋点数据所对应的第二目标数据;所述第二目标数据包括关联字段和第二原始值,所述第二原始值为所述目标埋点数据的事件属性对应的值,所述关联字段用于关联所述第一目标数据和所述第二目标数据,以使得对所述第一目标数据和所述第二目标数据进行原始值计算;
所述对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,包括:
对所述第一原始值和所述第二原始值进行处理,生成所述业务指标。
6.根据权利要求5所述的方法,其特征在于,所述对所述第一原始值和所述第二原始值进行处理,生成所述业务指标之前,所述方法还包括:
在所述计算规则包括第一标识的情况下,将所述关联字段输入至预设的键值数据库中查询,得到目标原始值,所述第一标识用于更新所述第一原始值;
将所述第一原始值更新为所述目标原始值。
7.根据权利要求5所述的方法,其特征在于,所述对所述第一原始值和所述第二原始值进行处理,生成所述业务指标之前,所述方法还包括:
在所述计算规则包括第二标识的情况下,将所述关联字段输入至预设的键值数据库中进行查询,所述第二标识用于判断是否对第一原始值和第二原始值进行处理;
若查询到所述键值数据库存在所述关联字段对应的计算标志,则在所述键值数据库中删除所述计算标志,其中,所述计算标志用于表征对第一原始值和第二原始值进行处理。
8.根据权利要求1所述的方法,其特征在于,所述生成业务指标之后,所述方法包括:
响应于对所述业务指标的输入,对相同类型的业务指标进行合并处理,合并处理后的业务指标用于表征第二预设时长内的用户行为。
9.一种数据处理系统,其特征在于,包括:
中间件,用于将埋点数据发送至处理系统;
监控平台,用于将每一所述埋点数据对应的计算类型和计算规则,发送至所述处理系统;
搜索引擎,用于存储并显示所述处理系统生成的业务指标;
所述处理系统,用于实现如权利要求1至8中任一项所述的数据处理方法的步骤。
10.一种数据处理装置,其特征在于,包括:
获取模块,用于获取多个埋点数据,所述埋点数据用于表征用户的操作行为;
第一确定模块,用于确定每一所述埋点数据对应的计算类型,根据所述埋点数据对应的计算类型确定目标埋点数据;
第二确定模块,用于确定每一所述埋点数据对应的计算类型和计算规则,根据所述埋点数据对应的计算类型以及计算规则确定目标埋点数据;其中,所述目标埋点数据为与所述埋点数据的计算类型相关联的至少部分埋点数据;
处理模块,用于对所述埋点数据和所述目标埋点数据进行处理,生成业务指标,其中,所述业务指标用于表征第一预设时长内的用户行为。
11.一种服务器,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至8中任一项所述的数据处理方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至8中任一项所述的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111204173.1A CN113901153A (zh) | 2021-10-15 | 2021-10-15 | 数据处理方法及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111204173.1A CN113901153A (zh) | 2021-10-15 | 2021-10-15 | 数据处理方法及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113901153A true CN113901153A (zh) | 2022-01-07 |
Family
ID=79192275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111204173.1A Pending CN113901153A (zh) | 2021-10-15 | 2021-10-15 | 数据处理方法及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113901153A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169251A1 (zh) * | 2022-03-09 | 2023-09-14 | 北京字节跳动网络技术有限公司 | 一种指标确定方法、装置、服务器和介质 |
-
2021
- 2021-10-15 CN CN202111204173.1A patent/CN113901153A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023169251A1 (zh) * | 2022-03-09 | 2023-09-14 | 北京字节跳动网络技术有限公司 | 一种指标确定方法、装置、服务器和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918279B (zh) | 电子装置、基于日志数据识别用户异常操作的方法及存储介质 | |
CN110515912A (zh) | 日志处理方法、装置、计算机装置及计算机可读存储介质 | |
US11816586B2 (en) | Event identification through machine learning | |
CN109669835B (zh) | MySQL数据库监控方法、装置、设备及可读存储介质 | |
CN111026775A (zh) | 关联指标的确定方法、装置、服务器和存储介质 | |
CN113656407A (zh) | 一种数据拓扑生成方法、装置、电子设备及存储介质 | |
CN113901153A (zh) | 数据处理方法及相关设备 | |
CN110941632A (zh) | 一种数据库审计方法、装置及设备 | |
US11334476B2 (en) | Client-side survey control | |
CN116700907B (zh) | 服务调用需求文档存储方法、装置、电子设备和可读介质 | |
CN113821254A (zh) | 接口数据处理方法、装置、存储介质及设备 | |
CN112163154A (zh) | 数据处理方法、装置、设备及存储介质 | |
CN111159142B (zh) | 一种数据处理方法及装置 | |
CN111400142A (zh) | 虚拟机的异常监控方法、装置及存储介质 | |
CN115525449A (zh) | 微服务数据传输系统、方法及存储介质 | |
CN114880321A (zh) | 一种业务预警方法和装置 | |
CN114281549A (zh) | 数据的处理方法及装置 | |
CN113590276A (zh) | 信息推送方法及相关产品 | |
CN114358826A (zh) | 一种基于多平台多数据的数据回传方法及装置 | |
CN114390015A (zh) | 一种基于物模型的数据推送系统、方法、设备及存储介质 | |
CN113114734A (zh) | 信息处理方法、装置、设备及存储介质 | |
CN115309612B (zh) | 一种监控数据的方法和装置 | |
CN112950138B (zh) | 协同开发的状态管理方法、装置和服务器 | |
CN113821366A (zh) | 基于doris的自动分析异常方法及系统 | |
CN116436757A (zh) | 信息发送方法、日志上报方法、装置、设备和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |