著录项信息
专利名称 | 分布式日志统计处理方法和系统 |
申请号 | CN201210013826.2 | 申请日期 | 2012-01-17 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2013-07-17 | 公开/公告号 | CN103209087A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L12/24 | IPC分类号 | H;0;4;L;1;2;/;2;4;;;H;0;4;L;2;9;/;0;8查看分类表>
|
申请人 | 深圳市腾讯计算机系统有限公司 | 申请人地址 | 广东省深圳市南山区高新区高新南一路飞亚达大厦5-10楼
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 深圳市腾讯计算机系统有限公司 | 当前权利人 | 深圳市腾讯计算机系统有限公司 |
发明人 | 黎文彦;孟岸 |
代理机构 | 广州华进联合专利商标代理有限公司 | 代理人 | 何平;曾旻辉 |
摘要
一种分布式日志统计处理方法,包括以下步骤:获取日志产生端上的原始日志数据;统计处理所述获取的原始日志数据,得到初步统计结果;将所述初步统计结果发送至中心服务器;通过中心服务器合并初步统计结果。上述方法不但可节约传送海量原始日志数据花费的大量带宽和时间,而且还使中心服务器只需对初步统计结果进行简单的合并处理即可,节约了中心服务器处理庞大的原始日志数据所需的时间和系统资源,因而上述分布式日志处理方法提高了处理分布式日志的效率。此外,还提供一种分布式日志统计处理系统。
1.一种分布式日志统计处理方法,包括以下步骤:
获取日志产生端上的原始日志数据,所述日志产生端包括客户端和服务器;
统计处理所述获取的原始日志数据,得到初步统计结果,并将所述初步统计结果发送至中心服务器;
通过中心服务器合并初步统计结果。
2.根据权利要求1所述的分布式日志统计处理方法,其特征在于,所述统计处理所述获取的原始日志数据,得到初步统计结果的步骤包括:
在所述获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计所述预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。
3.根据权利要求2所述的分布式日志统计处理方法,其特征在于,所述通过中心服务器合并初步统计结果的步骤包括:
通过中心服务器将初步统计结果按照所述关键字进行分类;
通过中心服务器按照关键字分类合并所述初步统计结果。
4.根据权利要求1至3任意一项所述的分布式日志统计处理方法,其特征在于,所述原始日志数据包括用户操作记录和/或系统运行数据。
5.一种分布式日志统计处理系统,其特征在于,包括多个日志产生端、多个日志统计器、至少一个中心服务器,一个所述日志产生端与至少一个所述日志统计器相连,所述日志统计器与中心服务器相连,其中:
日志产生端用于记录并存储原始日志数据,所述日志产生端包括客户端和服务器;
日志统计器用于获取日志产生端上的原始日志数据,统计处理所述获取的原始日志数据,得到初步统计结果,并将所述初步统计结果发送至中心服务器;
中心服务器用于接收多个日志统计器发送的所述初步统计结果,进一步合并所述初步统计结果。
6.根据权利要求5所述的分布式日志统计处理系统,其特征在于,所述日志统计器包括日志获取模块、统计模块、通信模块,其中:
日志获取模块用于获取日志产生端上的原始日志数据;
统计模块用于统计处理所述获取的原始日志数据,得到初步统计结果;
通信模块用于将所述初步统计结果发送至中心服务器。
7.根据权利要求6所述的分布式日志统计处理系统,其特征在于,所述统计模块用于在所述获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计所述预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。
8.根据权利要求7所述的分布式日志统计处理系统,其特征在于,所述中心服务器还用于将接收的多个日志统计器的初步统计结果按照所述关键字进行分类,并按照关键字分类合并所述初步统计结果。
9.根据权利要求5所述的分布式日志统计处理系统,其特征在于,所述日志产生端包括客户端,所述日志统计器集成或独立于所述客户端;或
所述日志产生端包括服务器,所述日志统计器集成或独立于所述服务器;或所述日志产生端包括云服务系统,所述日志统计器集成或独立于所述云服务系统。
10.根据权利要求5至9任意一项所述的分布式日志统计处理系统,其特征在于,所述原始日志数据包括用户操作记录和/或系统运行数据。
分布式日志统计处理方法和系统\n【技术领域】\n[0001] 本发明涉及网络技术,特别的涉及一种分布式日志统计处理方法和系统。\n【背景技术】\n[0002] 随着互联网业务的发展,互联网业务每天产生的日志数据越来越庞大。统计处理用户访问互联网业务的操作日志以及互联网业务的运行日志,可获取用户行为数据和系统运营状况信息。\n【发明内容】\n[0003] 基于此,有必要提供一种能提高日志处理效率的分布式日志统计处理方法。\n[0004] 一种分布式日志统计处理方法,包括以下步骤:\n[0005] 获取日志产生端上的原始日志数据;\n[0006] 统计处理所述获取的原始日志数据,得到初步统计结果;\n[0007] 将所述初步统计结果发送至中心服务器;\n[0008] 通过中心服务器合并初步统计结果。\n[0009] 优选的,所述统计处理所述获取的原始日志数据,得到初步统计结果的步骤包括:\n[0010] 在所述获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计所述预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。\n[0011] 优选的,所述通过中心服务器合并初步统计结果的步骤包括:\n[0012] 通过中心服务器将初步统计结果按照所述关键字进行分类;\n[0013] 通过中心服务器按照关键字分类合并所述初步统计结果。\n[0014] 优选的,所述原始日志数据包括用户操作记录和/或系统运行数据。\n[0015] 基于此,还有必要提供一种能提高日志处理效率的分布式日志统计处理系统。\n[0016] 一种分布式日志统计处理系统,包括多个日志产生端、多个日志统计器、至少一个中心服务器,一个所述日志产生端至少与一个所述日志统计器相连,所述日志统计器与中心服务器相连,其中:\n[0017] 日志产生端用于记录并存储原始日志数据;\n[0018] 日志统计器用于获取日志产生端上的原始日志数据,统计处理所述获取的原始日志数据,得到初步统计结果,将所述初步统计结果发送至中心服务器;\n[0019] 中心服务器用于接收多个日志统计器发送的所述初步统计结果,进一步合并所述初步统计结果。\n[0020] 优选的,所述日志统计器包括日志获取模块、统计模块、通信模块,其中:\n[0021] 获取模块用于获取日志产生端上的原始日志数据;\n[0022] 统计模块用于统计处理所述获取的原始日志数据,得到初步统计结果;\n[0023] 通信模块用于将所述初步统计结果发送至中心服务器。\n[0024] 优选的,所述统计模块用于在所述获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计所述预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。\n[0025] 优选的,所述中心服务器还用于将接收的多个日志统计器的初步统计结果按照所述关键字进行分类,并按照关键字分类合并所述初步统计结果。\n[0026] 优选的,所述日志产生端包括客户端,所述日志统计器集成或独立于所述客户端;\n或\n[0027] 所述日志产生端包括服务器,所述日志统计器集成或独立于所述服务器;或[0028] 所述日志产生端包括云服务系统,所述日志统计器集成或独立于所述云服务系统。\n[0029] 优选的,所述原始日志数据包括用户操作记录和/或系统运行数据。\n[0030] 上述分布式日志处理方法和系统,统计处理日志产生端上的原始日志数据,得到初步统计结果,将初步统计结果发送至中心服务器,并通过中心服务器合并初步统计结果。\n由于将日志产生端上的原始日志数据分别进行统计处理,相对于汇聚各日志产生端上的原始日志数据后再进行统计处理而言,可节省大量的时间,而且统计处理得到的初步统计结果比原始日志数据的数据量要小很多,因此不但可节约传送海量原始日志数据花费的大量带宽和时间,而且还使中心服务器只需对初步统计结果进行简单的合并处理即可,节约了处理庞大的原始日志数据所需的时间和系统资源,因而上述分布式日志处理方法和系统提高了处理分布式日志的效率。\n【附图说明】\n[0031] 图1为一个实施例中的分布式日志处理方法的流程示意图;\n[0032] 图2为一个实施例中的分布式日志处理方法的原理图;\n[0033] 图3为一个实施例中的分布式日志处理系统的结构示意图;\n[0034] 图4为一个实施例中的日志统计器的结构示意图。\n【具体实施方式】\n[0035] 如图1所示,在一个实施例中,一种分布式日志统计处理方法,包括以下步骤:\n[0036] 步骤S101,获取日志产生端上的原始日志数据。\n[0037] 在一个实施例中,原始日志数据包括用户操作记录和/或系统运行数据等。具体的,用户操作记录包括用户登录、点击、访问、编辑、上传、更新、下载、退出等记录,系统运行数据包括响应时长、错误报告等信息。例如,记录用户操作图片的原始日志数据如下:\n“2012-1-1,用户A,上传一张图片P1,耗时800毫秒”;“2012-1-2,用户A,更新一张图片P2,耗时1000毫秒”;“2012-1-3,用户A,删除一张图片P3,耗时500毫秒”。\n[0038] 具体的,可从提供业务服务的客户端、服务器或云服务系统等日志产生端上获取海量用户操作请求产生的海量原始日志数据。\n[0039] 步骤S102,统计处理获取的原始日志数据,得到初步统计结果。\n[0040] 在一个实施例中,可采用传统的线性回归、logistic回归、聚类、主成分分析、方差分析、时间序列分析等统计分析方法对原始日志数据进行统计处理,得到初步统计结果,在此不再赘述。\n[0041] 在另一个实施例中,可采用简单的关键字查找法统计分析原始日志数据。具体的,可在获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。\n[0042] 例如,可预先设置关键字为“upload”,查找包括关键字“upload”的原始日志数据,从查找得到的原始日志数据中统计上传次数、上传用户、上传的错误比例、上传耗时等等,得到上传相关的初步统计结果,以支持后续进一步进行用户行为的分析以及系统运营和负载情况的分析。\n[0043] 步骤S103,将初步统计结果发送至中心服务器。\n[0044] 将日志产生端上的海量的原始日志数据进行统计处理后得到的初步统计结果的数据量很小,因而只需要花费很少的带宽资源就可将初步统计结果发送至中心服务器。\n[0045] 步骤S104,通过中心服务器合并初步统计结果。\n[0046] 在一个实施例中,可采用传统的线性回归、logistic回归、聚类、主成分分析、方差分析、时间序列分析等统计分析方法对初步统计结果进行统计合并处理,得到最终统计结果,在此不再赘述。\n[0047] 在另一个实施例中,可通过中心服务器将上述初步统计结果按照关键字进行分类,并通过中心服务器按照关键字分类合并上述初步统计结果。\n[0048] 具体的,可建立与关键字对应的数据表,将同属于该关键字类别的初步统计结果插入同一张数据表中,进一步汇总该张数据表中的数据,得到综合统计结果。例如,将“上传”相关的初步统计结果分为一类,插入与“上传”对应的数据表中,进一步汇总与“上传”相关的初步统计结果。例如,汇总该张数据表中的“上传次数”,则将该数据表中“上传次数”字段的所有数据相加,得到总的上传次数。再例如,将“下载”相关的初步统计结果分为一类,插入与“下载”对应的数据表中,进一步汇总与“下载”相关的初步统计结果,等等。\n[0049] 下面结合图2来说明上述分布式日志统计处理方法的原理:\n[0050] (1)海量的用户1向日志产生端2提交操作请求,日志产生端2产生海量的原始日志数据。\n[0051] (2)日志产生端2记录并存储原始日志数据,日志产生端2包括提供业务服务的客户端、服务器或云服务系统等。\n[0052] (3)日志统计器3获取日志产生端2上的原始日志数据,统计处理该原始日志数据,得到初步统计结果,并将初步统计结果发送至中心服务器4。\n[0053] (4)中心服务器4接收多个日志统计器3发送的初步统计结果,并合并初步统计结果,得到综合统计结果。\n[0054] 如图3所示,在一个实施例中,一种分布式日志统计处理系统,包括多个日志产生端100、多个日志统计器200、至少一个中心服务器300,一个日志产生端100与至少一个日志统计器200相连,日志统计器200与中心服务器300相连,其中:\n[0055] 日志产生端100用于记录并存储原始日志数据。\n[0056] 在一个实施例中,原始日志数据包括用户操作记录和/或系统运行数据。具体的,用户操作记录包括用户登录、点击、访问、编辑、上传、更新、下载、退出等记录,系统运行数据包括响应时长、错误报告等信息。例如,记录用户操作图片的原始日志数据如下:\n“2012-1-1,用户A,上传一张图片P1,耗时800毫秒”;“2012-1-2,用户A,更新一张图片P2,耗时1000毫秒”;“2012-1-3,用户A,删除一张图片P3,耗时500毫秒”。\n[0057] 具体的,日志产生端100包括提供业务服务的客户端、服务器或云服务系统等。在一个实施例中,日志产生端100包括客户端(图中未示出),日志统计器200集成或独立于所述客户端;在另一个实施例中,日志产生端100包括服务器(图中未示出),日志统计器\n200集成或独立于所述服务器;在又一实施例中,日志产生端100包括云服务系统(图中未示出),日志统计器200集成或独立于所述云服务系统。\n[0058] 日志统计器200用于获取日志产生端100上的原始日志数据,统计处理获取的原始日志数据,得到初步统计结果,进一步将初步统计结果发送至中心服务器300。\n[0059] 如图4所示,在一个实施例中,日志统计器200包括日志获取模块201、统计模块\n202、通信模块203,其中:\n[0060] 日志获取模块201用于获取日志产生端100上的原始日志数据。\n[0061] 统计模块202用于统计处理日志获取模块201获取的原始日志数据,得到初步统计结果。\n[0062] 在一个实施例中,统计模块202可采用传统的线性回归、logistic回归、聚类、主成分分析、方差分析、时间序列分析等统计分析方法对原始日志数据进行统计处理,得到初步统计结果,在此不再赘述。\n[0063] 在另一个实施例中,统计模块202可采用简单的关键字查找法统计分析原始日志数据。具体的,统计模块202可在获取的原始日志数据中查找预设的关键字对应的原始日志数据,统计预设的关键字对应的原始日志数据,得到关键字相关的初步统计结果。\n[0064] 例如,统计模块202可预先设置关键字为“upload”,查找包括关键字“upload”的原始日志数据,从查找得到的原始日志数据中统计上传次数、上传用户、上传的错误比例、上传耗时等等,得到上传相关的初步统计结果,以支持后续进一步进行用户行为的分析以及系统运营和负载情况的分析。\n[0065] 通信模块203用于将上述初步统计结果发送至中心服务器300。\n[0066] 将日志产生端100上的海量的原始日志数据进行统计处理后得到的初步统计结果的数据量很小,因而只需要花费很少的带宽资源就可将初步统计结果发送至中心服务器。\n[0067] 中心服务器300用于接收多个日志统计器200发送的初步统计结果,进一步合并所述初步统计结果。\n[0068] 在一个实施例中,中心服务器300可采用传统的线性回归、logistic回归、聚类、主成分分析、方差分析、时间序列分析等统计分析方法对初步统计结果进行统计合并处理,得到最终统计结果,在此不再赘述。\n[0069] 在另一个实施例中,中心服务器300可将上述初步统计结果按照关键字进行分类,并按照关键字分类合并上述初步统计结果。\n[0070] 具体的,中心服务器300可建立与关键字对应的数据表,将同属于该关键字类别的初步统计结果插入同一张数据表中,进一步汇总该张数据表中的数据,得到综合统计结果。例如,将“上传”相关的初步统计结果分为一类,插入与“上传”对应的数据表中,进一步汇总与“上传”相关的初步统计结果。例如,汇总该张数据表中的“上传次数”,则将该数据表中“上传次数”字段的所有数据相加,得到总的上传次数。再例如,将“下载”相关的初步统计结果分为一类,插入与“下载”对应的数据表中,进一步汇总与“下载”相关的初步统计结果,等等。\n[0071] 上述分布式日志处理方法和系统,统计处理日志产生端上的原始日志数据,得到初步统计结果,将初步统计结果发送至中心服务器,并通过中心服务器合并初步统计结果。\n由于将日志产生端上的原始日志数据分别进行统计处理,相对于汇聚各日志产生端上的原始日志数据后再进行统计处理而言,可节省大量的时间,而且统计处理得到的初步统计结果比原始日志数据的数据量要小很多,因此不但可节约传送海量原始日志数据花费的大量带宽和时间,而且还使中心服务器只需对初步统计结果进行简单的合并处理即可,节约了处理庞大的原始日志数据所需的时间和系统资源,因而上述分布式日志处理方法和系统提高了处理分布式日志的效率。\n[0072] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
法律信息
- 2015-12-16
- 2014-10-22
实质审查的生效
IPC(主分类): H04L 12/24
专利申请号: 201210013826.2
申请日: 2012.01.17
- 2013-07-17
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2010-12-01
|
2009-05-31
| | |
2
| |
2005-07-20
|
2004-01-02
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |