本技术实施例涉及数据处理领域,尤其涉及一种数据处理方法、装置、服务器设备和芯片系统。
背景技术:
1、目前,云端中配置的服务器可以根据大量用户的行为数据,根据配置的条件组,将用户划分到不同的人群集合中。这样,每个人群集合中的用户都可以符合对应条件组的标签。
2、为了保证人群集合的准确性,服务器可以不断更新用户的行为数据,并根据已配置的条件组,根据更新后的行为数据,不断更新各个条件组对应的人群集合。现有实现方案中,对于该人群集合的更新处理方式会占用服务器大量的算力和时间资源,计算效率较低。
技术实现思路
1、本技术提供一种数据处理方法、装置、服务器设备和芯片系统,能够有效提升存量人群的计算效率。
2、为实现上述技术目的,本技术采用如下技术方案:
3、第一方面,提供一种数据处理方法,应用于数据处理装置,该数据处理装置配置有第一处理模块,以及计算模块。其中,该第一处理模块中配置有至少一个条件组,每个该条件组包括至少一个标签信息,该标签信息包括标签,该标签配置有标签值。该方法包括:该第一处理模块向该计算模块发送第一sql信息,该第一sql信息用于指示第一条件组中的所有标签信息,以及该第一条件组中配置的各个标签信息之间的逻辑连接关系。该第一条件组包括在该至少一个条件组中。该计算模块根据第一对照表,以及该第一sql信息,确定第一人群bitmap。该第一人群bitmap与该第一条件组对应。其中,该第一对照表包括该第一条件组中每个标签信息对应的人群bitmap。
4、基于该方案,第一处理装置可以指示计算模块根据已经准备好的各个标签信息对应的人群bitmap,根据要计算的第一条件组的标签,确定需要参与计算的各个标签对应的bitmap。进而根据各个bitmap以及各个标签之间的逻辑连接关系,进行简单的和/或计算,即可快速获取该第一条件组的人群bitmap。其中,该第一条件组可以对应于存量人群。
5、可选的,在确定第一人群信息之后,该方法还包括:该计算模块存储第一人群标识与该第一人群bitmap的对应关系。该第一人群标识与该第一条件组对应。
6、可选的,该数据处理装置还配置有第二处理模块和存储模块,该方法还包括:该第一处理模块控制该第二处理模块获取该第一人群标识与该第一人群bitmap的对应关系。该第一处理模块控制该第二处理模块根据该第一人群bitmap,获取第一用户标识集合。该第一处理模块控制该第二处理模块将该第一用户标识集合,以及该第一人群标识,发送给该存储模块。
7、可选的,该方法还包括:该第一处理模块控制该存储模块存储该第一人群标识和该第一用户标识集合的对应关系。
8、由此,在计算模块中存储bitmap之外,还可以通过上述方案实现,在存储模块中存储可以直接使用的第一条件组对应的多个用户标识。
9、可选的,在该第一处理模块向该计算模块发送第一sql信息之前,该方法还包括:该计算模块在该第一处理模块的控制下,获取该第一对照表。
10、可选的,该计算模块在该第一处理模块的控制下,获取该第一对照表,包括:该第一处理模块控制该计算模块获取第一行为数据表。该第一行为数据表包括至少一个行为数据,该第一行为数据表中的行为数据与第二行为数据表中的行为数据对应。该第二行为数据表是该存储模块中配置的行为数据表。该第二行为数据表包括至少一个行为数据,该行为数据包括用户标识,以及该用户标识对应的至少一个标签信息。该第一处理模块控制该计算模块根据该第一行为数据表,获取该第一对照表。由此公开了第一对照表的获取机制。
11、可选的,该第一处理模块控制该计算模块获取第一行为数据表,包括:该第一处理模块在该第二行为数据表更新完成后,该第一处理模块向该第二处理模块发送第一传输指示。响应于该第一传输指示,该第二处理模块将该第二行为数据表中的每个行为数据,同步到该计算模块的第一行为数据表中。
12、以下分别提供两种可能的行为数据同步方式。
13、可选的,该第二处理模块将该第二行为数据表中的每个行为数据,同步到该计算模块的第一行为数据表中,包括:该第二处理模块从该第二行为数据表中获取第二行为数据,该第二行为数据包括第一标签信息,该第一标签信息的类型为嵌套mix类型。该第二处理模块对该第一标签信息进行拆分处理,获取第一子数据和第二子数据,该第一子数据和该第二子数据分别表示该第一标签信息中不同维度的标签信息,该第一子数据和该第二子数据均为单一维度的标签信息。该第二处理模块将该第一子数据和第二用户标识存储为该第一行为数据表的第一表项。该第二处理模块将该第二子数据和第二用户标识存储为该第一行为数据表的第二表项。该第二用户标识是该第二行为数据对应的用户标识。
14、可选的,该mix类型的标签信息包括至少两个维度的标签信息。
15、可选的,该第二处理模块将该第二行为数据表中的每个行为数据,同步到该计算模块的第一行为数据表中,包括:该第二处理模块从该第二行为数据表中获取第三行为数据,该第三行为数据包括第二标签信息,该第二标签信息的类型为非mix类型。该第二处理模块将该第二标签信息和第三用户标识的对应关系存储在该第一行为数据的第三表项。该第三用户标识是该第三行为数据对应的用户标识。
16、由此,同步到计算模块中的行为数据就不包括mix类型的标签信息,进而使得计算模块中的计算效率得到提升。
17、可选的,该非mix类型的标签信息包括:维组array类型的标签信息,和/或其他类型的标签信息。每个该非mix类型的标签信息包括一个维度的标签信息。例如,该其他类型的标签信息可以包括枚举类型、数值类型、日期类型等标签信息。
18、可选的,该第一处理模块控制该计算模块根据该第一行为数据表,获取该第一对照表,包括:该第一处理模块生成第二sql信息,该第二sql信息包括已配置的所有标签信息。该第一处理模块向该计算模块发送该第二sql信息。该计算模块根据该第二sql信息,以及该第一行为数据表,确定该第二sql信息指示的每个该标签信息对应的人群bitmap。该计算模块将该第二sql信息指示的每个标签信息与对应的人群bitmap的对应关系存储在该第一对照表中。由此,通过第二sql信息,第一处理模块可以控制计算模块在进行存量人群计算之前,获取各个可能使用到的标签信息各自对应的bitmap。
19、可选的,该第一处理模块中存储有第二对照表,该第二对照表存储有至少一个人群标识与元信息的对应关系。其中,至少一个人群标识与元信息的对应关系包括:该第一人群标识与第一元信息的对应关系。该第一元信息包括该第一条件组指示的标签信息。该第一处理模块生成第二sql信息,包括:该第一处理模块根据该第二对照表,生成该第二sql信息。由此提供了一种生成第二sql信息的方案实现。在本示例中,第一处理模块中可以存储有所有存量人群对应条件组的元数据。这样,第一处理模块就可以根据该所有存量人群对应的元数据,确定可能使用的所有标签信息,进而据此生成第二sql信息。
20、可选的,该方法还包括:该第一处理模块向该计算模块发送第三sql信息,该第三sql信息用于指示第二条件组中的所有标签信息,以及该第二条件组中配置的各个标签信息之间的逻辑连接关系。该第二条件组是根据该第一处理模块对该第一条件组中的各个标签进行重排处理后得到的。该重排处理包括:针对该第一条件组中的每个标签组,将mix类型的一个或多个标签调整到该标签组的头部,将array类型或其他类型的一个或多个标签调整到该标签组的尾部。该计算模块根据该第三sql信息,以及存储模块中存储的更新前的第二行为数据表,确定该第一条件组对应的第二人群bitmap。
21、该方案实现提供了一种新建人群的高效计算方式。在前述存量人群的计算方案基础上,对于新建人群的计算,第一处理模块可以对配置的条件组进行重排处理,从而获取计算模块能够更加高效处理的mix类型、其他类型标签的分别聚合处理形式。由此,根据重排处理后获取的第二条件组生成sql信息,第一处理模块就可以控制计算模块进行更加高效的新建人群的计算。
22、可选的,第一处理模块可以为dmp服务器或dmp处理平台。第二处理器可以为spark引擎或spark服务器。存储模块可以为hive服务器。计算模块可以为clickhouse计算平台或服务器。
23、第二方面,提供一种数据处理装置,该数据处理装置配置有第一处理模块,第二处理模块,存储模块,以及计算模块。该数据处理装置用于根据第一方面及其任一种可能的实现中提供的方法,确定第一条件组对应的第一人群信息。该第一人群信息包括第一人群bitmap,和/或该第一人群信息包括第一用户标识集合。
24、第三方面,提供一种服务器设备,该服务器设备配置有第一处理模块,该服务器设备工作时,用于实现第一方面及其任一种可能的设计中,第一处理模块的功能。例如,该服务器设备可以为dmp服务器。
25、第四方面,提供一种芯片系统,该芯片系统配置在如第三方面提供的服务器设备中。该芯片系统包括一个或多个接口电路和一个或多个处理器。该接口电路和该处理器通过线路互联。该接口电路用于从该电子设备的存储器接收信号,并向该处理器发送该信号,该信号包括该存储器中存储的计算机指令。当该处理器执行该计算机指令时,该服务器设备用于如第一方面及其任一种可能的设计中,第一处理模块的功能。
26、第五方面,本技术还提供一种芯片系统,该芯片系统应用于如第三方面提供的服务器设备中,或者如第一方面提供的第一处理模块中。芯片系统可以包括一个或多个接口电路和一个或多个处理器。接口电路和处理器通过线路互联,接口电路用于从存储器接收信号,并向处理器发送该信号,该信号包括存储器中存储的计算机指令。当处理器执行上述的计算机指令时,服务器设备或第一处理模块用于实现上述第一方面及其任一种可能的实现中提供的相关功能。
27、第六方面,本技术还提供一种计算机可读存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得服务器设备或第一处理模块实现上述第一方面及其任一种可能的实现中提供的相关功能。
28、第七方面,本技术还提供一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机实现上述第一方面及其任一种可能的实现中提供的相关功能。
29、可以理解的是,上述本技术提供的第二方面到第七方面提供的方案,可以分别对应到第一方面及其任一种可能的设计,因此能够达到的有益效果类似,此处不再赘述。