一种访问日志的处理方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:32643539 阅读:10 留言:0更新日期:2022-03-12 18:20
本发明专利技术提供了一种访问日志的处理方法、装置、计算机设备和存储介质,该方法包括:采集网站服务器在用户访问页面时生成的日志文件,识别日志文件中所包含的数据的维度,针对每个维度生成一个或多个分布式计算节点,当接收到统计任务时,将统计任务拆分为多个维度、以组成链路,按照链路的顺序依次在分布式计算节点中对日志文件聚类,获得日志簇,对日志簇中的日志文件进行统计,获得统计结果,将统计结果存储至分布式文件系统中,实现了分布式系统Hadoop实时对日志文件聚类,在维度上对日志文件进行聚类,可以忽略不同统计任务之间的业务差别,大大提高了适用性,无需频繁生成线程,避免了内存溢出。免了内存溢出。免了内存溢出。

【技术实现步骤摘要】
一种访问日志的处理方法、装置、计算机设备和存储介质


[0001]本专利技术涉及大数据的
,尤其涉及一种访问日志的处理方法、装置、计算机设备和存储介质。

技术介绍

[0002]在互联网的各个网站中,会对外提供web(网页)应用,用户在访问这些网站提供的web应用时,网站通常生成日志文件。
[0003]在网站的某些业务上,实时统计日志文件中的数据,例如,购物网站在大型促销的活动中,会实时统计成交额,此时,网站会在线对日志文件进行处理,通常是针对一项统计生成一项任务,动态生成线程执行该任务,对日志文件中的数据进行筛选、统计。
[0004]在某些场景中,可能经常变更对日志文件统计的维度,例如,网站提供多个微服务或同时维护众多版本的游戏,在网站与客户端的连接存在波动时,对业务的质量存在影响,运维人员会将不同数据组合分析,实时寻找可能存在问题的环节,此时,网站会频繁地生成线程,线程的数量较多,部分资源没有被回收,容易造成内存溢出。

技术实现思路

[0005]本专利技术提出了一种访问日志的处理方法、装置、计算机设备和存储介质,以解决使用线程实时对日志文件进行统计容易造成内存溢出的问题。
[0006]第一方面,本专利技术实施例提供了一种访问日志的处理方法,应用于分布式系统Hadoop,所述分布式系统Hadoop包括分布式文件系统、分布式计算节点,所述方法包括:
[0007]采集网站服务器在用户访问页面时生成的日志文件;
[0008]识别所述日志文件中所包含的数据的维度;<br/>[0009]针对每个所述维度生成一个或多个分布式计算节点;
[0010]当接收到统计任务时,将所述统计任务拆分为多个维度、以组成链路;
[0011]按照所述链路的顺序依次在所述分布式计算节点中对所述日志文件聚类,获得日志簇;
[0012]对所述日志簇中的所述日志文件进行统计,获得统计结果;
[0013]将所述统计结果存储至分布式文件系统中。
[0014]可选地,所述针对每个所述维度生成一个或多个分布式计算节点,包括:
[0015]为每个所述维度创建一个或多个分布式计算节点,所述分布式计算节点包括映射节点、规约节点;
[0016]获取对所述维度配置的筛选规则;
[0017]将所述筛选规则写入所述映射节点中;
[0018]将所述规约节点配置为输出所述映射节点筛选的所述日志文件。
[0019]可选地,所述将所述统计任务拆分为多个维度、以组成链路,包括:
[0020]识别所述统计任务中数据所属的维度;
[0021]将当前所述统计任务对应的所述维度与其他所述统计任务对应的链路进行比较,以确定当前所述统计任务的链路的头部;
[0022]针对当前所述统计任务的链路的尾部,查询为每个所述维度生成的所述分布式计算节点的负载状态;
[0023]按照所述负载状态将所述维度组成当前所述统计任务的链路的尾部;
[0024]将所述头部与所述尾部拼接为当前所述统计任务的链路。
[0025]可选地,所述将当前所述统计任务对应的所述维度与其他所述统计任务对应的链路进行比较,以确定当前所述统计任务的链路的头部,包括:
[0026]针对其他所述统计任务确定变量,所述变量初始为其他所述统计任务对应的链路中首个维度;
[0027]将当前所述统计任务对应的所述维度与所述变量进行比较;
[0028]若当前所述统计任务对应的所述维度与所述变量相同,则将当前所述统计任务对应的所述维度拼接至子串中;
[0029]将其他所述统计任务对应的链路中下一个维度写入所述变量,返回执行所述针对其他所述统计任务确定变量;
[0030]若当前所述统计任务对应的所述维度与所述变量不同,则对其他所述统计任务输出子串;
[0031]将所有其他所述统计任务对应的所述子串进行比较;
[0032]选择长度最长的所述子串为当前所述统计任务的链路的头部。
[0033]可选地,所述按照所述负载状态将所述维度组成当前所述统计任务的链路的尾部,包括:
[0034]按照所述负载状态对所述维度进行升序排序;
[0035]将升序排序之后的所述维度组成当前所述统计任务的链路的尾部。
[0036]可选地,所述按照所述链路的顺序依次在所述分布式计算节点中对所述日志文件聚类,获得日志簇,包括:
[0037]判断是否遍历完所述链路;
[0038]若是,则输出所述日志文件,作为日志簇;
[0039]若否,则将所述日志文件输入下一个所述维度对应的所述分布式计算节点,在所述分布式计算节点中筛选所述维度之下的所述日志文件,返回执行所述判断是否遍历完所述链路。
[0040]可选地,所述分布式计算节点包括映射节点、规约节点;所述在所述分布式计算节点中筛选所述维度之下的所述日志文件,包括:
[0041]在所述映射节点中按照为所述维度配置的筛选规则筛选所述日志文件;
[0042]在所述规约节点中输出所述映射节点筛选的所述日志文件。
[0043]第二方面,本专利技术实施例还提供了一种访问日志的处理装置,应用于分布式系统Hadoop,所述分布式系统Hadoop包括分布式文件系统、分布式计算节点,所述装置包括:
[0044]日志文件采集模块,用于采集网站服务器在用户访问页面时生成的日志文件;
[0045]维度识别模块,用于识别所述日志文件中所包含的数据的维度;
[0046]计算节点生成模块,用于针对每个所述维度生成一个或多个分布式计算节点;
[0047]链路组成模块,用于当接收到统计任务时,将所述统计任务拆分为多个维度、以组成链路;
[0048]日志文件聚类模块,用于按照所述链路的顺序依次在所述分布式计算节点中对所述日志文件聚类,获得日志簇;
[0049]日志文件统计模块,用于对所述日志簇中的所述日志文件进行统计,获得统计结果;
[0050]统计结果存储模块,用于将所述统计结果存储至分布式文件系统中。
[0051]可选地,所述计算节点生成模块还用于:
[0052]为每个所述维度创建一个或多个分布式计算节点,所述分布式计算节点包括映射节点、规约节点;
[0053]获取对所述维度配置的筛选规则;
[0054]将所述筛选规则写入所述映射节点中;
[0055]将所述规约节点配置为输出所述映射节点筛选的所述日志文件。
[0056]可选地,所述链路组成模块还用于:
[0057]识别所述统计任务中数据所属的维度;
[0058]将当前所述统计任务对应的所述维度与其他所述统计任务对应的链路进行比较,以确定当前所述统计任务的链路的头部;
[0059]针对当前所述统计任务的链路的尾部,查询为每个所述维度生成的所述分布式计算节点的负载状态;
[0060]按照所述负载状态将所述维度组成当前所述统本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种访问日志的处理方法,其特征在于,应用于分布式系统Hadoop,所述分布式系统Hadoop包括分布式文件系统、分布式计算节点,所述方法包括:采集网站服务器在用户访问页面时生成的日志文件;识别所述日志文件中所包含的数据的维度;针对每个所述维度生成一个或多个分布式计算节点;当接收到统计任务时,将所述统计任务拆分为多个维度、以组成链路;按照所述链路的顺序依次在所述分布式计算节点中对所述日志文件聚类,获得日志簇;对所述日志簇中的所述日志文件进行统计,获得统计结果;将所述统计结果存储至分布式文件系统中。2.根据权利要求1所述的方法,其特征在于,所述针对每个所述维度生成一个或多个分布式计算节点,包括:为每个所述维度创建一个或多个分布式计算节点,所述分布式计算节点包括映射节点、规约节点;获取对所述维度配置的筛选规则;将所述筛选规则写入所述映射节点中;将所述规约节点配置为输出所述映射节点筛选的所述日志文件。3.根据权利要求1所述的方法,其特征在于,所述将所述统计任务拆分为多个维度、以组成链路,包括:识别所述统计任务中数据所属的维度;将当前所述统计任务对应的所述维度与其他所述统计任务对应的链路进行比较,以确定当前所述统计任务的链路的头部;针对当前所述统计任务的链路的尾部,查询为每个所述维度生成的所述分布式计算节点的负载状态;按照所述负载状态将所述维度组成当前所述统计任务的链路的尾部;将所述头部与所述尾部拼接为当前所述统计任务的链路。4.根据权利要求3所述的方法,其特征在于,所述将当前所述统计任务对应的所述维度与其他所述统计任务对应的链路进行比较,以确定当前所述统计任务的链路的头部,包括:针对其他所述统计任务确定变量,所述变量初始为其他所述统计任务对应的链路中首个维度;将当前所述统计任务对应的所述维度与所述变量进行比较;若当前所述统计任务对应的所述维度与所述变量相同,则将当前所述统计任务对应的所述维度拼接至子串中;将其他所述统计任务对应的链路中下一个维度写入所述变量,返回执行所述针对其他所述统计任务确定变量;若当前所述统计任务对应的所述维度与所述变量不同,则对其他所述统计任务输出子串;将所有其他所述统计任务对应的所述子串进行比较;选择长度最长的所述子串为当前所述统计任务的链路的头部。
5.根据权利要求3所述的方...

【专利技术属性】
技术研发人员:刘榆厚王炜
申请(专利权)人:广东飞翔云计算有限公司
类型:发明
国别省市:

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

1