用户群体数据的获取方法和装置、存储介质及电子设备
技术领域
本公开涉及互联网技术领域,特别涉及一种用户群体数据的获取方法和装置、存储介质及电子设备。
背景技术
现有技术中,用户群体数据通常是分散的,如果想要获取用户群体数据,则需要针对每个用户进行单独地查询,并人工对查询到的用户群体数据进行分类,因此,现有技术无法快速地查询到用户想要的用户群体数据,导致操作便利性差,并进一步导致用户体验差。
发明内容
有鉴于此,本公开的一个目的在于提供一种用户群体数据的获取方法和装置、存储介质及电子设备,以解决现有技术中存在的无法快速地查询到目标用户群体数据导致的操作便利性差等问题。
本公开的一个方面提供一种用户群体数据的获取方法,该方法包括:获取用户的历史数据;对所述历史数据按照维度进行特征提取,获得特征数据;将所述特征数据存储在查询引擎中;响应查询条件从所述查询引擎中查找与所述查询条件对应的用户群体数据。
在本公开的一个实施例中,对历史数据按照维度进行特征提取,获得特征数据,包括:确定进行特征提取的所述维度;对每个用户的历史数据按照所述维度进行特征提取,获取用户数据;基于所述维度对所述用户数据进行归类,获取各个所述维度的特征数据。
在本公开的一个实施例中,维度包括用户信息、观众信息、粉丝信息、地域信息中的至少一种。
在本公开的一个实施例中,将特征数据存储在查询引擎中,包括:将特征数据按照特征目录存储在查询引擎中。
在本公开的一个实施例中,特征目录包括用户目录、观众目录、粉丝目录、地域目录中的至少一种。
在本公开的一个实施例中,特征目录由维度按照预定顺序组成。
在本公开的一个实施例中,查询引擎为ClickHouse查询引擎。
本公开的另一个方面提供一种用户群体数据的获取装置,该装置包括:获取模块,用于获取用户的历史数据;提取模块,用于对历史数据按照维度进行特征提取,获得特征数据;存储模块,用于将特征数据存储在查询引擎中;查找模块,用于响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
本公开的再一个方面提供一种存储介质,存储有计算机程序,该计算机程序被处理器执行时实现如上所述的方法。
本公开的又一个方面提供一种电子设备,至少包括存储器、处理器,该存储器上存储有计算机程序,该处理器在执行存储器上的计算机程序时实现如上所述的方法。
根据本公开实施例提供的技术方案,通过获取用户的历史数据;对历史数据按照维度进行特征提取,获得特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据,能够快速地查询到目标的用户群体数据,因此,提高了操作的便利性,并进一步提升了用户体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据本公开一示例性实施例示出的一种用户群体数据的获取方法的流程图。
图2是根据本公开另一个示例性实施例示出的一种用户群体数据的获取方法的流程图。
图3是根据本公开一示例性实施例示出的一种用户群体数据的获取装置的框图。
图4是根据本公开一示例性实施例示出的一种电子设备的框图。
具体实施方式
为了使得本公开的目的、技术方案和优点更加清楚,下面将结合本公开的附图,对本公开的技术方案进行清楚、完整地描述。显然,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。基于所描述的本公开的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。“上”、“下”、“左”、“右”等仅用于表示相对位置关系,当被描述对象的绝对位置改变后,则该相对位置关系也可能相应地改变。
为了保持本公开的以下说明清楚且简明,本公开省略了已知功能和已知部件的详细说明。
图1是根据本公开一示例性实施例示出的一种用户群体数据的获取方法的流程图。图1的方法可以由服务器执行,如图1所示,该方法包括:
S110:获取用户的历史数据。
在本公开实施例中,可以通过服务器获取用户的历史数据。具体地,服务器可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者还可以是一个云计算服务中心,本公开对此不作限制。
其中的用户可以是视频共享用户、主播用户、文章共享用户或其他类型的用户。历史数据可以是涉及多个方面的数据,总的来说一般可以分为涉及用户方面的、涉及观众方面的、涉及粉丝方面的以及涉及地域方面的数据信息,当然也可以包括其他方面的数据信息。其中,涉及用户方面的数据信息可以是用户基本信息、观看用户量、现金收入量、粉丝数量、播出时长信息、预定时间内的观看流量数据信息、用户开播时段偏好信息等;涉及观众方面的数据信息可以是观众排行榜数据信息、观看数据分布信息、观看评论分析信息等;涉及粉丝方面的数据信息可以是粉丝的观看率信息、粉丝的礼物贡献率信息等;涉及地域方面的数据信息可以是观看地域分布信息等。具体的数据信息种类可以包括上述各种数据但不限于此。
当然,对于不同的用户主体,可能涉及的历史数据是有所区别的。例如,对于视频共享用户而言,历史数据可以包括但不限于视频点击量、现金收入量、粉丝数量、视频播放时长等数据;对于主播用户而言,历史数据可以包括但不限于观看用户量、现金收入量、粉丝数量、主播播放时长等数据;对于文章共享用户而言,历史数据可以包括但不限于文章点击量、现金收入量及粉丝数量等数据。
需要说明的是,上述历史数据的具体类型仅为针对不同用户的示例性说明,当该方法应用于其他类型的用户时,也可获取其他类型的用户的历史数据。此外,还需要说明的是,历史数据通常存储在服务器、由多台计算机组成的计算机集群或其他装置中,获取历史数据的过程为从上述装置中提取数据的过程。
S120:对历史数据按照维度进行特征提取,获得特征数据。
在本公开实施例中,在获取用户的历史数据之后,服务器对获取到的历史数据按照维度进行特征提取,获得特征数据。
由于例如软件开发者往往需要关注具有特定特征的一类用户群体,以便于针对这类用户群体进行相关操作,例如推送信息等。因此,通过特征提取的方式能够找到符合一定特定特征的一类用户群体,这样,就将特征与一类用户群体进行了关联。具体地。特征提取是指从原始特征中找出最有效的特征。在该实施例中,对历史数据可以按照维度进行特征提取,从而获得不同用户基于维度的特征数据,或者说是基于某一维度的一类用户群体的数据,为获取符合一定特定特征的用户群体提供支撑。
这里,维度就是可以确定一类用户群体的选择标准,其包括但不限于用户信息、观众信息、粉丝信息、地域信息中的一种或多种;特征数据就是相应地就是满足该维度要求的相关数据。例如,当维度选择为粉丝数量大于10万时,特征数据就是粉丝数量为10万以上的用户以及用户的相关数据。
S130:将特征数据存储在查询引擎中。
在本公开实施例中,在通过特征提取获得特征数据之后,服务器将获得的特征数据存储在查询引擎中,考虑到查询引擎读取速度快的优势,以便于例如软件开发者等通过查询引擎获取符合一类特定特征的用户群体的数据。
具体地,获得的特征数据不限于如上所述的存储在查询引擎中,而是还可以存储在数据库中,本公开对此不作限制。这里,查询引擎可以包括但不限于Hive、Impala、Shark/Spark、Stinger、Presto、Druid、ClickHouse等;数据库可以包括但不限于MySQL、SQLServer、FileMaker、Oracle、Sybase、dBASE、FoxPro、DB2等。
在该实施例中,查询引擎优选地为ClickHouse查询引擎。具体地,ClickHouse是一个用于联机分析处理(Online Analytical Processing,OLAP)的列式数据库管理系统(column-oriented DataBase Management System,Column-oriented DBMS),其解决了传统数据库在数据量较大情况下查询缓慢的问题。进一步地,ClickHouse至少包括以下优点:数据需要以大批次(大于1000行)进行更新,而不是单行更新,或者根本没有更新操作;数据仅仅是添加到数据库中,而不需要修改;在读取数据时,会从数据库中提取出大量的行,而仅涉及到一小部分列;查询频率相对较低(通常每台服务器每秒查询数百次或更少),对于简单查询,允许大约50毫秒的延迟等。
S140:响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
在本公开实施例中,在将特征数据存储在查询引擎中之后,服务器响应查询条件能够从查询引擎中快速查找与查询条件对应的用户群体数据。
具体地,查询条件可以是预先设置的,根据例如软件开发者的需求而确定,也可以是基于特征数据的查询结果设置的,本公开对此不作限制。进一步地,由于查询引擎中仅存储了历史数据的一部分,因此,仅需要针对查询条件在该部分数据(即特征数据)中进行查询便可以查找到与该查询条件对应的用户群体数据,从而实现了特征数据的快速查找。
根据本公开实施例提供的技术方案,通过获取用户的历史数据;对历史数据按照维度进行特征提取,获取特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据,能够快速地查询到用户想要的用户群体数据,因此,提高了操作的便利性,并进一步提升了用户体验。
在本公开的另一个实施例中,对历史数据按照维度进行特征提取,获取特征数据,包括:确定进行特征提取的维度;对每个用户的历史数据按照维度进行特征提取,获得用户数据;通过例如聚类算法等对各个维度的用户数据进行归类,获取各个维度的特征数据。
具体地,通过服务器等确定进行特征提取的维度,并对每个用户的历史数据按照维度进行特征提取,获得用户数据,这里用户数据可以是指符合维度要求的用户列表;进一步地,基于所述维度通过例如聚类算法对所述用户数据进行归类,获取各个维度的特征数据。
这里,聚类算法是指按照某个特定标准(例如距离)把一个数据集分割成不同的类或簇,使得同一个簇内的数据对象的相似性尽可能大,同时不在同一个簇中的数据对象的差异性也尽可能地大;也就是说,通过聚类之后,同一类的数据尽可能聚集到一起,而不同类的数据尽量分离。聚类算法可以包括但不限于诸如K-means的基于划分的聚类(partitioning methods)、诸如具有噪声的基于密度的聚类方法(Density-Based SpatialClustering of Applications with Noise,DBSCAN)的基于密度的聚类(density-basedmethods)、诸如STING、CLIQUE的基于网格的聚类(gird-based methods)和诸如高斯混合模型(Gaussian Mixture Model,GMM)、自组织映射(Self-organizing Maps,SOM)的基于模型的聚类(model-based methods)等。
进一步地,各个维度的特征数据可以包括满足维度要求的用户的属性标签和行为标签。进一步地,属性标签可以包括但不限于年龄、性别、地域、文化、职业、收入、生活习惯等;行为标签可以包括但不限于粉丝数量、页面访问量、点赞数量、地域分布等。
下面通过一个具体的示例进一步描述如何通过特征提取,获取特征数据的过程。当在特征提取过程中,首先,确定进行特征提取的维度,例如是:维度1(粉丝数量大于10万)、维度2(播出时间偏好为晚间20:00-22:00)、维度3(播出时长大于2小时)、维度4(地域分布在北京),这样,可以针对着4个维度获取相应的用户群体数据;然后,针对每个用户的历史数据都基于维度1至维度4进行特征提取,获得满足上述各维度要求的用户数据,这个用户数据可以是用户的名录或者列表,例如用户数据可以是基于符合维度1或者维度2或者维度3或者维度4要求的用户1至用户10000的用户ID列表;进一步地,对满足不同维度要求的所有用户数据进行归类,例如按照用户的属性标签或者行为标签进行归类,从而获取基于各个维度的特征数据,例如,特征数据可以是基于符合维度1要求的用户的属性标签和行为标签,从而寻找到基于符合维度1要求的用户群体的特征数据,形成基于符合维度1要求的用户群体的画像。具体形式可以如下表所示,但是并不限于此。
表:满足粉丝数量大于10万(维度1)的用户群体的特征数据
在本公开的另一个实施例中,将特征数据存储在查询引擎中,包括:将特征数据按照特征目录存储在查询引擎中。
具体地,服务器将特征数据按照特征目录存储在查询引擎中。这里,特征目录可以包括但不限于用户目录、观众目录、粉丝目录、地域目录中的一种或多种,其中用户目录、观众目录、粉丝目录、地域目录中每种目录都可以由维度按照预定顺序组成。当确定的维度类型较少,无法按照用户目录、观众目录、粉丝目录、地域目录的形式存储的情况下,可选地,特征目录可以仅由维度按照预定顺序组成。
进一步地,特征目录可以有多种类型,以主播用户为例,特征目录可以包括但不限于用户目录、观众目录、粉丝目录、地域目录中的一种或多种。
这里,对应着用户信息中确定的维度,用户目录可以包括以下维度中的至少一种:用户基本信息、观看用户量、现金收入量、粉丝数量、播出时长信息、预定时间内的观看流量数据信息、用户开播时段偏好信息。观众目录可以包括以下维度中的至少一种:观众排行榜数据信息、观看数据分布信息、观看评论分析信息。这里,观众排行榜数据信息可以包括多个维度的观众排行榜数据,例如,送礼榜,其能够显示观众送礼数量的排行榜,通过该排行榜能够展示哪些观众给该主播用户送礼的数量较多,以及给该主播用户送礼量较多的观众的具体送礼数量数据;评论榜,其能够显示哪些观众热衷于评论该主播用户。
该观看数据分布信息可以包括观看时长分布、消费金额分布、送礼设备分布及送礼入口分布等数据。这里,通过观看时长分布能够显示出哪些观众或哪类观众观看该主播用户的时长相对较长,哪些观众观看该主播用户的时长相对较短。该消费金额分布能够展示哪些观众或哪类观众在该主播用户处消费金额较多或较少。该送礼设备分布能够展示送礼观众所使用电子设备的排行榜,例如,智能手机、平板电脑或笔记本电脑等,还可以具体到电子设备的品牌信息、型号信息及价格信息等。送礼入口分布能够展示向该主播送礼的观众主要通过哪些流量入口观看该主播用户的直播,例如,网页、小程序或者应用程序(Application,APP)等。通过上述观看数据分布信息可以了解一类观众观看该主播用户直播的习惯。
粉丝目录可以包括以下维度中的至少一种:粉丝的观看率信息、粉丝的礼物贡献率信息。这里,粉丝的观看率信息为粉丝中观看该主播用户的人数或时长占观众总数量或总观看时长的比率,能够体现出粉丝对观看数据的贡献率。粉丝的送礼贡献率信息为粉丝赠送的礼品数量或粉丝中送礼的人数占观众曾总的总礼品数量或观众中送礼的总人数的比例,能够体现出粉丝对送礼量的贡献率。
地域目录可以包括的维度例如有观众的观看地域分布信息。该观看低于分布信息可包括该主播用户的观众主要分布在哪些地域或该主播用户的播放内容适于哪些地域的人群观看。
需要说明的是,上述实施例仅以主播用户为例对特征目录进行了示例性说明,然而,本公开的用户不仅限于如上所述的主播用户,而是例如可以为视频共享用户、文章共享用户等。此外,本公开的特征目录也不仅限于如上所述的与主播用户对应的特征目录。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
图2是根据本公开另一个示例性实施例示出的一种用户群体数据的获取方法的流程图。如图2所示,该方法包括:
S210:获取用户的历史数据;
S220:确定进行特征提取的维度;
S230:对每个用户的历史数据按照维度进行特征提取,获得用户数据;
S240:基于所述维度对所述用户数据进行归类,获取各个维度的特征数据;
S250:将用户数据按照特征目录存储在查询引擎中;
S260:响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
根据本公开实施例提供的技术方案,通过获取用户的历史数据;确定进行特征提取的维度;对每个用户的历史数据按照维度进行特征提取,获得用户数据;基于所述维度对所述用户数据进行归类,获取各个维度的特征数据;将用户数据按照特征目录存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据,能够快速地查询到用户想要的用户群体数据,因此,提高了操作的便利性,并进一步提升了用户体验。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图3是根据本公开一示例性实施例示出的一种用户群体数据的获取装置的框图。如图3所示,该装置包括:
获取模块310,用于获取用户的历史数据;
提取模块320,用于对历史数据按照维度进行特征提取,获得特征数据;
存储模块330,用于将特征数据存储在查询引擎中;
查找模块340,用于响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
根据本公开实施例提供的技术方案,通过获取用户的历史数据;对历史数据按照维度进行特征提取,获得特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据,能够快速地查询到用户想要的用户群体数据,因此,提高了操作的便利性,并进一步提升了用户体验。
在本公开的另一个实施例中,提取模块320包括:
确定单元,用于确定进行特征提取的维度;
第一获取单元,用于对每个用户的历史数据按照维度进行特征提取,获得用户数据;
第二获取单元,用于基于所述维度对所述用户数据进行归类,获取各个维度的特征数据。
在本公开的另一个实施例中,维度包括粉丝数量、播出时间偏好、播出时长、地域分布中的至少一种。
在本公开的另一个实施例中,存储模块330还用于:将特征数据按照特征目录存储在查询引擎中。
在本公开的另一个实施例中,特征目录由维度按照预定顺序组成。
上述装置中各个模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
图4是根据本公开一示例性实施例示出的一种电子设备400的框图。如图4所示,该电子设备400至少包括存储器410和处理器420,存储器410上存储有计算机程序,处理器420在执行存储器410上的计算机程序时实现如上所述的实施例提供的方法。
具体地,该方法包括:处理器420获取用户的历史数据;对历史数据按照维度进行特征提取,获得特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
在本公开一个实施例中,处理器420确定进行特征提取的维度;对每个用户的历史数据按照维度进行特征提取,获得用户数据;基于所述维度对所述用户数据进行归类,获取各个维度的特征数据。
在本公开的一个实施例中,维度包括粉丝数量、播出时间偏好、播出时长、地域分布中的至少一种。
在本公开的一个实施例中,处理器420将特征数据按照特征目录存储在查询引擎中。
在本公开的一个实施例中,特征目录由维度按照预定顺序组成。
根据本公开实施例提供的技术方案,通过获取用户的历史数据;对历史数据按照维度进行特征提取,获得特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据,能够快速地查询到用户想要的用户群体数据,因此,提高了操作的便利性,并进一步提升了用户体验。
本公开还提供了一种存储介质,当存储介质中的指令由上述装置400的处理器执行时,使得上述装置400能够执行一种用户群体数据的获取方法,包括:获取用户的历史数据;对历史数据按照维度进行特征提取,获得特征数据;将特征数据存储在查询引擎中;响应查询条件从查询引擎中查找与查询条件对应的用户群体数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或者不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序校验码的介质。
此外,尽管已经在本文中描述了示例性实施例,其范围包括任何和所有基于本公开的具有等同元件、修改、省略、组合(例如,各种实施例交叉的方案)、改编或改变的实施例。权利要求书中的元件将被基于权利要求中采用的语言宽泛地解释,并不限于在本说明书中或本申请的实施期间所描述的示例,其示例将被解释为非排他性的。因此,本说明书和示例旨在仅被认为是示例,真正的范围和精神由以下权利要求以及其等同物的全部范围所指示。
以上对本公开多个实施例进行了详细说明,但本公开不限于这些具体的实施例,本领域技术人员在本公开构思的基础上,能够做出多种变型和修改实施例,这些变型和修改都应落入本公开所要求保护的范围之内。