CN105634845A - 一种用于对海量dns日志进行多维统计分析的方法及系统 - Google Patents
一种用于对海量dns日志进行多维统计分析的方法及系统 Download PDFInfo
- Publication number
- CN105634845A CN105634845A CN201410606547.6A CN201410606547A CN105634845A CN 105634845 A CN105634845 A CN 105634845A CN 201410606547 A CN201410606547 A CN 201410606547A CN 105634845 A CN105634845 A CN 105634845A
- Authority
- CN
- China
- Prior art keywords
- dns
- daily record
- record data
- dns daily
- magnanimity
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种用于对海量DNS日志进行多维统计分析的方法及系统。所述系统包括依次连接的多个DNS数据采集模块、DNS数据汇总中心、云服务器、DNS日志处理中心、DNS日志统计分析中心及数据库。所述DNS数据汇总中心用于接收及汇总由所述多个DNS数据采集模块采集的DNS日志数据,并将汇总形成的海量DNS日志数据定期上传到所述云服务器。所述DNS日志处理中心用于接收由所述云服务器提交的DNS日志数据处理任务,从所述云服务器下载海量DNS日志数据,对该海量DNS日志数据进行分布式处理。所述DNS日志统计分析中心用于基于给定的多个维度对经处理的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将所得DNS日志数据统计及分析结果存入所述数据库。
Description
技术领域
本发明涉及数据统计技术领域,更具体地说,涉及一种用于对海量DNS日志进行多维统计分析的方法及系统。
背景技术
在数据统计领域,普遍采用基于数据库或文件索引的数据统计方案。该方案在数据量小的情况下,通常做法是先将数据入库,再对数据进行更新,最后基于不同维度对更新数据进行统计及分析。该方案的缺陷在于:随着入库数据规模的大幅增长,数据入库效率逐渐降低,数据处理效率急剧下降,对于大数据的多维统计分析也将愈发困难。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种用于对海量DNS日志进行多维统计分析的方法及系统。
本发明解决其技术问题所采用的技术方案是:构造一种用于对海量DNS日志进行多维统计分析的方法,包括如下步骤:
S1、在海量DNS日志数据成功上传到云服务器时接收由云服务器提交的DNS日志数据处理任务,从云服务器下载海量DNS日志数据,并对下载的海量DNS日志数据作分布式处理;
S2、汇总经处理的DNS日志数据,并基于给定的多个维度对汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将该多维度的DNS日志数据统计及分析结果存入数据库。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,在所述步骤S1之前还包括如下步骤:
S0、多个DNS数据采集模块通过分光镜像的方式对记录及存储到多台DNS服务器的DNS日志数据进行实时采集,并将采集的DNS日志数据输入DNS数据汇总中心;
DNS数据汇总中心对由该多个DNS数据采集模块输入的DNS日志数据进行汇总,并将汇总形成的海量DNS日志数据定期上传到云服务器。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,所述步骤S1中所述从云服务器下载海量DNS日志数据,并对下载的海量DNS日志数据作分布式处理的步骤包括:
S11、将海量DNS日志数据处理任务拆分为由M个子任务构成的第一任务队列(subjob1,subjob2……subjobM),并将该第一任务队列(subjob1,subjob2……subjobM)中的M个子任务随机分配到该M个分布式文件系统;
S12、指令该M个分布式文件系统根据分配到的子任务分别从云服务器下载该海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,所述步骤S12中所述M个分布式文件系统根据分配到的子任务分别从云服务器下载该海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理的步骤具体包括:
S121、在包含一个主服务器及N个子服务器的每一个分布式文件系统中,主服务器在接收到由任务调度中心分配的子任务时,将该子任务进一步拆分为由N个执行任务构成的第二任务队列(task1,task2……taskN);
S122、基于MapReduce任务调度机制将该第二任务队列(task1,task2……taskN)中的N个执行任务分配到该N个子服务器,并指令该N个子服务器分别从云服务器下载用于完成各自的执行任务所需的DNS日志数据并对该部分DNS日志数据进行排重、更新或删除处理。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,所述步骤S122还包括:
S1221、基于本地数据优先分配机制,将每一个执行任务优先分配到存储有用于处理该执行任务所需的DNS日志数据的子服务器。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,所述步骤S122还包括:
S1222、在对DNS日志数据排重的同时,判断该DNS日志数据中是否存在解析错误或解析关系失效的DNS日志记录;
如该下载的DNS日志数据中存在解析错误的DNS日志记录,则对所下载的DNS日志数据中的该条解析错误的DNS日志记录进行更正;
如该下载的DNS日志数据中存在解析关系失效的DNS日志记录,则将所下载的DNS日志数据中的该条解析关系失效的DNS日志记录进行删除。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,所述步骤S2中所述基于给定的多个维度对汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果的步骤包括:
S21、将客户端IP作为第一维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时间段T内的包含该客户端IP的第一DNS日志记录,基于该第一DNS日志记录对该给定时段T内该客户端IP用户的访问网站数量及网站类型进行统计,并基于统计结果对该客户端IP用户的上网行为进行分析;
S22、将解析IP作为第二维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时段T内的包含该解析IP的第二DNS日志记录,基于该第二DNS日志记录对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端数量进行统计,以及对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端的分布状况进行分析;
S23、将域名作为第三维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时段T内的包含该域名信息的第三DNS日志记录。
在本发明上述用于对海量DNS日志进行多维统计分析的方法中,在所述步骤S23之后还包括如下步骤:
S231、在接收到包含某一顶级域名名称的网站访问量查询请求时,从该第三DNS日志记录中提取包含有该顶级域名的第四DNS日志记录,对第四DNS日志记录的条数进行统计,并将统计值作为查询结果进行返回。
本发明还构造一种用于对海量DNS日志进行多维统计分析的系统,所述海量DNS日志的多维统计系统包括:依次连接的多个DNS数据采集模块、DNS数据汇总中心、云服务器、DNS日志处理中心、DNS日志统计分析中心及数据库;
每一所述DNS数据采集模块均用于对记录及存储到与之对应的一台DNS服务器的DNS日志数据进行实时采集,并将采集的DNS日志数据输入所述DNS数据汇总中心;
所述DNS数据汇总中心用于汇总由所述多个DNS数据采集模块输入的DNS日志数据,并将汇总形成的海量DNS日志数据定期上传到所述云服务器;
所述DNS日志处理中心用于在该海量DNS日志数据成功上传到所述云服务器时接收由所述云服务器提交的DNS日志数据处理任务,从所述云服务器下载海量DNS日志数据,对下载的海量DNS日志数据进行分布式处理;
所述DNS日志统计分析中心用于基于给定的多个维度对经分布式处理的海量DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将所得的DNS日志数据统计及分析结果存储于所述数据库。
在本发明上述用于对海量DNS日志进行多维统计分析的系统中,所述DNS日志处理中心包括一个任务调度中心及多个分布式文件系统;
所述任务调度中心用于将所述云服务器提交的海量DNS日志数据整理任务拆分为由多个子任务构成的第一任务队列(subjob1,subjob2……subjobM),并将该第一任务队列(subjob1,subjob2……subjobM)中的各个子任务分配到所述多个分布式文件系统;
每一所述分布式文件系统均用于从所述云服务器下载与其分配到的子任务对应的海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理。
在本发明上述用于对海量DNS日志进行多维统计分析的系统中,每一所述分布式文件系统均包括一个主服务器及多个子服务器;
所述主服务器用于接收到由所述任务调度中心分配的一个子任务时,先将该子任务进一步拆分为由多个执行任务构成的第二任务队列(task1,task2……taskN),再基于MapReduce任务调度机制将该第二任务队列(task1,task2……taskN)中的多个执行任务分配到所述多个子服务器,并指令所述多个子服务器分别同时处理分配到其的执行任务;
每一所述子服务器均用于从所述云服务器下载用于完成其执行任务所需的DNS日志数据,对该DNS日志数据进行排重、更新或删除处理。
由于本发明用于对海量DNS日志进行多维统计分析的方法及系统采用了将繁重的海量DNS日志数据处理任务拆分为多个子任务,并将该多个子任务合理分配到系统下的多个HDFS分布式文件系统,并通过各个HDFS分布式文件系统对其分配到的子任务进行分布式处理的技术方案,所以克服了现有技术中基于数据库或文件索引方式的数据统计方案存在数据处理效率随入库数据规模的增长而逐步下降的缺陷,达到了以下有益效果:
1、本发明提出了一种高效的数据分布式处理方案,在海量DNS日志数据处理环节,本发明通过DNS日志处理中心将海量DNS日志数据处理任务拆分为多个子任务,基于各HDFS分布式文件系统的当前运行状况将该多个子任务在各HDFS分布式文件系统之间进行合理分配,并由各个HDFS分布式文件系统对分配到的子任务分别进行分布式处理,从而大大地提高了DNS日志数据的数据处理效率,降低了各个HDFS分布式文件系统的工作负荷,提高了各个HDFS分布式文件系统的稳定性。
2、本发明可基于不同维度或标签(包括客户端IP地址、域名及解析IP)对经过滤并存储于数据库的有效DNS日志数据进行统计分析,以了解或掌握目标用户群的上网行为,把控互联网整体发展趋势。
例如,在海量DNS日志的统计分析环节,本发明可将客户端IP作为第一维度对数据库中的DNS日志数据进行检索,以统计源于某一客户端IP地址的一给定时段T(小时/天/月)的网站点击量及访问网站类型,基于上述统计结果准确地分析出目标用户群的上网行为、个人消费习惯及兴趣点,以为目标用户群提供专属服务。
本发明还可将域名或解析IP地址作为第二维度对存储于各个HDFS分布式文件系统的DNS日志数据进行检索,以统计某一特定网站在给定时段T(小时/天/月)累积的客户端访问量及其分布特征,并基于统计的客户端访问量及客户端分布特征制定、部署、推广或执行各种商业计划。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明较佳实施例提供的用于对海量DNS日志进行多维统计分析的系统的结构示意图;
图2是图1所示的用于对海量DNS日志进行多维统计分析的系统的DNS日志处理中心的结构框图;
图3是图2所示的DNS日志处理中心的任意一个分布式文件系统的结构框图;
图4是本发明较佳实施例提供的用于对海量DNS日志进行多维统计分析的方法的流程图。
具体实施方式
为了解决现有技术中基于传统的数据库或文件索引方式的数据统计方案的数据处理及数据统计效率随入库数据规模的增长而逐步下降的缺陷,本发明的主要创新点在于:
1、将繁重的海量DNS日志数据处理任务拆分为由M个子任务构成的第一任务队列(subjob1,……subjobM),将第一任务队列(subjob1,……subjobM)下的每一个子任务进一步拆分为由N个执行任务(即DNS日志排重任务)构成的第二任务队列(task1,task2……taskN),基于MapReduce任务调度机制将拆分的M*N个执行任务合理分配到本发明系统下的M*N个子服务器3022,本发明系统下的每一个子服务器3022接收到执行任务时,从云服务器200单独下载用于处理其执行任务所需的DNS日志数据,并对下载的DNS日志数据进行排重、更新或删除操作。
2、基于不同维度/标签(包括客户端IP地址、域名及解析IP)对经过滤并存储于数据库500的有效DNS日志数据进行统计分析,以了解或掌握目标用户群的上网行为、兴趣点,把控互联网整体发展趋势。
由于本发明采用了将繁重的海量DNS日志数据处理任务拆分为多个子任务,并将该多个子任务合理分配到系统下的多个HDFS分布式文件系统302,并通过各个HDFS分布式文件系统302对其分配的子任务进行分布式处理的设计,所以解决了现有技术中基于数据库或文件索引方式的数据统计方案的数据处理效率随入库数据规模的增长而逐步下降的技术问题,实现了大幅度提高海量DNS日志数据的处理效率,降低各个HDFS分布式文件系统302的工作负荷,以及提高各个HDFS分布式文件系统302的稳定性的目的。
为了使本发明的目的更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
如图1所示,本发明用于对海量DNS日志进行多维统计分析的系统包括依次连接的多个DNS数据采集模块600、DNS数据汇总中心100、云服务器200、DNS日志处理中心300、DNS日志统计分析中心400、以及数据库500。其中
上述每一个DNS数据采集模块600均用于通过分光镜像方式对记录及存储到与之对应的一台DNS服务器的DNS日志数据进行实时采集,并将实时采集的DNS日志数据输入DNS数据汇总中心100。
该DNS数据汇总中心100用于汇总由上述多个DNS数据采集模块600输入的DNS日志数据,并将汇总形成的海量DNS日志数据定期上传到云服务器200。在本发明中,每一条DNS日志数据至少包括客户端IP地址(对应于各个客户端)、域名及解析IP地址(对应于用户通过客户端访问到的各个网站服务器)。
该云服务器200用于判断该DNS数据汇总中心100已将汇总形成的海量DNS日志数据成功上传时,向该DNS日志处理中心300提交DNS日志数据处理任务。
该DNS日志处理中心300用于根据接收到的DNS日志数据处理任务从该云服务器200下载海量DNS日志数据,对海量DNS日志数据进行分布式处理,并汇总经分布式处理的DNS日志数据。
该DNS日志统计分析中心400用于基于给定的多个维度对该汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将所生成的多维度的DNS日志数据统计及分析结果存储于数据库500。
如图2所示,本发明DNS日志处理中心300包括一个任务调度中心301及受控于该任务调度中心301的M个分布式文件系统302。其中
该任务调度中心301用于将接收到的海量DNS日志数据整理任务拆分为由M个子任务构成的第一任务队列(subjob1,……subjobM),并将该M个子任务(subjob1,……subjobM)随机分配到所述M个分布式文件系统302。
上述的每一个分布式文件系统302均用于根据分配到的第一任务队列(subjob1,……subjobM)中的一个子任务从云服务器200下载海量DNS日志数据中的其中一部分DNS日志数据,对该部分的DNS日志数据作分布式处理,并汇总经处理的DNS日志数据,以便于后续的DNS日志统计分析中心400执行DNS日志数据统计及分析工作的需要。
在本发明中,该分布式文件系统302优选为HDFS分布式文件系统302。
如图3所示,本发明的任一分布式文件系统302均包括一个主服务器3021以及N个子服务器3022。其中
该主服务器3021用于接收到由任务调度中心301分配的子任务时,先将该子任务进一步拆分为由N个执行任务构成的第二任务队列(task1,task2……taskN),再基于MapReduce任务调度机制将该第二任务队列(task1,task2……taskN)中的N个执行任务分配到该N个子服务器3022,并指令该N个子服务器3022分别同时处理分配到其的执行任务。
上述的每一个子服务器3022均用于从云服务器200下载用于处理其执行任务所需的DNS日志数据,对该DNS日志数据进行排重、更新或删除处理。
下面将以本发明的较佳实施方式为例,对本发明用于对海量DNS日志进行多维统计分析的方法进行说明:
如图4所示,在步骤S101中,DNS数据汇总中心100通过多个DNS数据采集模块(即DNS探针)对记录及存储于各台DNS服务器的DNS日志数据进行实时采集,汇总采集的DNS日志数据,并将汇总形成的海量DNS日志数据定期上传到云服务器200。
在步骤S102中,云服务器200判断海量DNS日志数据成功上传时,向DNS日志处理中心300提交DNS日志数据处理请求。
在步骤S103中,在包括一个任务调度中心301及M个HDFS分布式文件系统302的DNS日志处理中心300中,该任务调度中心301将接收的海量DNS日志数据处理任务拆分为由M个子任务构成的第一任务队列(subjob1,……subjobM),并结合该M个HDFS分布式文件系统302的当前工作状况(例如工作负荷、任务完成进度)将该第一任务队列(subjob1,……subjobM)中的M个子任务合理分配到该M个HDFS分布式文件系统302。
在步骤S104中,在上述每一个包含有主服务器3021及N个子服务器3022的HDFS分布式文件系统302中,主服务器3021接收任务调度中心301分配到的一个子任务时,将该子任务进一步拆分为由N个执行任务构成的第二任务队列(task1,task2……taskN)。
在步骤S105中,主服务器3021基于MapReduce任务调度机制和/或本地数据优先分配机制将第二任务队列(task1,task2……taskN)中的N个执行任务分配到上述N个子服务器3022,以尽可能地将每一个执行任务优先分配到存储有用于处理该执行任务所需的DNS日志数据的子服务器3022,提高DNS日志数据的处理效率。
在步骤S106中,上述的每一个子服务器3022接收到执行任务时,从云服务器200下载用于完成其执行任务所需的DNS日志数据,并对下载的DNS日志数据进行排重、更新及删除操作。其中
DNS日志数据更新及删除操作的过程如下:
每一个子服务器3022在对其下载到的DNS日志数据排重的同时,判断该DNS日志数据中是否存在解析错误或解析关系失效的DNS日志记录。如该DNS日志数据中存在域名解析错误的DNS日志记录,则该子服务器3022对该DNS日志数据中的该条解析错误的DNS日志记录进行更新。如该DNS日志数据中存在解析关系失效的DNS日志记录,则该子服务器3022将该DNS日志数据中的该条解析关系失效的DNS日志记录进行删除。
在步骤S107中,每一个HDFS分布式文件系统302对其下的各个子服务器3022处理的DNS日志数据进行汇总。DNS日志统计分析中心400基于给定的不同维度对上述汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果。
例如,该DNS日志统计分析中心400可将客户端IP作为第一维度,从经分布式处理并存储于各个HDFS分布式文件系统302的DNS日志数据中检索一给定时间段T(小时/天/月)内的包含该客户端IP的第一DNS日志记录,基于该第一DNS日志记录对该给定时段T内该客户端IP用户的访问网站数量及网站类型进行统计,并基于统计结果对该目标用户群的上网行为及用户兴趣点进行分析。
该DNS日志统计分析中心400还可将解析IP作为第二维度,从经分布式处理并存储于各个HDFS分布式文件系统302的DNS日志数据中检索一给定时段T(小时/天/月)内的包含该解析IP的第二DNS日志记录,基于该第二DNS日志记录对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端数量进行统计,以及对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端的分布状况进行分析。
该DNS日志统计分析中心400还可将域名作为第三维度,从经分布式处理并存储于各个HDFS分布式文件系统302的DNS日志数据中检索一给定时段T(小时/天/月)内的包含该域名信息的第三DNS日志记录。该DNS日志统计分析中心400在接收到包含某一顶级域名名称的网站访问量查询请求时,从该第三DNS日志记录中提取包含有该顶级域名的第四DNS日志记录,对第四DNS日志记录的条数进行统计,并将统计结果作为该网站访问量查询结果进行返回。
在步骤S108中,DNS日志统计分析中心400将所生成的多维度的DNS日志数据统计及分析结果存储于数据库500。
实施本发明可达到以下有益效果:
1、本发明提出了一种高效的数据分布式处理方案,在海量DNS日志数据处理环节,本发明通过DNS日志处理中心300将海量DNS日志数据处理任务拆分为多个子任务,基于各HDFS分布式文件系统302的当前运行状况将该多个子任务在各HDFS分布式文件系统302之间进行合理分配,并由各个HDFS分布式文件系统302对分配到的子任务分别进行分布式处理,从而大大地提高了DNS日志数据的数据处理效率,降低了各个HDFS分布式文件系统302的工作负荷,提高了各个HDFS分布式文件系统302的稳定性。
2、本发明可基于不同维度或标签(包括客户端IP地址、域名及解析IP)对经过滤并存储于数据库500的有效DNS日志数据进行统计分析,以了解或掌握目标用户群的上网行为,把控互联网整体发展趋势。
例如,在海量DNS日志的统计分析环节,本发明可将客户端IP作为第一维度对经分布式处理并存储于各个HDFS分布式文件系统302的DNS日志数据进行检索,以统计源于某一客户端IP地址的一给定时段T(小时/天/月)的网站点击量及访问网站类型,基于上述统计结果准确地分析出目标用户群的上网行为、个人消费习惯及兴趣点,以为目标用户群提供专属服务。
本发明还可将域名或解析IP地址作为第二维度对经处理并存储于各个HDFS分布式文件系统302的DNS日志数据进行检索,以统计某一特定网站在给定时段T(小时/天/月)累积的客户端访问量及其分布特征,并基于统计的客户端访问量及客户端分布特征制定、部署、推广或执行各种商业计划。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种用于对海量DNS日志进行多维统计分析的方法,其特征在于,包括如下步骤:
S1、在海量DNS日志数据成功上传到云服务器时接收由云服务器提交的DNS日志数据处理任务,从云服务器下载海量DNS日志数据,并对下载的海量DNS日志数据作分布式处理;
S2、汇总经处理的DNS日志数据,并基于给定的多个维度对汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将该多维度的DNS日志数据统计及分析结果存入数据库。
2.根据权利要求1所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,在所述步骤S1之前还包括如下步骤:
S0、多个DNS数据采集模块通过分光镜像的方式对记录及存储到多台DNS服务器的DNS日志数据进行实时采集,并将采集的DNS日志数据输入DNS数据汇总中心;
DNS数据汇总中心对由该多个DNS数据采集模块输入的DNS日志数据进行汇总,并将汇总形成的海量DNS日志数据定期上传到云服务器。
3.根据权利要求2所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,所述步骤S1中所述从云服务器下载海量DNS日志数据,并对下载的海量DNS日志数据作分布式处理的步骤包括:
S11、将海量DNS日志数据处理任务拆分为由M个子任务构成的第一任务队列(subjob1,subjob2……subjobM),并将该第一任务队列(subjob1,subjob2……subjobM)中的M个子任务随机分配到该M个分布式文件系统;
S12、指令该M个分布式文件系统根据分配到的子任务分别从云服务器下载该海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理。
4.根据权利要求3所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,所述步骤S12中所述M个分布式文件系统根据分配到的子任务分别从云服务器下载该海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理的步骤具体包括:
S121、在包含一个主服务器及N个子服务器的每一个分布式文件系统中,主服务器接收到由任务调度中心分配的子任务时,将该子任务进一步拆分为由N个执行任务构成的第二任务队列(task1,task2……taskN);
S122、基于MapReduce任务调度机制将该第二任务队列(task1,task2……taskN)中的N个执行任务分配到该N个子服务器,并指令该N个子服务器分别从云服务器下载用于完成各自的执行任务所需的DNS日志数据并对该部分DNS日志数据进行排重、更新或删除处理。
5.根据权利要求4所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,所述步骤S122还包括:
S1221、基于本地数据优先分配机制,将每一个执行任务优先分配到存储有用于处理该执行任务所需的DNS日志数据的子服务器。
6.根据权利要求4所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,所述步骤S122还包括:
S1222、在对DNS日志数据排重的同时,判断该DNS日志数据中是否存在解析错误或解析关系失效的DNS日志记录;
如该下载的DNS日志数据中存在解析错误的DNS日志记录,则对所下载的DNS日志数据中的该条解析错误的DNS日志记录进行更正;
如该下载的DNS日志数据中存在解析关系失效的DNS日志记录,则将所下载的DNS日志数据中的该条解析关系失效的DNS日志记录进行删除。
7.根据权利要求6所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,所述步骤S2中所述基于给定的多个维度对汇总的DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果的步骤包括:
S21、将客户端IP作为第一维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时间段T内的包含该客户端IP的第一DNS日志记录,基于该第一DNS日志记录对该给定时段T内该客户端IP用户的访问网站数量及网站类型进行统计,并基于统计结果对该客户端IP用户的上网行为进行分析;
S22、将解析IP作为第二维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时段T内的包含该解析IP的第二DNS日志记录,基于该第二DNS日志记录对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端数量进行统计,以及对该给定时段T内对该解析IP所指定的网站服务器进行访问的客户端的分布状况进行分析;
S23、将域名作为第三维度,从经分布式处理并存储于多个分布式文件系统的DNS日志数据中检索一给定时段T内的包含该域名信息的第三DNS日志记录。
8.根据权利要求7所述的用于对海量DNS日志进行多维统计分析的方法,其特征在于,在所述步骤S23之后还包括如下步骤:
S231、在接收到包含某一顶级域名名称的网站访问量查询请求时,从该第三DNS日志记录中提取包含有该顶级域名的第四DNS日志记录,对第四DNS日志记录的条数进行统计,并将统计值作为查询结果进行返回。
9.一种用于对海量DNS日志进行多维统计分析的系统,其特征在于,所述海量DNS日志的多维统计系统包括:依次连接的多个DNS数据采集模块、DNS数据汇总中心、云服务器、DNS日志处理中心、DNS日志统计分析中心及数据库;
每一所述DNS数据采集模块均用于对记录及存储到与之对应的一台DNS服务器的DNS日志数据进行实时采集,并将采集的DNS日志数据输入所述DNS数据汇总中心;
所述DNS数据汇总中心用于汇总由所述多个DNS数据采集模块输入的DNS日志数据,并将汇总形成的海量DNS日志数据定期上传到所述云服务器;
所述DNS日志处理中心用于在该海量DNS日志数据成功上传到所述云服务器时接收由所述云服务器提交的DNS日志数据处理任务,从所述云服务器下载海量DNS日志数据,对下载的海量DNS日志数据进行分布式处理;
所述DNS日志统计分析中心用于基于给定的多个维度对经分布式处理的海量DNS日志数据进行统计及分析,生成多维度的DNS日志数据统计及分析结果,并将所得的DNS日志数据统计及分析结果存储于所述数据库。
10.根据权利要求9所述的用于对海量DNS日志进行多维统计分析的系统,其特征在于,所述DNS日志处理中心包括一个任务调度中心及多个分布式文件系统;
所述任务调度中心用于将所述云服务器提交的海量DNS日志数据整理任务拆分为由多个子任务构成的第一任务队列(subjob1,subjob2……subjobM),并将该第一任务队列(subjob1,subjob2……subjobM)中的各个子任务分配到所述多个分布式文件系统;
每一所述分布式文件系统均用于从所述云服务器下载与其分配到的子任务对应的海量DNS日志数据中的其中一部分DNS日志数据,并对该部分DNS日志数据进行分布式处理。
11.根据权利要求10所述的用于对海量DNS日志进行多维统计分析的系统,其特征在于,每一所述分布式文件系统均包括一个主服务器及多个子服务器;
所述主服务器用于接收到由所述任务调度中心分配的一个子任务时,先将该子任务进一步拆分为由多个执行任务构成的第二任务队列(task1,task2……taskN),再基于MapReduce任务调度机制将该第二任务队列(task1,task2……taskN)中的多个执行任务分配到所述多个子服务器,并指令所述多个子服务器分别同时处理分配到其的执行任务;
每一所述子服务器均用于从所述云服务器下载用于完成其执行任务所需的DNS日志数据,对该DNS日志数据进行排重、更新或删除处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410606547.6A CN105634845B (zh) | 2014-10-30 | 2014-10-30 | 一种用于对海量dns日志进行多维统计分析的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410606547.6A CN105634845B (zh) | 2014-10-30 | 2014-10-30 | 一种用于对海量dns日志进行多维统计分析的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105634845A true CN105634845A (zh) | 2016-06-01 |
CN105634845B CN105634845B (zh) | 2019-01-22 |
Family
ID=56049378
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410606547.6A Active CN105634845B (zh) | 2014-10-30 | 2014-10-30 | 一种用于对海量dns日志进行多维统计分析的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105634845B (zh) |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106055703A (zh) * | 2016-06-22 | 2016-10-26 | 北京科摩仕捷科技有限公司 | 一种日志实时分析方法及系统 |
CN106126539A (zh) * | 2016-06-15 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 一种用户行为数据处理方法和装置 |
CN106354434A (zh) * | 2016-08-31 | 2017-01-25 | 中国人民大学 | 日志数据的存储方法及系统 |
CN107071084A (zh) * | 2017-04-01 | 2017-08-18 | 北京神州绿盟信息安全科技股份有限公司 | 一种dns的评价方法和装置 |
CN108108466A (zh) * | 2017-12-29 | 2018-06-01 | 咪咕文化科技有限公司 | 一种分布式系统日志查询分析方法及装置 |
CN108153850A (zh) * | 2017-06-01 | 2018-06-12 | 广州舜飞信息科技有限公司 | 一种用户行为统计分析方法及系统 |
CN108512690A (zh) * | 2018-01-26 | 2018-09-07 | 贵州力创科技发展有限公司 | 一种基于Hadoop平台的DNS日志分析方法及系统 |
CN108563787A (zh) * | 2018-04-26 | 2018-09-21 | 郑州云海信息技术有限公司 | 一种数据中心综合管理系统的数据交互管理系统及方法 |
CN109560965A (zh) * | 2018-12-03 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种分布式系统的流量获取方法、装置及设备 |
CN109828988A (zh) * | 2019-01-25 | 2019-05-31 | 重庆科技学院 | 一种大数据统计方法及用于大数据统计的系统 |
CN109951323A (zh) * | 2019-02-27 | 2019-06-28 | 网宿科技股份有限公司 | 一种日志分析方法和系统 |
CN110019078A (zh) * | 2019-02-25 | 2019-07-16 | 贵州格物数据有限公司 | 一种基于大数据的dns日志分析辅助决策系统及方法 |
CN110460876A (zh) * | 2019-08-15 | 2019-11-15 | 网易(杭州)网络有限公司 | 直播日志的处理方法、装置及电子设备 |
CN111221698A (zh) * | 2018-11-26 | 2020-06-02 | 北京京东金融科技控股有限公司 | 任务数据采集方法与装置 |
CN113556402A (zh) * | 2021-07-29 | 2021-10-26 | 北京百度网讯科技有限公司 | 数据下载调度方法、装置及电子设备 |
CN114039943A (zh) * | 2021-07-28 | 2022-02-11 | 中国建设银行股份有限公司 | 一种域名系统的数据处理方法及装置 |
CN114172862A (zh) * | 2021-11-30 | 2022-03-11 | 杭州安恒信息技术股份有限公司 | 一种域名筛选方法、系统、装置及计算机可读存储介质 |
CN114826758A (zh) * | 2022-05-11 | 2022-07-29 | 绿盟科技集团股份有限公司 | 一种针对域名解析系统dns的安全分析方法及装置 |
CN115174249A (zh) * | 2022-07-18 | 2022-10-11 | 湖北天融信网络安全技术有限公司 | 安全日志的处理方法及电子设备、存储介质 |
CN116361261A (zh) * | 2023-06-01 | 2023-06-30 | 天翼云科技有限公司 | 一种分布式日志采集处理方法、系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005033960A1 (en) * | 2003-09-05 | 2005-04-14 | Itron, Inc. | Field data collection and processing system, such as for electric, gas, and water utility data |
CN101902505A (zh) * | 2009-05-31 | 2010-12-01 | 中国科学院计算机网络信息中心 | 一种分布式dns查询日志的实时统计装置及方法 |
CN102236851A (zh) * | 2010-04-21 | 2011-11-09 | 百度在线网络技术(北京)有限公司 | 基于用户赋权的多维信用体系实时计算的方法及系统 |
CN103138989A (zh) * | 2013-02-25 | 2013-06-05 | 武汉华工安鼎信息技术有限责任公司 | 一种海量日志分析系统及方法 |
CN103209087A (zh) * | 2012-01-17 | 2013-07-17 | 深圳市腾讯计算机系统有限公司 | 分布式日志统计处理方法和系统 |
CN104111996A (zh) * | 2014-07-07 | 2014-10-22 | 山大地纬软件股份有限公司 | 基于hadoop平台的医保门诊大数据抽取系统及方法 |
-
2014
- 2014-10-30 CN CN201410606547.6A patent/CN105634845B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005033960A1 (en) * | 2003-09-05 | 2005-04-14 | Itron, Inc. | Field data collection and processing system, such as for electric, gas, and water utility data |
CN101902505A (zh) * | 2009-05-31 | 2010-12-01 | 中国科学院计算机网络信息中心 | 一种分布式dns查询日志的实时统计装置及方法 |
CN102236851A (zh) * | 2010-04-21 | 2011-11-09 | 百度在线网络技术(北京)有限公司 | 基于用户赋权的多维信用体系实时计算的方法及系统 |
CN103209087A (zh) * | 2012-01-17 | 2013-07-17 | 深圳市腾讯计算机系统有限公司 | 分布式日志统计处理方法和系统 |
CN103138989A (zh) * | 2013-02-25 | 2013-06-05 | 武汉华工安鼎信息技术有限责任公司 | 一种海量日志分析系统及方法 |
CN104111996A (zh) * | 2014-07-07 | 2014-10-22 | 山大地纬软件股份有限公司 | 基于hadoop平台的医保门诊大数据抽取系统及方法 |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106126539A (zh) * | 2016-06-15 | 2016-11-16 | 百度在线网络技术(北京)有限公司 | 一种用户行为数据处理方法和装置 |
CN106055703A (zh) * | 2016-06-22 | 2016-10-26 | 北京科摩仕捷科技有限公司 | 一种日志实时分析方法及系统 |
CN106354434B (zh) * | 2016-08-31 | 2019-07-23 | 中国人民大学 | 日志数据的存储方法及系统 |
CN106354434A (zh) * | 2016-08-31 | 2017-01-25 | 中国人民大学 | 日志数据的存储方法及系统 |
US11431742B2 (en) | 2017-04-01 | 2022-08-30 | NSFOCUS Information Technology Co., Ltd. | DNS evaluation method and apparatus |
CN107071084A (zh) * | 2017-04-01 | 2017-08-18 | 北京神州绿盟信息安全科技股份有限公司 | 一种dns的评价方法和装置 |
WO2018176874A1 (zh) * | 2017-04-01 | 2018-10-04 | 北京神州绿盟信息安全科技股份有限公司 | 一种dns的评价方法和装置 |
CN107071084B (zh) * | 2017-04-01 | 2019-07-26 | 北京神州绿盟信息安全科技股份有限公司 | 一种dns的评价方法和装置 |
CN108153850A (zh) * | 2017-06-01 | 2018-06-12 | 广州舜飞信息科技有限公司 | 一种用户行为统计分析方法及系统 |
CN108108466A (zh) * | 2017-12-29 | 2018-06-01 | 咪咕文化科技有限公司 | 一种分布式系统日志查询分析方法及装置 |
CN108512690A (zh) * | 2018-01-26 | 2018-09-07 | 贵州力创科技发展有限公司 | 一种基于Hadoop平台的DNS日志分析方法及系统 |
CN108563787A (zh) * | 2018-04-26 | 2018-09-21 | 郑州云海信息技术有限公司 | 一种数据中心综合管理系统的数据交互管理系统及方法 |
CN111221698A (zh) * | 2018-11-26 | 2020-06-02 | 北京京东金融科技控股有限公司 | 任务数据采集方法与装置 |
CN109560965A (zh) * | 2018-12-03 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种分布式系统的流量获取方法、装置及设备 |
CN109828988A (zh) * | 2019-01-25 | 2019-05-31 | 重庆科技学院 | 一种大数据统计方法及用于大数据统计的系统 |
CN110019078A (zh) * | 2019-02-25 | 2019-07-16 | 贵州格物数据有限公司 | 一种基于大数据的dns日志分析辅助决策系统及方法 |
CN109951323A (zh) * | 2019-02-27 | 2019-06-28 | 网宿科技股份有限公司 | 一种日志分析方法和系统 |
CN110460876A (zh) * | 2019-08-15 | 2019-11-15 | 网易(杭州)网络有限公司 | 直播日志的处理方法、装置及电子设备 |
CN114039943A (zh) * | 2021-07-28 | 2022-02-11 | 中国建设银行股份有限公司 | 一种域名系统的数据处理方法及装置 |
CN113556402A (zh) * | 2021-07-29 | 2021-10-26 | 北京百度网讯科技有限公司 | 数据下载调度方法、装置及电子设备 |
CN113556402B (zh) * | 2021-07-29 | 2024-03-19 | 北京百度网讯科技有限公司 | 数据下载调度方法、装置及电子设备 |
CN114172862A (zh) * | 2021-11-30 | 2022-03-11 | 杭州安恒信息技术股份有限公司 | 一种域名筛选方法、系统、装置及计算机可读存储介质 |
CN114172862B (zh) * | 2021-11-30 | 2024-04-19 | 杭州安恒信息技术股份有限公司 | 一种域名筛选方法、系统、装置及计算机可读存储介质 |
CN114826758A (zh) * | 2022-05-11 | 2022-07-29 | 绿盟科技集团股份有限公司 | 一种针对域名解析系统dns的安全分析方法及装置 |
CN114826758B (zh) * | 2022-05-11 | 2023-05-16 | 绿盟科技集团股份有限公司 | 一种针对域名解析系统dns的安全分析方法及装置 |
CN115174249A (zh) * | 2022-07-18 | 2022-10-11 | 湖北天融信网络安全技术有限公司 | 安全日志的处理方法及电子设备、存储介质 |
CN116361261A (zh) * | 2023-06-01 | 2023-06-30 | 天翼云科技有限公司 | 一种分布式日志采集处理方法、系统 |
CN116361261B (zh) * | 2023-06-01 | 2023-10-13 | 天翼云科技有限公司 | 一种分布式日志采集处理方法、系统 |
Also Published As
Publication number | Publication date |
---|---|
CN105634845B (zh) | 2019-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105634845A (zh) | 一种用于对海量dns日志进行多维统计分析的方法及系统 | |
US7330933B2 (en) | Application cache pre-loading | |
US10366146B2 (en) | Method for adjusting content of a webpage in real time based on users online behavior and profile | |
JP4806201B2 (ja) | 決定理論的ウェブクローリングおよびウェブページ変更予測 | |
US8260846B2 (en) | Method and system for providing targeted content to a surfer | |
CN101583964A (zh) | 广告数据的大规模聚集和报告 | |
CN102227121A (zh) | 基于机器学习的分布式缓存策略自适应切换方法及系统 | |
CN102833233B (zh) | 一种识别网站页面的方法和装置 | |
CN103942210A (zh) | 海量日志信息的处理方法、装置与系统 | |
CN102682005A (zh) | 偏好类目的确定方法及装置 | |
CN104067274A (zh) | 用于改进对搜索结果的访问的系统和方法 | |
CN102523131A (zh) | 用户上网行为收集方法、分析方法和系统 | |
CN104182506A (zh) | 日志管理方法 | |
CN101046806B (zh) | 搜索引擎系统和方法 | |
CN113360554A (zh) | 一种数据抽取、转换和加载etl的方法和设备 | |
CN107908748A (zh) | 基于大数据的网站用户行为数据采集方法、系统及应用 | |
GB2526924A (en) | Intelligent tool to support manual scheduling of ads | |
CN106897313B (zh) | 一种海量用户业务偏好评估方法和装置 | |
CN106919566A (zh) | 一种基于海量数据的查询统计方法及系统 | |
KR101736382B1 (ko) | 이엠에스 서버 및 이의 로그 데이터 관리 방법 | |
CN109769027A (zh) | 一种消息推送方法、装置及设备 | |
CN112612941B (zh) | 一种金融证券舆情信息爬取方法及装置 | |
JP2013101539A (ja) | サンプリング装置、サンプリングプログラム、およびその方法 | |
CN1716243A (zh) | 利用网络爬行者程序在网上进行价格收集的方法 | |
JP6772116B2 (ja) | アクセス元分類装置、アクセス元分類方法及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |