本发明专利技术实施例公开了一种针对消息系统的数据统计方法及装置,方法包括:将消息系统中的每一条消息抽象为一个虚拟表的一行记录;根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。应用本发明专利技术实施例,虚拟表是只存在缓存中的,无需占用数据库的存储空间的,因此,应用本发明专利技术实施例,减少了数据统计过程中,对数据库存储空间的占用。
Data statistic method and device for message system
The embodiment of the invention discloses a device and a system for news, the data statistics method comprises the following steps: each message message system is abstracted as a virtual table in a row; according to the instructions received, the data recorded by the virtual table statistics. The embodiment of the invention, a virtual table is stored in the cache, no storage space required for the database, so the application of the embodiment of the invention reduces the data statistical process, occupation of the database storage space.
【技术实现步骤摘要】
本专利技术涉及数据统计
,特别涉及一种针对消息系统的数据统计方法及装置。
技术介绍
随着网络技术的发展,更多的人选择利用网络来获取信息,对于发布这些信息的网站的服务器而言,在消息系统中产生了庞大的消息流,尤其是访问量比较巨大的网站服务器而言,在消息系统中产生的消息流更为庞大。为了更好的服务用户,运维人员需要对服务器接收的消息流中的某些信息进行统计,进而采取应对措施。因此,对消息流中的某些信息进行统计是十分必要的。目前,现有技术中针对消息系统中的消息流中的某些信息进行统计,采用的是先将服务器接收的消息流进行处理,把处理后的消息流存储到数据库中,然后利用SQL语句统计数据库中的信息,得到统计结果。应用现有技术,需要将消息中的数据写入数据库,然后针对数据库中存储的数据进行统计。但在实际应用中,网站的服务器接收消息的数量非常庞大,如果将这些消息中的数据存储到数据库中,将会占用大量的数据库的存储空间。
技术实现思路
本专利技术实施例的目的在于提供一种针对消息系统的数据统计方法及装置,以减少数据统计过程中,对数据库存储空间的占用。为达到上述目的,本专利技术实施例公开了一种针对消息系统的数据统计方法,所述方法包括:将消息系统中的每一条消息抽象为一个虚拟表的一行记录;根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。较佳的,所述将消息系统中的每一条消息抽象为一个虚拟表的一行记录,包括:将消息系统中的消息流按照预设时间窗口进行分段;针对每一段消息流,将该段消息流中的每一条消息抽象为一个虚拟表的一行记录;所述根据接收到的统计指令,对所述虚拟表中记录的数据进行统计,包括:根据当前接收到的统计指令,对当前虚拟表中记录的数据进行统计。较佳的,所述每一条消息包含的数据的格式符合键值对格式。较佳的,所述方法还包括:输出当前统计结果。较佳的,所述输出当前统计结果,包括:将当前统计结果输出到控制台和/或预设文件中和/或预设数据库中。为达到上述目的,本专利技术实施例还提供了一种针对消息系统的数据统计装置,所述装置包括:抽象模块和统计模块,其中,所述抽象模块,用于将消息系统中的每一条消息抽象为一个虚拟表的一行记录;所述统计模块,用于根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。较佳的,所述抽象模块,具体用于:将消息系统中的消息流按照预设时间窗口进行分段;针对每一段消息流,将该段消息流中的每一条消息抽象为一个虚拟表的一行记录;所述统计模块,具体用于:根据当前接收到的统计指令,对当前虚拟表中记录的数据进行统计。较佳的,所述每一条消息包含的数据的格式符合键值对格式。较佳的,所述装置还包括输出模块,用于输出当前统计结果。较佳的,所述输出模块,具体用于:将当前统计结果输出到控制台和/或预设文件中和/或预设数据库中。本专利技术实施例提供了一种针对消息系统的数据统计方法及装置,方法包括:将消息系统中的每一条消息抽象为一个虚拟表的一行记录;根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。应用本专利技术实施例,针对消息系统生成的虚拟表是只存在缓存中的,无需占用数据库的存储空间的,因此,应用本专利技术实施例,减少了数据统计过程中,对数据库存储空间的占用。当然,实施本专利技术的任一产品或方法必不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的一种针对消息系统的数据统计方法的流程示意图;图2为本专利技术实施例提供的另一种针对消息系统的数据统计方法的流程示意图;图3为本专利技术实施例提供的一种针对消息系统的数据统计装置的结构示意图;图4为本专利技术实施例提供的另一种针对消息系统的数据统计装置的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为解决现有技术问题,本专利技术实施例提供了一种针对消息系统的数据统计方法及装置,下面首先就本专利技术实施例提供的一种针对消息系统的数据统计方法进行介绍。图1为本专利技术实施例提供的一种针对消息系统的数据统计方法的流程示意图,可以包括:S101:将消息系统中的每一条消息抽象为一个虚拟表的一行记录。具体的,可以将消息系统中的消息流按照预设时间窗口进行分段;针对每一段消息流,将该段消息流中的每一条消息抽象为一个虚拟表的一行记录。通常情况下,每一条消息包含的数据的格式符合键值对格式。在实际应用中,假设一个大型消息流的时长为30分钟,预设时间窗口为1分钟,该大型消息流就被分成了30段时长为1分钟的消息流,也可以把预设时间窗口设置为30分钟。假设,在当前时间窗口内接收到的当前消息流包含5条消息,每个消息包含4个键值对,如下所示:MassageID:50231,userID:zhangluzhi,videoID:1129876098,request_time:0.083MassageID:50232,userID:haiminxue,videoID:1129876095,request_time:0.211MassageID:50233,userID:zhangludu,videoID:1129870001,request_time:0.057MassageID:50234,userID:jiayibindun,videoID:1129870009,request_time:0.077MassageID:50235,userID:shihuanlen,videoID:1129875667,request_time:0.180将该段消息流中的每一条消息抽象为一个虚拟表的一行记录,该段消息流中共有5条消息,对应虚拟表中的5条记录。通常情况下,可以把每一条消息中的所有键值对对应的数据存储到虚拟表中,也可以将消息中的部分键值对对应的数据存储到虚拟表中。根据上述步骤,得到的虚拟表如表1所示:表1MessageIDuserIDvideoIDrequest_time50231zhangluzhi11298760980.08350232haiminxue11298760950.21150233zhangludu11298700010.05750234jiayibindun11298700090.07750235shihuanlen11298756670.180S102:根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。具体的,根据当前接收到的统计指令,对当前虚拟表中记录的数据进行统计。在实际应用中,可以根据接收到的统计指令中包含的SQL(结构化查询语言)语句,统计S101中的虚拟表中MessageID、userID、videoID和request_time中的一种或多种。假设,用户需要的是针对当前信息流的平均request_time。S101中的虚拟表的平本文档来自技高网...
【技术保护点】
一种针对消息系统的数据统计方法,其特征在于,所述方法包括:将消息系统中的每一条消息抽象为一个虚拟表的一行记录;根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。
【技术特征摘要】
1.一种针对消息系统的数据统计方法,其特征在于,所述方法包括:将消息系统中的每一条消息抽象为一个虚拟表的一行记录;根据接收到的统计指令,对所述虚拟表中记录的数据进行统计。2.根据权利要求1所述的方法,其特征在于,所述将消息系统中的每一条消息抽象为一个虚拟表的一行记录,包括:将消息系统中的消息流按照预设时间窗口进行分段;针对每一段消息流,将该段消息流中的每一条消息抽象为一个虚拟表的一行记录;所述根据接收到的统计指令,对所述虚拟表中记录的数据进行统计,包括:根据当前接收到的统计指令,对当前虚拟表中记录的数据进行统计。3.根据权利要求1或2所述的方法,其特征在于,所述每一条消息包含的数据的格式符合键值对格式。4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:输出当前统计结果。5.根据权利要求4所述的方法,其特征在于,所述输出当前统计结果,包括:将当前统计结果输出到控制台和/或预设文件中和/或预设数据库...
【专利技术属性】
技术研发人员:叶炜晨,
申请(专利权)人:北京奇艺世纪科技有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。