一种数据集合确定的方法及设备技术

技术编号:20545834 阅读:28 留言:0更新日期:2019-03-09 18:46
本申请的目的是提供一种数据集合确定的方法及设备,本申请通过将多个目标数据集合中的数据映射至预设内存的槽位中;确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。能够实现快速求数据集合,达到线性的时间复杂度,且在大数据下会非常节省资源。

A Method and Equipment for Data Set Determination

The purpose of this application is to provide a method and equipment for data set determination. By mapping data from multiple target data sets into slots in preset memory, the application determines the target slots containing data in the target data set, sets the values of the target slots to preset values, and finds the values of slots in each memory segment of the preset memory as preset values. The target slot restores the data in the target slot, counts the data restored in each memory segment, and determines the data set based on all the restored data. It can achieve fast data aggregation, achieve linear time complexity, and save resources in large data.

【技术实现步骤摘要】
一种数据集合确定的方法及设备
本申请涉及计算机领域,尤其涉及一种数据集合确定的方法及设备。
技术介绍
很多应用场景中需要进行数据集合的并集操作,比如列出一班男生和二班男生的总名单;在游戏平台中,比如需要向玩过A游戏的玩家或玩过B游戏的玩家推送游戏活动,则需要求解它们之间的并集。现有对数据集合的并集求解是通过中间哈希表保存结果集方法,建立一个哈希表,遍历每一需要求并集的数据集合中每个数据,将每个数据对应的键插入哈希表中,再遍历插入键后的哈希表,输出哈希表中每个键,即为需要求并集的数据集合的并集。然而,当数据量大时,因每个元素都需要哈希处理导致速度会比较慢,且大数据存入到哈希表中对系统内存消耗很大,资源开销较大。
技术实现思路
本申请的一个目的是提供一种数据集合确定的方法及设备,解决现有技术中处理大数据量时处理速度慢和资源开销大的问题。根据本申请的一个方面,提供了一种数据集合确定的方法,该方法包括:将多个目标数据集合中的数据映射至预设内存的槽位中;确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。进一步地,将多个目标数据集合中的数据映射至预设内存的槽位中,包括:确定所述目标数据集合中每一数据在预设内存中内存段信息及槽位信息;根据所述内存段信息及槽位信息将所述目标数据集合中每一数据映射至所述预设内存的槽位中。进一步地,将所述目标槽位的值设定为预设值,包括:将所述目标槽位的值设定为1。进一步地,确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值,包括:确定含有所述目标数据集合中的数据的目标槽位;根据所述目标槽位的槽位信息及内存段信息将所述目标槽位的值设定为预设值。进一步地,根据所述目标槽位的槽位信息及内存段信息将所述目标槽位的值设定为预设值,包括:将所述目标槽位的槽位信息及内存段信息进行或运算,根据运算结果将所述目标槽位的值设定为预设值。进一步地,将所述目标槽位中的数据进行还原,包括:判断每一内存段中的值是否大于0,若是,则根据所述内存段的内存段信息及内存段的总槽位数将所述内存段中的目标槽位中的数据进行还原。根据本申请另一个方面,还提供了一种数据集合确定的设备,该设备包括:映射装置,用于将多个目标数据集合中的数据映射至预设内存的槽位中;确定装置,用于确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;还原装置,用于查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计装置,用于统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。进一步地,所述映射装置用于:确定所述目标数据集合中每一数据在预设内存中内存段信息及槽位信息;根据所述内存段信息及槽位信息将所述目标数据集合中每一数据映射至所述预设内存的槽位中。进一步地,所述确定装置用于:将所述目标槽位的值设定为1。进一步地,所述确定装置用于:确定含有所述目标数据集合中的数据的目标槽位;根据所述目标槽位的槽位信息及内存段信息将所述目标槽位的值设定为预设值。进一步地,所述确定装置用于:将所述目标槽位的槽位信息及内存段信息进行或运算,根据运算结果将所述目标槽位的值设定为预设值。进一步地,所述还原装置用于:判断每一内存段中的值是否大于0,若是,则根据所述内存段的内存段信息及内存段的总槽位数将所述内存段中的目标槽位中的数据进行还原。根据本申请另一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述一种数据集合确定的方法。与现有技术相比,本申请通过将多个目标数据集合中的数据映射至预设内存的槽位中;确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。能够实现快速求数据集合,达到线性的时间复杂度,且在大数据下会非常节省资源。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出根据本申请的一个方面提供的一种数据集合确定的方法流程示意图;图2示出根据本申请的另一个方面提供的一种数据集合确定的设备结构示意图。附图中相同或相似的附图标记代表相同或相似的部件。具体实施方式下面结合附图对本申请作进一步详细描述。在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。图1示出根据本申请的一个方面提供的一种数据集合确定的方法流程示意图,该方法包括:步骤S11~步骤S14,在步骤S11中,将多个目标数据集合中的数据映射至预设内存的槽位中;在此,目标数据集合为需要求并集的数据集合,将目标数据集合中的所有元素映射至预设内存的槽位中,预设内存为根据场景需求进行开辟的内存,预设内存中包括多个内存段,比如为平衡效率,使用2字节开辟一个内存段,一个字节有8个比特位,则内存段为0到15总共16个槽位。将目标数据集合中的元素映射至开辟的内存的对应槽位中,方便后续进行还原出数据,以确定数据集合的并集。接着,在步骤S12中,确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;在此,目标槽位中的数据是由目标数据集合中元素映射确定的,需要将该目标槽位的值设定为预设值,比如某一槽位上的数据为目标数据集合中某一元素映射而来,需要把该槽位的值进行设定。在本申请一实施例中,将所述目标槽位的值设定为1,在此,内存的字节槽位只有二进制0和1,默认为0,则当槽位上有数据时,需要将该槽位的值进行设定为1。随后,在步骤S13中,查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;在此,将设置成预设值的槽位中的数据进行还原,进而在步骤S14中,统计所述每一内存段中被还原出的数本文档来自技高网...

【技术保护点】
1.一种数据集合确定的方法,其中,所述方法包括:将多个目标数据集合中的数据映射至预设内存的槽位中;确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。

【技术特征摘要】
1.一种数据集合确定的方法,其中,所述方法包括:将多个目标数据集合中的数据映射至预设内存的槽位中;确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值;查找所述预设内存中每一内存段中槽位的值为预设值的目标槽位,将所述目标槽位中的数据进行还原;统计所述每一内存段中被还原出的数据,根据所有被还原出的数据确定数据集合。2.根据权利要求1所述的方法,其中,将多个目标数据集合中的数据映射至预设内存的槽位中,包括:确定所述目标数据集合中每一数据在预设内存中内存段信息及槽位信息;根据所述内存段信息及槽位信息将所述目标数据集合中每一数据映射至所述预设内存的槽位中。3.根据权利要求1所述的方法,其中,将所述目标槽位的值设定为预设值,包括:将所述目标槽位的值设定为1。4.根据权利要求1所述的方法,其中,确定含有所述目标数据集合中的数据的目标槽位,将所述目标槽位的值设定为预设值,包括:确定含有所述目标数据集合中的数据的目标槽位;根据所述目标槽位的槽位信息及内存段信息将所述目标槽位的值设定为预设值。5.根据权利要求4所述的方法,其中,根据所述目标槽位所属的槽位信息及内存段信息将所述目标槽位的值设定为预设值,包括:将所述目标槽位的槽位信息及内存段信息进行或运算,根据运算结果将所述目标槽位的值设定为预设值。6.根据权利要求1所述的方法,其中,将所述目标槽位中的数据进行还原,包括:判断每一内存段中的值是否大于0,若是,则根据所述内存段的内存段信息及内存段的总槽位数将所述内存段中的目标槽位中的数据进...

【专利技术属性】
技术研发人员:彭志文朱先智
申请(专利权)人:上海恺英网络科技有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1