CN117076696A - 数据处理方法、装置、电子设备及存储介质 - Google Patents
数据处理方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN117076696A CN117076696A CN202210506363.7A CN202210506363A CN117076696A CN 117076696 A CN117076696 A CN 117076696A CN 202210506363 A CN202210506363 A CN 202210506363A CN 117076696 A CN117076696 A CN 117076696A
- Authority
- CN
- China
- Prior art keywords
- matching
- pairs
- event data
- activation
- data
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 28
- 230000004913 activation Effects 0.000 claims abstract description 130
- 238000012216 screening Methods 0.000 claims abstract description 37
- 238000012545 processing Methods 0.000 claims abstract description 27
- 230000001960 triggered effect Effects 0.000 claims abstract description 7
- 238000000034 method Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 9
- 230000003213 activating effect Effects 0.000 abstract 2
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
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/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
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/43—Querying
- G06F16/435—Filtering based on additional data, e.g. user or group profiles
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本公开提供了一种数据处理方法、装置、电子设备及存储介质。数据处理方法包括:获取多条激活事件数据和多条操作事件数据,激活事件为目标应用被一个设备激活使用的事件,操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件;通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对;对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据;每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
Description
技术领域
本公开总体说来涉及计算机技术领域,更具体地讲,涉及一种数据处理方法、装置、电子设备及存储介质。
背景技术
为了使更多的设备激活使用某一应用APP,需要在一些推荐媒体平台上投放关于该应用的推荐信息(例如,推荐信息被点击后可给出下载该应用的提示),而激活使用该应用的某个设备可能在一个或多个推荐媒体平台上都点击了关于该应用的推荐信息,并且下载、安装、并激活使用了该应用,这就需要判断出这一设备本次激活使用该应用到底是由于点了哪个推荐媒体平台上的推荐信息所带来的,换言之,判断这一设备是由于哪一次推荐信息点击操作才使得最终激活使用该应用的,即需要得到这一设备首次激活使用该应用的归因结果。而如何快速、准确地确定这一归因结果,还有待进一步研究。
发明内容
本公开的示例性实施例在于提供一种数据处理方法、装置、电子设备及存储介质,其能够快速准确地获取设备首次激活使用目标应用的归因结果。
根据本公开实施例的第一方面,提供一种数据处理方法,包括:获取多条激活事件数据和多条操作事件数据,其中,激活事件为目标应用被一个设备激活使用的事件,且每条激活事件数据包括:激活时间和至少一个设备标识;操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件,且每条操作事件数据包括:操作事件标识、操作时间以及设备标识;通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对,其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对;对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据;其中,每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
可选地,对多个匹配对集合同时进行筛选的步骤包括:针对所述多个匹配对集合中的每个匹配对集合,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对。
可选地,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的步骤包括:对该匹配对集合内剩余的匹配对进行排序;基于排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对,并从该匹配对集合内删除确定的匹配对及与确定的匹配对具有相同操作事件标识的匹配对,其中,当删除匹配对后的该匹配对集合内剩余的匹配对的数量大于0时,返回执行对该匹配对集合内剩余的匹配对进行排序的步骤。
可选地,对该匹配对集合内剩余的匹配对进行排序的步骤包括:针对该匹配对集合内剩余的匹配对,按照操作时间对具有同一条激活事件数据的匹配对进行排序,得到第一排序结果,并按照激活时间对具有同一条操作事件数据的匹配对进行排序,得到第二排序结果。
可选地,按照操作时间对具有同一条激活事件数据的匹配对进行排序的步骤包括:按照操作时间从晚到早,对具有同一条激活事件数据的匹配对进行排序;其中,按照激活时间对具有同一条操作事件数据的匹配对进行排序的步骤包括:按照激活时间从早到晚,对具有同一条操作事件数据的匹配对进行排序;其中,基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的步骤包括:将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果。
可选地,对多个匹配对集合同时进行筛选的步骤包括:利用分布式计算引擎,对多个匹配对集合同时进行筛选;和/或,利用多计算节点分布式集群,对多个匹配对集合同时进行筛选,其中,不同计算节点所筛选的匹配对集合不同。
可选地,通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对的步骤包括:对多个数据组同时进行处理,以从每个数据组得到所有符合条件的匹配对,其中,具有同一设备标识的激活事件数据和操作事件数据被划分到同一数据组。
可选地,对多个数据组同时进行处理的步骤包括:利用分布式计算引擎,对多个数据组同时进行处理;和/或,利用多计算节点分布式集群,对多个数据组同时进行处理,其中,不同计算节点所处理的数据组不同。
根据本公开实施例的第二方面,提供一种数据处理装置,包括:数据获取单元,被配置为获取多条激活事件数据和多条操作事件数据,其中,激活事件为目标应用被一个设备激活使用的事件,且每条激活事件数据包括:激活时间和至少一个设备标识;操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件,且每条操作事件数据包括:操作事件标识、操作时间以及设备标识;匹配单元,被配置为通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对,其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对;筛选单元,被配置为对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据;其中,每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
可选地,筛选单元被配置为:针对所述多个匹配对集合中的每个匹配对集合,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对。
可选地,筛选单元被配置为:对该匹配对集合内剩余的匹配对进行排序;基于排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对,并从该匹配对集合内删除确定的匹配对及与确定的匹配对具有相同操作事件标识的匹配对,其中,当删除匹配对后的该匹配对集合内剩余的匹配对的数量大于0时,返回执行对该匹配对集合内剩余的匹配对进行排序的处理。
可选地,筛选单元被配置为:针对该匹配对集合内剩余的匹配对,按照操作时间对具有同一条激活事件数据的匹配对进行排序,得到第一排序结果,并按照激活时间对具有同一条操作事件数据的匹配对进行排序,得到第二排序结果。
可选地,按照操作时间对具有同一条激活事件数据的匹配对进行排序的处理包括:按照操作时间从晚到早,对具有同一条激活事件数据的匹配对进行排序;其中,按照激活时间对具有同一条操作事件数据的匹配对进行排序的处理包括:按照激活时间从早到晚,对具有同一条操作事件数据的匹配对进行排序;其中,基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的处理包括:将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果。
可选地,筛选单元被配置为利用分布式计算引擎,对多个匹配对集合同时进行筛选;和/或,筛选单元被配置为利用多计算节点分布式集群,对多个匹配对集合同时进行筛选,其中,不同计算节点所筛选的匹配对集合不同。
可选地,匹配单元被配置为:对多个数据组同时进行处理,以从每个数据组得到所有符合条件的匹配对,其中,具有同一设备标识的激活事件数据和操作事件数据被划分到同一数据组。
可选地,匹配单元被配置为利用分布式计算引擎,对多个数据组同时进行处理;和/或,匹配单元被配置为利用多计算节点分布式集群,对多个数据组同时进行处理,其中,不同计算节点所处理的数据组不同。
根据本公开实施例的第三方面,提供一种电子设备,包括:至少一个处理器;至少一个存储计算机可执行指令的存储器,其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如上所述的数据处理方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行如上所述的数据处理方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机指令,所述计算机指令被至少一个处理器执行时实现如上所述的数据处理方法。
根据本公开的示例性实施例的数据处理方法、装置、电子设备及存储介质,通过并行批处理方式,快速准确地获取设备首次激活使用目标应用的归因结果,提高了数据处理速度和准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1示出根据本公开示例性实施例的数据处理方法的流程图;
图2示出根据本公开示例性实施例的针对每个匹配对集合执行的处理的流程图;
图3示出根据本公开示例性实施例的数据处理方法的示例;
图4示出根据本公开示例性实施例的数据处理方法的另一示例;
图5示出根据本公开示例性实施例的数据处理装置的结构框图;
图6示出根据本公开示例性实施例的电子设备的结构框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在此需要说明的是,在本公开中出现的“若干项之中的至少一项”均表示包含“该若干项中的任意一项”、“该若干项中的任意多项的组合”、“该若干项的全体”这三类并列的情况。例如“包括A和B之中的至少一个”即包括如下三种并列的情况:(1)包括A;(2)包括B;(3)包括A和B。又例如“执行步骤一和步骤二之中的至少一个”,即表示如下三种并列的情况:(1)执行步骤一;(2)执行步骤二;(3)执行步骤一和步骤二。
图1示出根据本公开示例性实施例的数据处理方法的流程图。
参照图1,在步骤S101,获取多条激活事件数据和多条操作事件数据。
激活事件为目标应用被一个设备激活使用(即,下载安装后首次激活使用)的事件。每条激活事件数据用于表征一个激活事件,不同条激活事件数据对应于不同的激活事件。
每条激活事件数据包括:对应的激活时间和至少一个设备标识。每条激活事件数据所包括的至少一个设备标识即所表征的激活事件所发生在的设备的至少一个标识,每条激活事件数据所包括的激活时间即所表征的激活事件的发生时间。作为示例,激活事件所发生在的设备的至少一个标识可根据该设备通过目标应用的客户端在对应的激活时间以后的一段时间内上报的数据而获得。
操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件。每条操作事件数据用于表征一个操作事件,不同条操作事件数据可对应于不同或同一操作事件。
每条操作事件数据包括:对应的操作事件标识、操作时间和设备标识。每条操作事件数据所包括的设备标识即所表征的操作事件所发生在的设备的标识,每条操作事件数据所包括的操作时间即所表征的操作事件的发生时间,每条操作事件数据所包括的操作事件标识即所表征的操作事件的标识,例如,操作事件标识可为操作事件ID等标识信息。具有同一操作事件标识的多条操作事件数据用于表征同一个操作事件,但这多条操作事件数据彼此之间的设备标识不同。例如,每条操作事件数据可包括:操作事件标识、操作时间以及一个设备标识。例如,针对每个操作事件,客户端上传的关于该操作事件的信息可包括:至少一个设备标识、发生时间,可基于这些信息生成用于描述该操作事件的至少一条操作事件数据,这至少一条操作事件数据具有相同的操作事件标识,从而指示对应于同一个操作事件,但其中的每条操作事件数据具有上述至少一个设备标识中的一个,且彼此不同。
应该理解,每个设备可具有至少一种设备标识。作为示例,不同设备可具有相同或不同的设备标识。例如,设备A具有多个设备标识,其中的一个设备标识可能与设备B的一个设备标识相同。
作为示例,设备标识的类型可包括但不限于以下项之中的至少一项:国际移动设备识别码IMEI(International Mobile Equipment Identity)、匿名设备标识符OAID(OpenAnonymous Device Identifier)、广告标识符IDFA(Identifier for Advertising)、IP地址。
作为示例,所述多媒体资源可包括但不限于以下项之中的至少一项:视频、图像、文本。例如,对所述多媒体资源进行了一次目标操作后,可弹出用于提示下载目标应用的用户界面。作为示例,所述目标操作可包括但不限于以下项之中的至少一项:点击操作、选择操作。
作为示例,可从多个推荐多媒体资源发布平台的服务器获取操作事件数据。例如,推荐多媒体资源发布平台的客户端会上传关于用于推荐目标应用的多媒体资源被其所在的设备执行了一次目标操作的事件的信息(例如,包括设备标识、发生时间等)到后台服务器。
作为示例,可基于目标应用的客户端上报的关于目标应用被一个设备激活使用的事件的信息(例如,包括设备标识、发生时间等)、以及激活时间以后一段时间内上报的信息(例如,包括设备标识等),得到激活事件数据。
在步骤S102,通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对。其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对。
换言之,基于所述多条激活事件数据和所述多条操作事件数据,将具有相同设备标识的一条激活事件数据和一条操作事件数据匹配成一个匹配对,以匹配出所有符合条件(即,所有可能)的匹配对。
所述条件即:包括具有相同设备标识的一条激活事件数据和一条操作事件数据。应该理解,不同匹配对的激活事件数据和/或操作事件数据不同。
例如,当一条激活事件数据具有多个设备标识时,这多个设备标识中的一个设备标识与一条操作事件数据具有的一个设备标识相同时,就可认为两者具有相同设备标识,从而将这一激活事件数据和这一操作事件数据匹配成一个匹配对。
作为示例,可对多个数据组同时进行处理(即,进行并行处理),以从每个数据组得到所有符合条件的匹配对,其中,具有同一设备标识的激活事件数据和操作事件数据被划分到同一数据组。具体说来,可对多个数据组并行进行组内匹配,以得到组内的激活事件数据和操作事件数据所构成的所有可能的匹配对。
作为示例,可利用分布式计算引擎,对多个数据组同时进行处理;和/或,利用多计算节点分布式集群,对多个数据组同时进行处理,其中,不同计算节点所处理的数据组不同。
作为示例,可针对第一种设备标识类型(以下,简称为第一类型),对所有具有第一类型标识的激活事件数据和操作事件数据进行划分,具体地,将具有同一第一类型标识的激活事件数据和操作事件数据划分到同一数据组,也即映射到同一计算节点,以由各个计算节点以具有同一第一类型标识为匹配原则,基于各自的数据组并行进行组内匹配得到所有可能的匹配对;并且,针对第二种设备标识类型(以下,简称为第二类型),对所有具有第二类型标识的激活事件数据和操作事件数据进行划分,具体地,将具有同一第二类型标识的激活事件数据和操作事件数据划分到同一数据组,也即映射到同一计算节点,以由各个计算节点以具有同一第二类型标识为匹配原则,基于各自的数据组并行进行组内匹配得到所有可能的匹配对。依此类推,直至遍历完所有设备标识类型。
例如,当获取到d1、d2、d3、c1、c2、c3时,d1、d2、d3各自表示一条激活事件数据,c1、c2、c3各自表示一条操作事件数据。可先针对IMEI,将具有同一IMEI的激活事件数据和操作事件数据划分到同一数据组,例如,d1、d2、c1被划分到同一数据组,进行组内匹配得到匹配对d1-c1、d2-c1;针对OAID,将具有同一OAID的激活事件数据和操作事件数据划分到同一数据组,例如,d2和c2被划分到同一数据组,d3和c3被划分到同一数据组,使用不同计算节点并行对这两个数据组进行组内匹配得到匹配对d2-c2、d3-c3。
作为示例,所述分布式计算引擎可为Spark计算引擎。应该理解,也可为其他适当类型的分布式计算引擎,本公开对此不作限制。
应该理解,计算节点可由其所执行的处理或所实现的功能来限定,既可指物理实体,也可指虚拟实体,例如,计算节点可指部署在实际的计算机器上的逻辑实体。例如,多计算节点分布式集群可基于多核多机集群得到。
在步骤S103,对多个匹配对集合同时进行筛选(即,进行并行筛选),以从每个匹配对集合筛选出匹配对作为归因匹配结果。具体说来,对多个匹配对集合并行进行集合内筛选以筛选出匹配对作为归因匹配结果。由于具有同一条激活事件数据或同一条操作事件数据而关联起来的所有匹配对被划分为一个匹配对集合,具体地,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据。
每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。即,每个归因匹配结果指示设备标识所对应的设备首次激活使用目标应用是通过执行操作事件标识所对应的操作所带来的。
作为示例,可利用分布式计算引擎,对多个匹配对集合同时进行筛选;和/或,利用多计算节点分布式集群,对多个匹配对集合同时进行筛选,其中,不同计算节点所筛选的匹配对集合不同。
作为示例,当对所有匹配对划分得到的所有匹配对集合的数量较多时,可根据计算节点的数量先对一部分匹配对集合并行进行集合内筛选,每个计算节点同一时间对一个匹配对集合进行集合内筛选,当有完成集合内筛选而空闲的计算节点时,再对剩余的匹配对集合进行集合内筛选,直至对所有匹配对集合均完成集合内筛选。
作为示例,可并行地针对所述多个匹配对集合中的每个匹配对集合执行以下处理:对该匹配对集合(即,当前匹配对集合)内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对。
下面将结合图2来描述步骤S103的示例性实施例,图2示出根据本公开示例性实施例的针对每个匹配对集合执行的处理的流程图,可并行地针对所述多个匹配对集合中的每个匹配对集合执行步骤S201-步骤S203。
参照图2,在步骤S201,对该匹配对集合内剩余的匹配对进行排序。
作为示例,可针对该匹配对集合内剩余的匹配对,按照操作时间对具有同一条激活事件数据的匹配对进行排序,得到第一排序结果,并按照激活时间对具有同一条操作事件数据的匹配对进行排序,得到第二排序结果。
作为示例,可按照操作时间从晚到早,对具有同一条激活事件数据的匹配对进行排序。即,具有同一条激活事件数据的匹配对中,匹配对所对应的操作时间越晚,其在第一排序结果中的排序越靠前。
作为示例,可按照激活时间从早到晚,对具有同一条操作事件数据的匹配对进行排序。即,具有同一条操作事件数据的匹配对中,匹配对所对应的激活时间越早,其在第二排序结果中的排序越靠前。
在步骤S202,基于排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对,并从该匹配对集合内删除确定的匹配对及与确定的匹配对具有相同操作事件标识的匹配对。
作为示例,可基于第一排序结果和第二排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对。
作为示例,可将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果。
在步骤S203,在步骤S202之后,确定删除匹配对后的该匹配对集合内剩余的匹配对的数量是否大于0,其中,当大于0时,返回执行步骤S201。
图3示出根据本公开示例性实施例的数据处理方法的示例。
参照图3,匹配对d1-c1、匹配对d2-c1、匹配对d2-c2由于具有同一条激活事件数据或同一条操作事件数据而被划分为一个匹配对集合,具体地,匹配对d1-c1和匹配对d2-c1由于均具有c1而被关联在一起,匹配对d2-c1和匹配对d2-c2由于均具有d2而被关联在一起,因此,匹配对d1-c1、匹配对d2-c1、匹配对d2-c2均被关联在一起而形成一个匹配对集合(以下,称为第一匹配对集合)。相应地,匹配对d3-c3由于没与其他匹配对具有同一条激活事件数据或同一条操作事件数据,而独自构成一个匹配对集合(以下,称为第二匹配对集合)。
本公开考虑到d1和d2由于均匹配到c1,所以需要先判断c1的最终归属,由于d3和c1没有关系,所以d3和d1的归因结果可以在第一轮裁决中同时得到。假设c1最终裁决给了d1,此时由于c1已经使用,所以d2只可能得到c2作为归因结果,在第二轮裁决中,得到d2的归因结果c2。
因此,根据本公开的示例性实施例,可并行对第一匹配对集合和第二匹配对集合进行集合内筛选,例如,使用计算节点1对第一匹配对集合进行集合内筛选,同时使用计算节点2对第二匹配对集合进行集合内筛选。具体地,针对第一匹配对集合,按照操作时间降序对具有同一条激活事件数据的匹配对进行排序(即,激活事件维度进行排序),得到第一排序结果,例如,针对d2,对匹配对d2-c1和匹配对d2-c2进行排序,假设c1的操作时间比c2的操作时间晚,关于d2的第一排序结果依次为d2-c1、d2-c2;同理,关于d1的第一排序结果为:d1-c1。并且按照激活时间升序对具有相同操作事件数据的匹配对进行排序(即,操作事件维度进行排序),得到第二排序结果,例如,针对c1,对匹配对d1-c1和匹配对d2-c1进行排序,假设d1激活时间更早,则关于c1的第二排序结果依次为:d1-c1、d2-c1;同理,关于c2的第二排序结果为:d2-c2。在此基础上,将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果,所以将d1-c1作为第一轮筛选结果。相应地,针对第二匹配对集合,得到d3-c3作为第一轮筛选结果。在第二轮筛选中,由于c1、d1、c3、d3均已被使用,所以这些项目不能再被使用,所以删除d1-c1、d2-c1后第一匹配对集合内仅剩下d2-c2,重复上述操作,即可得到d2-c2作为第二轮筛选结果。
图4示出根据本公开示例性实施例的数据处理方法的另一示例。
参照图4,可先得到所有可能的匹配对作为原始的匹配结果。例如,可通过分布式并行方式将具有相同设备标识的一条激活事件数据和一条操作事件数据进行匹配,得到原始的匹配结果。
然后,可通过并行分布式方式(例如,Spark on yarn模式)对多个匹配对集合进行集合内筛选以筛选出匹配对作为归因匹配结果,其中,由于具有同一条激活事件数据或同一条操作事件数据而关联起来的所有匹配对被划分为一个匹配对集合。每个计算节点用于对一个匹配对集合进行集合内筛选,具体地,每个计算节点针对对应的匹配对集合,按照配置的排序规则分别进行触发事件维度排序和操作事件维度排序,根据排序结果产出每一轮的归因结果并从原始匹配结果中去掉已经归因的匹配对及与归因的匹配对具有相同操作事件标识的匹配对,继续对匹配对集合内剩余匹配对进行下一轮迭代。
本公开考虑到绝大部分激活事件是可以采用并行的方式进行处理的,于是本公开提出了一种基于Spark并行批处理方式,将无需仲裁的激活事件(分别匹配到不同操作事件)放到同一轮迭代中并行处理;对于需要仲裁的激活事件(匹配到同一操作事件),则采用迭代的方式,在每轮迭代中选出一个激活事件。
根据本公开的示例性实施例,采用Spark计算引擎,具备了更好的容错性和可靠性,并且Spark支持使用SQL的方式进行配置和编码,降级了学习和维护成本。
根据本公开的基于Spark的分布式迭代确定归因匹配结果的方法,解决了串行处理速度和数据量受到单机资源限制、无法横向扩展、无法利用多核多机集群加速、工程实现上需要考虑系统高可用性、串行处理需要另一台机器做冷备、资源利用率低等问题。
根据本公开的示例性实施例,能够解决现实场景中存在的针对不同设备拥有相同设备号的可能而无法保证归因结果准确率的问题。
图5示出根据本公开示例性实施例的数据处理装置的结构框图。
如图5所示,根据本公开示例性实施例的数据处理装置10包括:数据获取单元101、匹配单元102、筛选单元103。
具体说来,数据获取单元101被配置为获取多条激活事件数据和多条操作事件数据,其中,激活事件为目标应用被一个设备激活使用的事件,且每条激活事件数据包括:激活时间和至少一个设备标识;操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件,且每条操作事件数据包括:操作事件标识、操作时间以及设备标识。
匹配单元102被配置为通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对,其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对。
筛选单元103被配置为对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据。
每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
作为示例,筛选单元103可被配置为:针对所述多个匹配对集合中的每个匹配对集合,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对。
作为示例,筛选单元103可被配置为:对该匹配对集合内剩余的匹配对进行排序;基于排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对,并从该匹配对集合内删除确定的匹配对及与确定的匹配对具有相同操作事件标识的匹配对,其中,当删除匹配对后的该匹配对集合内剩余的匹配对的数量大于0时,返回执行对该匹配对集合内剩余的匹配对进行排序的处理。
作为示例,筛选单元103可被配置为:针对该匹配对集合内剩余的匹配对,按照操作时间对具有同一条激活事件数据的匹配对进行排序,得到第一排序结果,并按照激活时间对具有同一条操作事件数据的匹配对进行排序,得到第二排序结果。
作为示例,按照操作时间对具有同一条激活事件数据的匹配对进行排序的处理可包括:按照操作时间从晚到早,对具有同一条激活事件数据的匹配对进行排序;其中,按照激活时间对具有同一条操作事件数据的匹配对进行排序的处理可包括:按照激活时间从早到晚,对具有同一条操作事件数据的匹配对进行排序;其中,基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的处理可包括:将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果。
作为示例,筛选单元103可被配置为利用分布式计算引擎,对多个匹配对集合同时进行筛选;和/或,筛选单元103可被配置为利用多计算节点分布式集群,对多个匹配对集合同时进行筛选,其中,不同计算节点所筛选的匹配对集合不同。
作为示例,匹配单元102可被配置为:对多个数据组同时进行处理,以从每个数据组得到所有符合条件的匹配对,其中,具有同一设备标识的激活事件数据和操作事件数据被划分到同一数据组。
作为示例,匹配单元102可被配置为利用分布式计算引擎,对多个数据组同时进行处理;和/或,匹配单元102可被配置为利用多计算节点分布式集群,对多个数据组同时进行处理,其中,不同计算节点所处理的数据组不同。
作为示例,每个设备可具有至少一种设备标识;不同设备可具有相同或不同的设备标识。
关于上述实施例中的数据处理装置10,其中各个单元执行操作的具体方式已经在相关方法的实施例中进行了详细描述,此处将不做详细阐述说明。
此外,应该理解,根据本公开示例性实施例的数据处理装置10中的各个单元可被实现硬件组件和/或软件组件。本领域技术人员根据限定的各个单元所执行的处理,可以例如使用现场可编程门阵列(FPGA)或专用集成电路(ASIC)来实现各个单元。
图6示出根据本公开示例性实施例的电子设备的结构框图。参照图6,该电子设备20包括:至少一个存储器201和至少一个处理器202,所述至少一个存储器201中存储有计算机可执行指令集合,当计算机可执行指令集合被至少一个处理器202执行时,执行如上述示例性实施例所述的数据处理方法。
作为示例,电子设备20可以是PC计算机、平板装置、个人数字助理、智能手机、或其他能够执行上述指令集合的装置。这里,电子设备20并非必须是单个的电子设备,还可以是任何能够单独或联合执行上述指令(或指令集)的装置或电路的集合体。电子设备20还可以是集成控制系统或系统管理器的一部分,或者可被配置为与本地或远程(例如,经由无线传输)以接口互联的便携式电子设备。
在电子设备20中,处理器202可包括中央处理器(CPU)、图形处理器(GPU)、可编程逻辑装置、专用处理器系统、微控制器或微处理器。作为示例而非限制,处理器202还可包括模拟处理器、数字处理器、微处理器、多核处理器、处理器阵列、网络处理器等。
处理器202可运行存储在存储器201中的指令或代码,其中,存储器201还可以存储数据。指令和数据还可经由网络接口装置而通过网络被发送和接收,其中,网络接口装置可采用任何已知的传输协议。
存储器201可与处理器202集成为一体,例如,将RAM或闪存布置在集成电路微处理器等之内。此外,存储器201可包括独立的装置,诸如,外部盘驱动、存储阵列或任何数据库系统可使用的其他存储装置。存储器201和处理器202可在操作上进行耦合,或者可例如通过I/O端口、网络连接等互相通信,使得处理器202能够读取存储在存储器中的文件。
此外,电子设备20还可包括视频显示器(诸如,液晶显示器)和用户交互接口(诸如,键盘、鼠标、触摸输入装置等)。电子设备20的所有组件可经由总线和/或网络而彼此连接。
根据本公开的示例性实施例,还可提供一种存储指令的计算机可读存储介质,其中,当指令被至少一个处理器运行时,促使至少一个处理器执行如上述示例性实施例所述的数据处理方法。这里的计算机可读存储介质的示例包括:只读存储器(ROM)、随机存取可编程只读存储器(PROM)、电可擦除可编程只读存储器(EEPROM)、随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、闪存、非易失性存储器、CD-ROM、CD-R、CD+R、CD-RW、CD+RW、DVD-ROM、DVD-R、DVD+R、DVD-RW、DVD+RW、DVD-RAM、BD-ROM、BD-R、BD-R LTH、BD-RE、蓝光或光盘存储器、硬盘驱动器(HDD)、固态硬盘(SSD)、卡式存储器(诸如,多媒体卡、安全数字(SD)卡或极速数字(XD)卡)、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘以及任何其他装置,所述任何其他装置被配置为以非暂时性方式存储计算机程序以及任何相关联的数据、数据文件和数据结构并将所述计算机程序以及任何相关联的数据、数据文件和数据结构提供给处理器或计算机使得处理器或计算机能执行所述计算机程序。上述计算机可读存储介质中的计算机程序可在诸如客户端、主机、代理装置、服务器等计算机设备中部署的环境中运行,此外,在一个示例中,计算机程序以及任何相关联的数据、数据文件和数据结构分布在联网的计算机系统上,使得计算机程序以及任何相关联的数据、数据文件和数据结构通过一个或多个处理器或计算机以分布式方式存储、访问和执行。
根据本公开的示例性实施例,还可提供一种计算机程序产品,该计算机程序产品中的指令可由至少一个处理器执行以完成如上述示例性实施例所述的数据处理方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种数据处理方法,其特征在于,包括:
获取多条激活事件数据和多条操作事件数据,其中,激活事件为目标应用被一个设备激活使用的事件,且每条激活事件数据包括:激活时间和至少一个设备标识;操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件,且每条操作事件数据包括:操作事件标识、操作时间以及设备标识;
通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对,其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对;
对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据;
其中,每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
2.根据权利要求1所述的数据处理方法,其特征在于,对多个匹配对集合同时进行筛选的步骤包括:
针对所述多个匹配对集合中的每个匹配对集合,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对。
3.根据权利要求2所述的数据处理方法,其特征在于,对该匹配对集合内的匹配对进行排序,并基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的步骤包括:
对该匹配对集合内剩余的匹配对进行排序;
基于排序结果,从该匹配对集合中确定作为归因匹配结果的匹配对,并从该匹配对集合内删除确定的匹配对及与确定的匹配对具有相同操作事件标识的匹配对,其中,当删除匹配对后的该匹配对集合内剩余的匹配对的数量大于0时,返回执行对该匹配对集合内剩余的匹配对进行排序的步骤。
4.根据权利要求3所述的数据处理方法,其特征在于,对该匹配对集合内剩余的匹配对进行排序的步骤包括:
针对该匹配对集合内剩余的匹配对,按照操作时间对具有同一条激活事件数据的匹配对进行排序,得到第一排序结果,并按照激活时间对具有同一条操作事件数据的匹配对进行排序,得到第二排序结果。
5.根据权利要求4所述的数据处理方法,其特征在于,按照操作时间对具有同一条激活事件数据的匹配对进行排序的步骤包括:按照操作时间从晚到早,对具有同一条激活事件数据的匹配对进行排序;
其中,按照激活时间对具有同一条操作事件数据的匹配对进行排序的步骤包括:按照激活时间从早到晚,对具有同一条操作事件数据的匹配对进行排序;
其中,基于排序结果从该匹配对集合中确定作为归因匹配结果的匹配对的步骤包括:将在第一排序结果和第二排序结果中均排在第一位的匹配对作为归因匹配结果。
6.根据权利要求1所述的数据处理方法,其特征在于,对多个匹配对集合同时进行筛选的步骤包括:
利用分布式计算引擎,对多个匹配对集合同时进行筛选;
和/或,利用多计算节点分布式集群,对多个匹配对集合同时进行筛选,其中,不同计算节点所筛选的匹配对集合不同。
7.一种数据处理装置,其特征在于,包括:
数据获取单元,被配置为获取多条激活事件数据和多条操作事件数据,其中,激活事件为目标应用被一个设备激活使用的事件,且每条激活事件数据包括:激活时间和至少一个设备标识;操作事件为用于推荐目标应用的多媒体资源被一个设备执行了一次目标操作的事件,且每条操作事件数据包括:操作事件标识、操作时间以及设备标识;
匹配单元,被配置为通过匹配所述多条激活事件数据和所述多条操作事件数据,获取所有符合条件的匹配对,其中,具有相同设备标识的一条激活事件数据和一条操作事件数据被匹配成一个匹配对;
筛选单元,被配置为对多个匹配对集合同时进行筛选,以从每个匹配对集合筛选出匹配对作为归因匹配结果,其中,相关联的匹配对被划分为一个匹配对集合,相关联的匹配对具有同一条激活事件数据或同一条操作事件数据;
其中,每个归因匹配结果指示其所对应的激活事件是通过其所对应的操作事件所触发的。
8.一种电子设备,其特征在于,包括:
至少一个处理器;
至少一个存储计算机可执行指令的存储器,
其中,所述计算机可执行指令在被所述至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1至6中任一项所述的数据处理方法。
9.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令被至少一个处理器运行时,促使所述至少一个处理器执行如权利要求1至6中任一项所述的数据处理方法。
10.一种计算机程序产品,包括计算机指令,其特征在于,所述计算机指令被至少一个处理器执行时实现如权利要求1至6中任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210506363.7A CN117076696A (zh) | 2022-05-10 | 2022-05-10 | 数据处理方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210506363.7A CN117076696A (zh) | 2022-05-10 | 2022-05-10 | 数据处理方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117076696A true CN117076696A (zh) | 2023-11-17 |
Family
ID=88712130
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210506363.7A Pending CN117076696A (zh) | 2022-05-10 | 2022-05-10 | 数据处理方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117076696A (zh) |
-
2022
- 2022-05-10 CN CN202210506363.7A patent/CN117076696A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108153670B (zh) | 一种接口测试方法、装置及电子设备 | |
CN107402880B (zh) | 一种测试方法及电子设备 | |
CN108073519B (zh) | 测试用例生成方法和装置 | |
US10642725B2 (en) | Automated test generation for multi-interface enterprise virtualization management environment | |
US9811445B2 (en) | Methods and systems for the use of synthetic users to performance test cloud applications | |
KR20190075972A (ko) | 로그 파일들로부터 프로세스 흐름들을 식별하고 흐름을 시각화하기 위한 시스템들 및 방법들 | |
US11775411B2 (en) | Detection of computing resource leakage in cloud computing architectures | |
WO2018213311A1 (en) | Distributed versioning of applications using cloud-based systems | |
US10025671B2 (en) | Smart virtual machine snapshotting | |
CN110287173B (zh) | 自动生成有意义的用户段 | |
US10552306B2 (en) | Automated test generation for multi-interface and multi-platform enterprise virtualization management environment | |
US9116808B2 (en) | Method and system for determining device configuration settings | |
US9195374B1 (en) | Automated statistical graphing tool | |
EP3264254B1 (en) | System and method for a simulation of a block storage system on an object storage system | |
US9612927B1 (en) | Managing server processes with proxy files | |
US10896093B2 (en) | System reboot maintenance | |
US9818066B1 (en) | Automated development and utilization of machine-learning generated classifiers | |
CN117076696A (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN115509918A (zh) | 一种软件测试方法、装置、电子设备及存储介质 | |
US10380339B1 (en) | Reactively identifying software products exhibiting anomalous behavior | |
US20220300822A1 (en) | Forgetting data samples from pretrained neural network models | |
US11023226B2 (en) | Dynamic data ingestion | |
CN112148461A (zh) | 应用的调度方法、装置 | |
US20230325871A1 (en) | Subgroup analysis in a/b testing | |
CN112486935B (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 |