CN108614838B - 一种用户群索引处理方法、装置及系统 - Google Patents

一种用户群索引处理方法、装置及系统 Download PDF

Info

Publication number
CN108614838B
CN108614838B CN201611147243.3A CN201611147243A CN108614838B CN 108614838 B CN108614838 B CN 108614838B CN 201611147243 A CN201611147243 A CN 201611147243A CN 108614838 B CN108614838 B CN 108614838B
Authority
CN
China
Prior art keywords
user group
group index
index
primary key
user
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.)
Active
Application number
CN201611147243.3A
Other languages
English (en)
Other versions
CN108614838A (zh
Inventor
况聪
万春晓
孟善珏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Beijing Co Ltd
Original Assignee
Tencent Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Beijing Co Ltd filed Critical Tencent Technology Beijing Co Ltd
Priority to CN201611147243.3A priority Critical patent/CN108614838B/zh
Publication of CN108614838A publication Critical patent/CN108614838A/zh
Application granted granted Critical
Publication of CN108614838B publication Critical patent/CN108614838B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种用户群索引处理方法、装置及系统,其中,所述方法包括:获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。

Description

一种用户群索引处理方法、装置及系统
技术领域
本发明涉及数据索引技术,具体涉及一种用户群索引处理方法、装置及系统。
背景技术
目前,将关于用户所属用户群的索引(简称用户群索引)写入CKV(Cloud KeyValue)存储系统主要有两种实现方案。第一种方案的流程图如图1所示,下载所有用户群包到单台服务器,然后计算得到全量的用户群索引,再将全量的用户群索引写入CKV存储系统;但是,这种方案存在下述问题:(1)因为单台服务器的磁盘容量有限,随着数据管理平台(DMP,Data-Management Platform)用户群业务的增长,下载所有用户群包到单台服务器势必会出现存储瓶颈;大量用户群包所需下载的时间也会越来越长。(2)单台服务器出现单点故障时,只能换一台服务器重新计算索引。(3)每次对CKV存储系统全量写入用户群索引是一个十分耗时的操作。第二种方案是下载所有的用户群包到单台服务器,然后单台服务器通过读取CKV存储系统中现有的数据计算得到用户群的增量索引,再把增量数据写入CKV存储系统,这种对CKV存储系统写入增量索引的方案虽然减少了写操作,但额外增加的读操作的耗时是写操作的数倍,并不比第一种方案节省时间。
发明内容
有鉴于此,本发明期望提供一种用户群索引处理方法、装置及系统,至少能提升更新存储设备中用户群索引数据的效率。
本发明的技术方案是这样实现的:
本发明实施例提供了一种用户群索引处理方法,所述方法包括:
获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;
其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;
其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
本发明实施例还提供了一种用户群索引处理装置,所述装置包括:
第一获取单元,用于获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
计算单元,用于根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
第二获取单元,用于获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
确定单元,用于根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
处理单元,用于基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;
其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
本发明实施例还提供了一种用户群索引处理系统,所述系统包括:
存储设备,用于存储用户群索引;
集群,用于获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
采用本发明实施例所述技术方案,集群根据需要写入存储设备的信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一用户群索引;获取第二用户群索引;根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。这样,由集群根据需要写入存储设备的信息标识从本地相应的用户集合中得到用户群数据,在集群上计算第一用户群索引;无需在计算第一用户群索引之前,先将大量用户群数据下载至单台服务器,再由单台服务器根据所述大量用户群数据计算得到第一用户群索引,不仅省去了单台服务器下载大量用户群数据所需时间,而且由集群来计算第一用户群索引,相对于在单台服务器上计算第一用户群索引来说,节省了索引计算所需时间。另外,本发明实施例所述技术方案在集群上存储有存储设备中的第二用户群索引的镜像数据,使第一用户群索引的计算、增量计算、待删除索引可运行在集群,并且避免了从存储设备读第二用户群索引的操作,从而能快速计算出增量索引和待删除索引。由于增量索引量和待删除索引相对于全量第一用户群索引来说,需要的写操作小,所以大量减少了写操作,同时避免了从存储设备读取第二用户群索引的操作,有效减少了网络开销,使用户群索引计算和更新的总时间显著降低,从而也能提高用户群定向投放业务的效率;由于所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值,可以基于增量索引执行一次覆盖写操作即可,即,相对于由纯差异部分组成的增量索引来说,不用再去存储设备中特意查找相同主键的键值差异对应的这类主键,再去更改存储设备中这类主键对应的用户群索引记录中的差异部分,提高了更新存储设备中用户群索引的效率。
附图说明
图1为现有技术中将用户群索引写入CKV存储系统的流程示意图;
图2为本发明实施例提供的用户群索引处理方法的实现流程示意图;
图3为本发明实施例提供的信息标识的一种示意图;
图4为本发明实施例提供的根据用户群数据生成第一用户群索引的示意图;
图5为本发明实施例提供的增量索引的示意图;
图6为本发明实施例提供的待删除索引的示意图;
图7(a)为本发明实施例提供的第一用户群索引的示意图,图7(b)为本发明实施例提供的第二用户群索引的示意图;图7(c)为本发明实施例提供的执行覆盖写操作之后的存储设备中的用户群索引;图7(d)为本发明实施例提供的执行删除操作之后的存储设备中的用户群索引;
图8为本发明实施例提供的用户群索引处理的一种总体流程示意图;
图9为本发明实施例提供的用户群索引处理装置的组成结构示意图;
图10是本发明实施例中用于实现用户群索引处理装置的一个可选的硬件结构示意图;
图11为本发明实施例提供的用户群索引处理系统的一种交互示意图。
具体实施方式
为了能够更加详尽地了解本发明的特点与技术内容,下面结合附图对本发明的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本发明。
本发明实施例提供一种用户群索引处理方法,如图2所示,所述方法主要包括:
步骤201、获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号。
本实施例中,所述存储设备用于存储用户群索引。比如,所述存储设备可以是CKV存储系统。
这里,所述用户标签是指与用户相关的关联信息。
这里,所述信息标识用于表征具有同一用户标签的用户集合的编号;其中,所述具有同一用户标签的用户集合中,包含有个人标识。比如,所述个人标识是用户账号,如QQ号码、微信号、与第一应用对应的用户名,等。
以个人标识为QQ号码为例,图3示出了信息标识的一种示意图,如图3所示,与信息标识对应的用户集合中存储有QQ号码,编号为000001的信息标识代表具有学历为研究生的用户集合,信息标识000001={QQ100001、QQ100004、QQ100007、QQ100009};编号为000002的信息标识代表性别为女性的用户集合,信息标识000002={QQ100001、QQ100004、QQ100011、QQ100015};编号为000003的信息标识代表性别为男性的用户集合,信息标识000003={QQ100007、QQ100009、{QQ100014、QQ100018};编号为000004的信息标识代表年龄段为25~30岁的用户集合,信息标识000004={QQ100009、QQ100011、QQ100015、QQ100017}等。
示例性地,所述用户标签可包括基本属性、社会/生活属性、行为习惯、兴趣偏好/倾向、心理学属性等几大类,且每一大类下可细分多个小类。比如,所述基本属性包括:性别、年龄、婚姻状态、学历、收入水平、健康状况等。比如,所述社会/生活属性包括:行业/职业、职务、孩子状态、车辆使用情况、房屋使用情况、手机价位/品牌等。比如,所述行为习惯包括:常住城市、作息时间、交通方式、餐饮习惯、网购特性等。比如,所述兴趣偏好/倾向包括:购物偏好、浏览偏好、音乐偏好、体育偏好、游戏偏好、旅游偏好等。比如,所述心理学属性包括:生活方式、价值观等。
在一实施例中,所述获取需要写入存储设备的信息标识,包括:
集群接收数据服务器发送的需要写入存储设备的信息标识。
可选地,所述集群接收数据服务器发送的需要写入存储设备的信息标识之前,所述方法还包括:
数据服务器接收前端平台发送的触发操作,其中,所述触发操作中携带有需要写入存储设备的信息标识以及所述信息标识对应的用户群数据的存储路径;
数据服务器基于所述触发操作获取需要写入存储设备的信息标识。
这里,所述触发操作可由工作人员根据投放需求进行输入。
步骤202、根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
在一实施例中,所述根据所述信息标识从相应的用户集合中得到用户群数据,包括:
确定所述信息标识对应的用户群数据的存储路径;
按照所述存储路径查找所述信息标识对应的用户集合;
从所述用户集合获取所述信息标识对应的用户群数据。
在一具体实施方式中,所述确定所述信息标识对应的用户群数据的存储路径,包括:
从数据服务器获取所述信息标识对应的用户群数据的存储路径。
也就是说,数据服务器向集群发送需要写入存储设备的信息标识时,同时向集群发送所述信息标识对应的用户群数据的存储路径。
在另一具体实施方式中,所述确定所述信息标识对应的用户群数据的存储路径,包括:
集群基于从数据服务器获取的需要写入存储设备的信息标识,在本地查找与所述信息标识对应的用户群数据的存储路径。
例如,可以按照预设存储关系对照表在本地查找与所述信息标识对应的用户群数据的存储路径,其中,所述预设存储关系对照表记录有信息标识与存储路径的对应关系。
本实施例中,第一用户群索引的主键可以为用户账号;所述主键的值为所述用户账号所属的信息标识。其中,所述信息标识用于表征具有同一用户标签的用户集合的编号。
在一实施例中,所述根据用户群数据分析得到第一时间戳对应的第一用户群索引,包括:
采用第一索引计算程序对所述存储设备中所述信息标识对应的用户群数据进行分析,生成第一时间戳对应的用户群索引。
其中,所述第一索引计算程序由数据服务器生成。
这里,由于当前需要写入存储设备的信息标识对应的用户集合数量、与所述信息标识对应的用户群数据的存储路径,都是不定的,并且集群对一次性可加载的信息标识数量等限制,所以数据服务器每次接收到前端平台的触发操作时,都会动态生成一个新的用户群索引计算程序,以供集群计算第一用户群索引。
图4示出了根据用户群数据生成第一用户群索引的示意图,如图4所示,用户群索引的主键为QQ号码,主键对应的值为所述QQ号码所属的信息标识。其中,所述信息标识用于表征具有同一用户标签的用户集合的编号。从图4可知,对多个信息标识所对应的用户集合进行分析,得出第一用户群索引,比如,对于第一条用户群索引,主键为QQ10001,值为T-001、T-005;对于第二条用户群索引,主键为QQ10002,值为T-001、T-005、T-008、T-009。其中,T-xxx表示信息标识。
步骤203、获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引。
在一实施例中,所述获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引,包括:
查找与所述第一时间戳最近的时间戳;
将所述时间戳确定为第二时间戳;
基于所述第二时间戳获取与所述第二时间戳对应的第二用户群索引。
这里,所述时间戳可以指生成相应用户群索引的时间。比如,第一时间戳是生成第一用户群索引时的时间;第二时间戳是生成第二用户群索引时的时间。
这里,需要说明的是,存储设备当前存储的用户群索引为第二用户群索引。
也就是说,集群本地存储有与所述存储设备当前信息状态一致的第二用户群索引。
优选地,本地存储为分布式存储。
比如,当集群为Hadoop集群时,可在HDFS分布式文件系统上存储各时间戳对应的用户群索引,包括第二时间戳对应的第二用户群索引。其中,HDFS的全称是HadoopDistributed File System。
再比如,当集群为Spark集群时,可在Spark集群适用的分布式文件系统上存储各时间戳对应的用户群索引,包括第二时间戳对应的第二用户群索引。
如此,在集群计算增量索引和待删除索引时,不必再从存储设备中读取第二用户群索引,相对于单台服务器从存储设备中读取第二用户群索引数据,进而在读取完毕之后再根据计算出的第一用户群索引数据以及读取的第二用户群索引数据计算增量索引而言,节省了网络开销,也缩短了计算增量索引所需时间。
步骤204、根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引。
其中,第一、第二用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识。
其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
在一实施例中,所述按照对应的策略得到增量索引,包括:
查找第一用户群索引中含有,而第二用户群索引中未含有的第一类的主键;
查找第一用户群索引中与第二用户群索引中均含有,但对应的值不同的第二类的主键;
将所述第一类的主键对应的用户群索引记录以及所述第二类的主键对应的用户群索引记录确定为增量索引;
其中,所述用户群索引包括主键以及所述主键所对应的值。
这里,第一类的主键是基于所述第一用户群索引和第二用户群索引之间的主键差异确定的;第二类的主键是基于所述第一用户群索引和第二用户群索引之间的相同主键的键值差异确定的。
现有技术中的增量索引是纯粹的差异部分,而不是以整条用户群索引记录形式存在的。本申请采用差异化的用户群索引记录作为增量索引,这样做的好处是:不用再去CKV系统中特意查找第二类的主键对应的值,再去添加CKV系统中该第二类的主键所没有的值;而是直接将整条的索引记录覆盖写至CKV存储系统即可。无论是第一类的主键,还是第二类的主键,均是以整条用户群索引记录的形式作为增量索引,那么,可以基于增量索引执行一次覆盖写操作即可,即,相对于由纯差异部分组成的增量索引来说,不用再去CKV系统中特意查找第二类的主键对应的值,再去添加CKV系统中该第二类的主键所没有的值或删除在增量索引中该第二类的主键所没有的值,提高了更新CKV存储系统中第二用户群索引的效率。
图5示出了增量索引的示意图,如图5所示,其中,第二时间戳对应的第二用户群索引区域包括:A1所在区域+A2所在区域;第一时间戳对应的第一用户群索引区域包括:A2所在区域+A3所在区域;那么,从图5可以看出,第一用户群索引相对于第二用户群索引来说,增量索引为A3所在区域。
这里,需要说明的是,所述增量索引是以一整条用户群索引来定义的。比如,第一用户群索引中含有而第二用户群索引中未含有的第一类的主键,所述第一类的主键对应的整条用户群索引记录是增量索引。第一用户群索引中与第二用户群索引中均含有,但对应的值不同的第二类的主键,所述第二类的主键对应的整条用户群索引记录也是增量索引。
如此,在集群依据增量索引向存储设备进行覆盖写操作时,对于第二类的主键对应的用户群索引记录,仅需查找存储设备中第二类的主键,将所述第二类的主键对应的整条用户群索引记录覆盖写至所述存储设备中所述第二类的主键对应的用户群索引记录位置处。
本实施例中,每条增量索引通过比较整条用户群索引(包括主键和主键对应的值)得到的,这样设计的目的是使一条数据可以对存储设备进行一次覆盖写操作即可得到最终更新结果。
在另一实施例中,所述按照对应的策略得到待删除索引,包括:
查找第一用户群索引中未含有,且第二用户群索引中含有的第三类的主键;
将有所述第三类的主键对应的用户群索引记录确定为删除索引。
图6示出了待删除索引的示意图,如图6所示,其中,第二时间戳对应的第二用户群索引区域包括:B1所在区域+B2所在区域;第一时间戳对应的第一用户群索引区域包括:B2所在区域+B3所在区域;那么,从图6可以看出,第一用户群索引相对于第二用户群索引来说,待删除索引为B1区域。
这里,需要说明的是,所述待删除索引是通过比较用户群索引中的主键得到的,原因是:第一用户群索引中可能不含有第二用户群索引的主键,这部分主键需要从存储设备中删掉。
如此,在集群依据待删除索引向存储设备进行删除操作时,对于第三类的主键对应的用户群索引记录,仅需查找存储设备中第三类的主键,将所述第三类的主键对应的用户群索引记录整条删除即可。
步骤205、基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。
这里,所述存储设备中的用户群索引为第二用户群索引。其中,所述存储设备中的用户群索引,包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识。
在一实施例中,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,包括:
将所述第二类的主键对应的用户群索引记录覆盖写至所述存储设备中所述第二类的主键对应的用户群索引记录位置处;
将所述第一类的主键对应的用户群索引记录写入所述存储设备中可写位置处。
这里,所述可写位置为存储设备中的空闲资源所在位置。
比如,图7(a)示出了第一用户群索引的示意图,图7(b)示出了第二用户群索引的示意图,第一用户群索引中含有而第二用户群索引中未含有的第一类的主键为QQ20005;第一用户群索引中与第二用户群索引中均含有,但对应的值不同的第二类的主键为QQ10002;可见,增量索引包括:QQ20005:T-001,T-003,T-007;QQ10002:T-001,T-005,T-006,T-0085。在更新存储设备的用户群索引时,将增量索引QQ10002:T-001,T-005,T-006,T-0085这一整条用户群索引记录覆盖写至第二用户群索引中主键为QQ10002对应的用户群索引记录位置处;将增量索引QQ20005:T-001,T-003,T-007这一整条用户群索引记录写入存储设备中的空闲资源所在位置,执行写操作之后的存储设备中的用户群索引如图7(c)所示。
在另一实施例中,所述基于所述待删除索引对所述存储设备中的用户群索引进行删除操作,包括:
依据所述第三类的主键删除所述存储设备中主键为所述第三类的主键的用户群索引记录。
比如,图7(a)示出了第一用户群索引的示意图,图7(b)示出了第二用户群索引的示意图,可见,第一用户群索引中未含有且第二用户群索引中含有的第三类的主键为QQ10001,QQ10001对应的值为QQ10001:T-001,T-005。依据所述第三类的主键QQ10001删除所述存储设备中主键为所述第三类的主键QQ10001的整条用户群索引记录,执行删除操作之后的存储设备中的用户群索引如图7(d)所示。
可选地,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作之前,还包括:
发送所述增量索引及所述待删除索引至一个或多个数据服务器;
通过所述一个或多个数据服务器执行覆盖写操作和删除操作;
其中,当所述数据服务器为多个时,不同数据服务器负责执行覆盖写操作和删除操作的用户群索引文件范围不同。
如此,由于不同数据服务器负责执行覆盖写操作和删除操作的用户群索引文件范围不同,能够使得多个数据服务器并行进行覆盖写操作和删除操作,提高了更新存储设备中用户群索引的效率。
在一实施例中,所述方法还包括:
检测到所述存储设备进行覆盖写操作与删除操作均成功时,在本地存储所述第一用户群索引;
检测到所述存储设备进行覆盖写操作或删除操作失败时,删除所述第一用户群索引的相关信息。
如此,当存储设备中的用户群索引更新成功时,集群在本地存储对存储设备进行更新所依据的第一用户群索引;当存储设备中的用户群索引更新失败时,集群在本地不存储对存储设备进行更新所依据的第一用户群索引;如此,始终保持集群中记录的用户群索引与存储设备记录的用户群索引的信息状态的一致性,从而便于集群依据存储设备中的用户群索引信息来计算在增量索引和待删除索引。
在一具体实施方式中,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作,包括:
先基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,然后再基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。
这样,先执行写操作,再执行删除操作,能够防止因先执行删除操作而在后续写操作失败时,存储设备中已删除的用户群索引无法恢复的问题。
在另一具体实施方式中,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作,包括:
基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作的同时,基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。
这样,写操作与删除操作同时执行,能够提升更新存储设备的用户群索引的效率。
在又一具体实施方式中,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作,包括:
先基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;然后再基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作。
这样,先执行删除操作,再执行写操作,能够为后续写入第二类的主键对应的增量索引,提供更充裕的写入空间。
上述方案中,可选地,所述方法还包括:
存储设备执行覆盖写操作的用户群索引以及执行删除操作的用户群索引进行备份,在存储设备执行覆盖写操作以及删除操作均成功后,删除备份的用户群索引。
如此,能够保证集群根据第一用户群索引更新存储设备中的第二用户群索引失败时,恢复存储设备之前所存储的第二用户群索引的原状态信息。
本实施例所述技术方案中,由集群根据需要写入存储设备的信息标识从本地相应的用户集合中得到用户群数据,在集群上计算第一用户群索引;无需在计算用第一户群索引之前,先将大量用户群数据下载至单台服务器,再由单台服务器根据所述大量用户群数据计算得到第一用户群索引,不仅省去了单台服务器下载大量用户群数据所需时间,而且由集群来计算第一用户群索引,相对于在单台服务器上计算第一用户群索引来说,节省了索引计算所需时间,同时也避免了因单台服务器出现单点故障时,需要更换一台单台服务器重新计算索引而导致的计算时间过长的问题。另外,由集群存储用户群数据,还能避免单台服务器无法满足大量用户群数据所需存储空间而导致的无法将所需用户群数据下载至单台服务器的问题。本发明实施例所述技术方案通过计算增量索引和待删除索引的方式,来对存储设备中的用户群索引进行处理,由于增量索引量小,并且对存储设备中的第二用户群索引进行的是覆盖写操作,所以大量减少了写操作,同时避免了从存储设备读取第二用户群索引的操作,有效减少了网络开销,使用户群索引计算和更新的总时间显著降低,从而也能提高了用户群定向投放业务的效率。本发明实施例所述技术方案在集群上存储存储设备第二用户群索引的镜像数据,并维护两者状态的一致,使索引数据的计算、增量计算、待删除索引运行在集群,并且避免从存储设备读第二用户群索引的操作,从而能快速更新存储设备中的用户群索引数据,提升更新存储设备中用户群索引数据的效率。
图8示出了一种用户群索引处理的一种总体流程示意图,如图8所示,该流程主要包括:
步骤801:数据服务器从数据库获取需要写入存储设备的信息标识和存储路径;
其中,所述存储路径是数据在集群上的存储路径,所述集群在其本身的分布式存储系统上按照一定的存储路径存储有信息标识对应的用户群数据;这样,集群能够根据数据服务器所获取的这些信息,按照数据服务器指定的存储路径去获取需要写入存储设备的信息标识对应的元数据。
步骤802:数据服务器生成第一索引计算程序;
具体地,数据服务器根据需要写入的信息标识、信息标识的个数、信息标识的存储位置、以及集群能够一次性读取的用户群数据,生成第一索引计算程序。
步骤803:数据服务器将所述索引计算程序发送给集群;
步骤804:由集群根据所述第一索引计算程序,根据所获取的信息标识对应的元数据,计算第一用户群索引;
具体地,数据服务器通知集群获取用户群数据,并告知集群具体从哪里获取,以及具体获取哪类用户群数据,集群按照数据服务器的指示获取信息标识对应的元数据。
步骤805:集群从其分布式存储系统上获取第二用户群索引;
这里,在集群分布式存储系统上存储有存储设备中的用户群索引的镜像数据,并维护两者状态的一致,使用户群索引的计算、增量索引计算、待删除索引计算可运行在集群,并且避免在计算增量索引以及待删除索引时,从存储设备中的读操作,从而有助于快速更新存储设备的用户群索引信息。
步骤806:集群根据第一用户群索引和第二用户群索引计算出增量索引,然后执行步骤808;
步骤807:集群根据第一用户群索引和第二用户群索引计算出待删除索引,然后执行步骤809;
步骤808:由数据服务器根据所述增量索引执行到存储设备的覆盖写操作;
步骤809:由数据服务器根据所述待删除索引执行到存储设备的删除操作。
上述方案中,步骤806和步骤807可以同步进行,或者步骤807先于步骤806进行。
上述方案中,步骤808和步骤809可以同步进行,或者步骤809先于步骤808进行。
本实施例中,所述集群可以是Hadoop集群、Spark集群等能够对大量数据进行分布式处理的集群。
本实施例中,所述存储设备可以是CKV存储系统,当然,还可以是其他类型的key-value存储系统。
本实施例所述技术方案中,通过在集群上存储各个时间版本的存储设备中用户群索引的镜像数据,将用户群索引计算、增量索引计算、待删除索引计算改写为适用于集群的算法,从单台服务器迁移到集群上计算,利用集群做大规模并行计算,计算时间可比单机计算减少数倍。增量索引采用新的形式,即两次全量索引的差异部分,具体地,是第一用户群索引和第二用户群索引的差异部分;此差异部分的每条数据是完整的用户群索引,而不只是新增的部分,这样设计的目的是使一条数据可以对存储设备进行一次覆盖写操作即可得到最终更新结果。由于增量索引量小,并且是覆盖写操作,所以大量减少了写操作,同时避免了读操作,有效减少网络开销,使整个用户群索引计算和更新的时间显著降低,提高了用户群定向投放业务的效率。
图9为本发明实施例提供的用户群索引处理装置的组成结构示意图,如图9所示,该装置包括:
第一获取单元91,用于获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
计算单元92,用于根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
第二获取单元93,用于获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
确定单元94,用于根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
处理单元95,用于基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。
其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;
其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
可选地,所述装置还包括:
存储单元96,用于在本地存储有与所述存储设备当前信息状态一致的第二用户群索引。
在一可选实施方式中,所述存储单元96,还用于:
检测到所述存储设备进行覆盖写操作与删除操作均成功时,在本地存储所述第一用户群索引;
检测到所述存储设备进行覆盖写操作或删除操作失败时,删除所述第一用户群索引的相关信息。
可选地,所述装置还包括:
发送单元97,用于发送所述增量索引及所述待删除索引至一个或多个数据服务器;
所述处理单元95,还用于通过所述一个或多个数据服务器执行覆盖写操作和删除操作;
其中,当所述数据服务器为多个时,不同数据服务器负责执行覆盖写操作和删除操作的用户群索引文件范围不同。
在一可选实施方式中,所述确定单元94,还用于:
查找第一用户群索引中含有,而第二用户群索引中未含有的第一类的主键;
查找第一时间戳对应的用户群索引中与第二时间戳对应的用户群索引中均含有,但对应的值不同的第二类的主键;
将所述第一类的主键对应的用户群索引记录以及所述第二类的主键对应的用户群索引记录确定为增量索引;
其中,所述用户群索引包括主键以及所述主键所对应的值。
在一可选实施方式中,所述处理单元95,还用于:
将所述第一类的主键对应的用户群索引记录覆盖写至所述存储设备中所述第一类的主键对应的用户群索引记录位置处;
将所述第二类的主键对应的用户群索引记录写入所述存储设备中可写位置处。
在一可选实施方式中,所述确定单元94,还用于:
查找第一用户群索引中未含有,且第二用户群索引中含有的第三类的主键;
将有所述第三类的主键对应的用户群索引记录确定为删除索引。
在一可选实施方式中,所述处理单元95,还用于:
依据所述第三类的主键删除所述存储设备中主键为所述第三类的主键的用户群索引记录。
在一可选实施方式中,所述计算单元92,还用于:
确定所述信息标识对应的用户群数据的存储路径;
按照所述存储路径查找所述信息标识对应的用户集合;
从所述用户集合获取所述信息标识对应的用户群数据。
本领域技术人员应当理解,本实施例的用户群索引处理装置中各单元的功能,可参照前述用户群索引处理方法的相关描述而理解。
实际应用中,上述第一获取单元91、计算单元92、第二获取单元93、确定单元94、处理单元95、发送单元97的具体结构均可对应于处理器。所述处理器具体的结构可以为中央处理器(CPU,Central Processing Unit)、微处理器(MCU,Micro Controller Unit)、数字信号处理器(DSP,Digital Signal Processing)或可编程逻辑器件(PLC,ProgrammableLogic Controller)等具有处理功能的电子元器件或电子元器件的集合。其中,所述处理器包括可执行代码,所述可执行代码存储在存储介质中,所述处理器可以通过总线等通信接口与所述存储介质中相连,在执行具体的各单元的对应功能时,从所述存储介质中读取并运行所述可执行代码。所述存储介质用于存储所述可执行代码的部分优选为非瞬间存储介质。所述存储单元96可以是各个种类型的存储器或具有存储功能的服务器,如数据库。
本实施例所述用户群索引处理装置可设置于集群侧。所述用户群索引处理装置中的处理单元95可设置于数据服务器侧。
图10示例性示出了用于实现用户群索引处理装置的一个可选的硬件结构示意图,包括处理器21、输入/输出接口23(例如显示屏、触摸屏、扬声器),存储介质24以及网络接口22,组件可以经系统总线25连接通信。相应地,用户群索引处理装置的存储介质24中存储有用于执行本发明实施例提供的用户群索引处理方法的可执行指令。
其中,所述存储介质24可以是移动存储装置、随机存取存储器(RAM,RandomAccess Memory)、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。优选地,所述存储介质24可为非易失性存储介质。
其中,处理器21可以是CPU、MCU、DSP、PLC,还可以是处理电路,例如,专用集成电路(ASIC,Application Specific Integrated Circuits)。
具体地,所述处理器21通过所述系统总线25从所述存储介质24中读取并执行用户群索引处理方法的可执行指令,可执行如下步骤:
获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作。
本实施例所述用户群索引处理装置,能使用户群索引计算和更新的总时间显著降低,从而也能提高用户群定向投放业务的效率。
本实施例提供一种用户群索引处理系统,图11为本发明实施例提供的用户群索引处理系统的一种交互示意图,如图11所示,所述用户群索引处理系统,包括:
存储设备10,负责存储用户群索引;
集群20,负责获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
进一步地,所述用户群索引处理系统还包括:
至少一个数据服务器30,负责接收前端平台发送的触发操作;基于所述触发操作获取需要写入存储设备的信息标识以及所述信息标识对应的用户群数据的存储路径。其中,所述触发操作中携带有需要写入存储设备的信息标识以及所述信息标识对应的用户群数据的存储路径。
可选地,所述至少一个数据服务器30,还负责生成第一索引计算程序;将所述索引计算程序发送给集群20,以由集群20根据所述第一索引计算程序计算第一用户群索引。
具体地,数据服务器根据需要写入的信息标识、信息标识的个数、信息标识的存储位置、以及集群能够一次性读取的用户群数据,生成第一索引计算程序。
可选地,所述至少一个数据服务器30,还负责将所述增量索引和所述待删除索引下载至所述至少一个数据服务器30,负责根据所述增量索引和所述待删除索引分别执行到所述存储设备10的覆盖写操作和删除操作。
以存储设备为CKV存储系统为例,数据服务器从数据库获取需要写入CKV的信息标识和所述信息标识对应的存储路径;其中,所述存储路径是用户群数据在集群上的存储路径,所述集群在其本身的分布式存储系统上按照一定的存储路径存储有信息标识;这样,集群能够按照数据服务器指定的存储路径去获取需要写入信息标识元数据;数据服务器动态生成第一索引计算程序,并将所述索引计算程序交给集群;由集群根据所述第一索引计算程序以及所获取的元数据计算第一用户群索引;集群从其分布式系统上获取CKV存储系统中的镜像数据,即第二用户群索引;集群根据第一用户群索引和第二用户群索引分别计算出增量索引和待删除索引;数据服务器下载所述增量索引和所述待删除索引,并根据所述增量索引执行到CKV存储系统的覆盖写操作,根据所述待删除索引执行到CKV存储系统的删除操作。
实际应用中,用户群索引处理系统中的通讯可以由服务器中的硬件资源协同实现,如处理器等计算资源、通信资源(如用于支持实现各种方式的通信)实现。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本发明各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (19)

1.一种用户群索引处理方法,其特征在于,所述方法包括:
获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;
其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;
其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
2.根据权利要求1所述的方法,其特征在于,所述根据用户群数据分析得到第一时间戳对应的第一用户群索引之前,所述方法还包括:
本地存储有与所述存储设备当前信息状态一致的第二用户群索引。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
检测到所述存储设备进行覆盖写操作与删除操作均成功时,在本地存储所述第一用户群索引;
检测到所述存储设备进行覆盖写操作或删除操作失败时,删除所述第一用户群索引的相关信息。
4.根据权利要求1所述的方法,其特征在于,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作之前,还包括:
发送所述增量索引及所述待删除索引至一个或多个数据服务器;
通过所述一个或多个数据服务器执行覆盖写操作和删除操作;
其中,当所述数据服务器为多个时,不同数据服务器负责执行覆盖写操作和删除操作的用户群索引文件范围不同。
5.根据权利要求1所述的方法,其特征在于,所述按照对应的策略得到增量索引,包括:
查找第一用户群索引中含有,而第二用户群索引中未含有的第一类的主键;
查找第一用户群索引中与第二用户群索引中均含有,但对应的值不同的第二类的主键;
将所述第一类的主键对应的用户群索引记录以及所述第二类的主键对应的用户群索引记录确定为增量索引。
6.根据权利要求5所述的方法,其特征在于,所述基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,包括:
将所述第二类的主键对应的用户群索引记录覆盖写至所述存储设备中所述第一类的主键对应的用户群索引记录位置处;
将所述第一类的主键对应的用户群索引记录写入所述存储设备中可写位置处。
7.根据权利要求1所述的方法,其特征在于,所述按照对应的策略得到待删除索引,包括:
查找第一用户群索引中未含有,且第二用户群索引中含有的第三类的主键;
将有所述第三类的主键对应的用户群索引记录确定为删除索引。
8.根据权利要求7所述的方法,其特征在于,所述基于所述待删除索引对所述存储设备中的用户群索引进行删除操作,包括:
依据所述第三类的主键删除所述存储设备中主键为所述第三类的主键的用户群索引记录。
9.根据权利要求1所述的方法,其特征在于,所述根据所述信息标识从相应的用户集合中得到用户群数据,包括:
确定所述信息标识对应的用户群数据的存储路径;
按照所述存储路径查找所述信息标识对应的用户集合;
从所述用户集合获取所述信息标识对应的用户群数据。
10.一种用户群索引处理装置,其特征在于,所述装置包括:
第一获取单元,用于获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;
计算单元,用于根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;
第二获取单元,用于获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;
确定单元,用于根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;
处理单元,用于基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;
其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;
其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
存储单元,用于在本地存储有与所述存储设备当前信息状态一致的第二用户群索引。
12.根据权利要求10所述的装置,其特征在于,存储单元,还用于:
检测到所述存储设备进行覆盖写操作与删除操作均成功时,在本地存储所述第一用户群索引;
检测到所述存储设备进行覆盖写操作或删除操作失败时,删除所述第一用户群索引的相关信息。
13.根据权利要求10所述的装置,其特征在于,所述装置还包括:
发送单元,用于发送所述增量索引及所述待删除索引至一个或多个数据服务器;
所述处理单元,还用于通过所述一个或多个数据服务器执行覆盖写操作和删除操作;
其中,当所述数据服务器为多个时,不同数据服务器负责执行覆盖写操作和删除操作的用户群索引文件范围不同。
14.根据权利要求10所述的装置,其特征在于,所述确定单元,还用于:
查找第一用户群索引中含有,而第二用户群索引中未含有的第一类的主键;
查找第一时间戳对应的用户群索引中与第二时间戳对应的用户群索引中均含有,但对应的值不同的第二类的主键;
将所述第一类的主键对应的用户群索引记录以及所述第二类的主键对应的用户群索引记录确定为增量索引。
15.根据权利要求14所述的装置,其特征在于,所述处理单元,还用于:
将所述第二类的主键对应的用户群索引记录覆盖写至所述存储设备中所述第一类的主键对应的用户群索引记录位置处;
将所述第一类的主键对应的用户群索引记录写入所述存储设备中可写位置处。
16.根据权利要求10所述的装置,其特征在于,所述确定单元,还用于:
查找第一用户群索引中未含有,且第二用户群索引中含有的第三类的主键;
将有所述第三类的主键对应的用户群索引记录确定为删除索引。
17.根据权利要求16所述的装置,其特征在于,所述处理单元,还用于:
依据所述第三类的主键删除所述存储设备中主键为所述第三类的主键的用户群索引记录。
18.根据权利要求10所述的装置,其特征在于,所述计算单元,还用于:
确定所述信息标识对应的用户群数据的存储路径;
按照所述存储路径查找所述信息标识对应的用户集合;
从所述用户集合获取所述信息标识对应的用户群数据。
19.一种用户群索引处理系统,其特征在于,所述系统包括:
存储设备,用于存储用户群索引;
集群,用于获取需要写入存储设备的信息标识,所述信息标识用于表征具有同一用户标签的用户集合的编号;根据所述信息标识从相应的用户集合中得到用户群数据,根据用户群数据分析得到第一时间戳对应的第一用户群索引;获取与所述第一时间戳相邻的第二时间戳对应的第二用户群索引;根据所述第一用户群索引和所述第二用户群索引,按照对应的策略分别得到增量索引和待删除索引;基于所述增量索引对所述存储设备中的用户群索引进行覆盖写操作,并基于所述待删除索引对所述存储设备中的用户群索引进行删除操作;其中,第一、第二用户群索引以及所述存储设备中的用户群索引,均包括主键以及所述主键所对应的值;主键为用户账号,主键对应的值为相应用户账号所属的信息标识;其中,所述增量索引是以差异化的用户群索引记录来确定,所述差异化的用户群索引记录基于所述第一用户群索引和第二用户群索引之间的主键差异、以及相同主键的键值差异确定,每一差异化的用户群索引记录均包括主键以及所述主键所对应的所有值。
CN201611147243.3A 2016-12-13 2016-12-13 一种用户群索引处理方法、装置及系统 Active CN108614838B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611147243.3A CN108614838B (zh) 2016-12-13 2016-12-13 一种用户群索引处理方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611147243.3A CN108614838B (zh) 2016-12-13 2016-12-13 一种用户群索引处理方法、装置及系统

Publications (2)

Publication Number Publication Date
CN108614838A CN108614838A (zh) 2018-10-02
CN108614838B true CN108614838B (zh) 2021-08-10

Family

ID=63643740

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611147243.3A Active CN108614838B (zh) 2016-12-13 2016-12-13 一种用户群索引处理方法、装置及系统

Country Status (1)

Country Link
CN (1) CN108614838B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112203122B (zh) * 2020-10-10 2024-01-26 腾讯科技(深圳)有限公司 基于人工智能的相似视频处理方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104424324A (zh) * 2013-09-09 2015-03-18 腾讯科技(深圳)有限公司 列表组件中定位列表项的方法及装置
CN105138669A (zh) * 2015-09-07 2015-12-09 天脉聚源(北京)传媒科技有限公司 一种合并增量索引与总索引的方法及装置
CN105991418A (zh) * 2015-02-16 2016-10-05 阿里巴巴集团控股有限公司 通讯方法、装置、服务器及电子设备

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150287145A1 (en) * 2014-04-04 2015-10-08 Mastercard International Incorporated Assessing merchant affinity
US20160328432A1 (en) * 2015-05-06 2016-11-10 Squigglee LLC System and method for management of time series data sets
US9760591B2 (en) * 2015-05-14 2017-09-12 Walleye Software, LLC Dynamic code loading

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104424324A (zh) * 2013-09-09 2015-03-18 腾讯科技(深圳)有限公司 列表组件中定位列表项的方法及装置
CN105991418A (zh) * 2015-02-16 2016-10-05 阿里巴巴集团控股有限公司 通讯方法、装置、服务器及电子设备
CN105138669A (zh) * 2015-09-07 2015-12-09 天脉聚源(北京)传媒科技有限公司 一种合并增量索引与总索引的方法及装置

Also Published As

Publication number Publication date
CN108614838A (zh) 2018-10-02

Similar Documents

Publication Publication Date Title
CN108536761B (zh) 报表数据查询方法及服务器
CN109997126B (zh) 事件驱动提取、变换、加载(etl)处理
US10025528B2 (en) Managing transformations of snapshots in a storage system
CN102591909B (zh) 在去重复存储系统中提供增强的可扩展性的系统及方法
CN103678494B (zh) 客户端同步服务端数据的方法及装置
CN106484906B (zh) 一种分布式对象存储系统闪回方法及装置
US20210303537A1 (en) Log record identification using aggregated log indexes
CN105900093A (zh) 一种KeyValue数据库的数据表的更新方法与表数据更新装置
CN107330024B (zh) 标签系统数据的存储方法和装置
CN111444181A (zh) 知识图谱更新方法、装置及电子设备
CN107704604A (zh) 一种消息持久化方法、服务器和计算机可读存储介质
WO2023098462A1 (en) Improving performance of sql execution sequence in production database instance
CN114528127A (zh) 数据处理方法、装置、存储介质及电子设备
US10241716B2 (en) Global occupancy aggregator for global garbage collection scheduling
CN115858488A (zh) 基于数据治理的平行迁移方法、装置及可读介质
CN108614838B (zh) 一种用户群索引处理方法、装置及系统
CN111523921B (zh) 漏斗分析方法、分析设备、电子设备及可读存储介质
CN108846002B (zh) 标签实时更新方法及系统
CN114924914B (zh) 磁盘分区表信息备份、恢复方法及系统
CN110908644A (zh) 状态节点的配置方法、装置、计算机设备和存储介质
CN115858471A (zh) 业务数据变更记录方法、装置、计算机设备及介质
CN116048609A (zh) 配置文件更新方法、装置、计算机设备和存储介质
CN109828865A (zh) 数据恢复方法、装置及电子设备
CN104317820A (zh) 报表的统计方法和装置
JP2018109898A (ja) データマイグレーションシステム

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
GR01 Patent grant
GR01 Patent grant