多维度查询流量数据的方法及系统的制作方法

文档序号:7822803阅读:672来源:国知局
多维度查询流量数据的方法及系统的制作方法
【专利摘要】本发明提供一种多维度查询流量数据的方法及系统,所述方法包括:采集流量数据;在所述采集到的流量数据中,将含有相同五元组的流量数据汇聚成流,其中所述五元组包括:源IP、目的IP、源接口、目的接口、服务类型标记TOS队列;获取与所述汇聚出的流对应的流量信息,其中所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房、目的机房;将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库;通过所述支持联机分析处理的数据库对所述流量数据进行多维度查询。通过采用本发明可以通过支持联机分析处理的数据库更为高效地多维度查询海量流量数据。
【专利说明】多维度查询流量数据的方法及系统

【技术领域】
[0001]本发明涉及通信领域,更为具体而言,涉及多维度查询流量数据的方法及系统。

【背景技术】
[0002]随着网络业务规模的扩大,机构内部流量传输越来越多,不规范的流量传输会导致跨机房流量拥塞,最终导致业务访问受损,影响业务的正常访问。因此对于网络管理人员需要快速对海量流量数据进行多维度的查询,以掌握网络流量的实时状况,网内应用及不同业务在不同时间段的使用情况,快速展示某个时间段内的流量概况,掌握跨机房网络负载状况,以及时发现网络结构的不合理,快速定位拥塞流量归属,避免网络带宽和服务器瓶颈问题。然而,在现有技术中通常使用关系型数据库进行多维度查询,但是对于大规模的流量数据的查询关系型数据库难以支持,另外对于多种维度的联合查询来说,包括分布式数据库在内也难以满足需求。


【发明内容】

[0003]为有效地解决上述技术问题,本发明提供了一种多维度查询流量数据的方法及系统。
[0004]一方面,本发明的实施方式提供了一种多维度查询流量数据的方法,所述方法包括:
[0005]采集流量数据;
[0006]在所述采集到的流量数据中,将含有相同五元组的流量数据汇聚成流,其中所述五元组包括:源IP、目的IP、源接口、目的接口、TOS队列;
[0007]获取与所述汇聚出的流对应的流量信息,其中所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房、目的机房;
[0008]将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库;
[0009]通过所述支持联机分析处理的数据库对所述流量数据进行多维度查询。
[0010]另一方面,本发明的实施方式提供了一种多维度查询流量数据的系统,所述系统包括:
[0011]采集模块,用于采集流量数据;
[0012]汇聚模块,用于在所述采集模块所采集到的流量数据中,将含有相同五元组的流量数据汇聚成流,其中所述五元组包括:源IP、目的IP、源接口、目的接口、TOS队列;
[0013]获取模块,用于获取与所述汇聚模块所汇聚出的流对应的流量信息,其中所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房、目的机房;
[0014]存储模块,用于将所述获取模块所获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库;
[0015]多维度查询模块,用于通过所述存储模块所存储至的支持联机分析处理的数据库对所述流量数据进行多维度查询。
[0016]实施本发明提供的多维度查询流量数据的方法及系统通过使用支持联机分析处理的数据库可以更为高效地多维度查询海量流量数据。

【专利附图】

【附图说明】
[0017]图1是根据本发明实施方式的多维度查询流量数据的方法的流程图;
[0018]图2示出了图1所示的步骤S130的一种实施方式;
[0019]图3示出了图1所示的步骤S140的一种实施方式;
[0020]图4示出了本发明实施方式的多维度查询流量数据的框架图;
[0021]图5是根据本发明实施方式的多维度查询流量数据的系统的结构示意图。

【具体实施方式】
[0022]为使本发明的实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
[0023]图1是根据本发明实施方式的多维度查询流量数据的方法的流程图。参见图1,该方法包括:
[0024]SllO:采集流量数据。
[0025]其中,在本发明的实施方式中,可以通过基于网络流信息的统计技术采集所述流量数据,例如通过Netstream(提供报文统计功能,它根据报文的目的ip地址、目的端口号、源ip地址、源端口号、协议号和TOS(三层数据包的服务类型标记)来区分流信息,并针对不同的流信息进行独立的数据统计)板卡进行采集。
[0026]S120:在所述采集到的流量数据中,将含有相同五元组的流量数据汇聚成流,其中所述五元组包括:源IP、目的IP、源接口、目的接口、TOS队列。其中流又称为网络流,指在一段时间内,一个源IP地址和目的IP地址之间传输的单向报文流,所有报文具有相同的源端口号、目的端口号、协议号和源、目的IP地址,即五元组内容相同。
[0027]S130:获取与所述汇聚出的流对应的流量信息,其中所述流量信息可以包括,但不限于:源产品线、目的产品线、源网段、目的网段、源机房、目的机房。
[0028]其中,如图2所示,在本发明的实施方式中可以通过以下方式实现步骤S130:
[0029]S131:根据所述流的源IP,获取所述源网段;
[0030]S132:根据所述获取到的源网段以及网络元数据,获取所述源机房;
[0031]S133:根据所述源IP以及业务元数据,获取所述源产品线;
[0032]S134:根据所述流的目的IP,获取所述目的网段;
[0033]S135:根据所述获取到的目的网段以及网络元数据,获取所述目的机房;
[0034]S136:根据所述目的IP以及业务元数据,获取所述目的产品线。
[0035]当然,上述的实现过程仅是示例性的,对于获取源产品线、目的产品线、源网段、目的网段、源机房、目的机房的顺利可以根据需要进行相应的变化。
[0036]并且,在本发明的实施方式中,上述流量信息还可以包括流量值。因此该步骤S130的具体实现中还可以包括:在执行步骤S120后,对含有相同五元组的流量数据进行累加,并将所述累加的结果作为所述流的流量值。
[0037]S140:将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库。
[0038]其中,在本发明的实施方式中,示例性地,该支持联机分析处理的数据库例如可以是Palo数据库,其为一款百度公司的面向分析的大规模数据库系统,其主要用于支撑稳定的、在线的、交互式的数据报表和0LAP(0n_Line Analytical Processing,联机分析处理)服务(联机分析处理是共享多维信息的,针对特定问题的联机处理访问和分析的快速软件技术,它通过对信息的多种可能的观察形式进行快速、稳定一致和交互性的存取,允许管理决策人员对数据进行深入观察。决策数据是多维数据,多维数据就是决策的主要内容),Palo数据库的一个很大的特色是:满足报表和OLAP分析这两类不同的需求。Palo底层实现基于HDFS文件系统。
[0039]并且,为提高多维度查询的效率,在本发明的一种优选的实施方式中,在执行所述步骤S140之前,可以根据查询特点,获取查询字段组合;根据所述获取到的查询字段组合建立上卷表。其中上卷表是对某些常用的维度组合建立的聚合表,可以减少数据量并提高对常用维度数据的查询效率。
[0040]如图3所示,在本发明的实施方式中,该步骤S140具体地可以通过以下方式实现:
[0041]S141:将所述获取到的流量信息与所述流的五元组对应的保存至文本文件,并将所述文本文件导入到Hadoop (Hadoop是一个由Apache基金会所开发的分布式系统基础架构,Hadoop的框架最核心的设计就是:HDFS(Hadoop Distributed File System,一种分布式文件系统)和Map Reduce (—种编程模型,用于大规模数据集(大于1TB)的并行运算)。HDFS为海量的数据提供了存储,则Map Reduce为海量的数据提供了计算);
[0042]S142:该Hadoop对所述文本文件进行拆分并加载到Palo数据库的不同节点。
[0043]其中,在本发明的实施方式中,例如可以通过哈希算法(可以依据所述节点的数量)对所述文本文件进行拆分。
[0044]S150:通过所述支持联机分析处理的数据库对所述流量数据进行多维度查询。
[0045]以下结合具体的例子对本发明的实施方式进行具体说明。
[0046]图4示出了本发明实施方式的多维度查询流量数据的框架图。参见图4,本发明的具体流程如下:
[0047]I)将网络核心交换机端口流量数据通过netstream板卡镜像出来,以高效地对网络流量数据进行收集,其自定义配置采样比与网络流相关参数,并以netf low ( 一种数据交换方式,其工作原理是:流的第一个IP包数据,生成netflow缓存,随后同样的数据基于缓存信息在同一个数据流中进行传输,不再匹配相关的访问控制等策略,netflow缓存同时包含了随后数据流的统计信息)v9协议形式进行传输,其中可以根据核心交换机的数量配置netstream板卡,以获取良好的扩展性,支持更大规模的流量数据的处理;
[0048]2)netflow接收模块flowagent (netflow流量数据接收模块,用于接收解析网络设备netflow流数据)接收netstream板卡数据,解析netflow报文,按照五元组将流量数据汇聚成流,可以按照分钟粒度进行汇聚并把相同五元组的流量数据进行累加以获取数据量,并对netstream采样数据根据采样比进行还原,并保存成DI文件,并传输到数据预处理模块;
[0049]3)数据预处理模块将接收到的流量数据结合网络元数据(用于获取网段(默认为段I?地址)与机房的对应关系)与业务元数据(用于获取I?地址与产品线信息的对应关系),得到流对应的源、目的产品线信息,源、目的网段信息,源、目的机房信息,并保存成文本文件(该文本文件具体记录各个流的五元组以及流对应的源、目的产品线信息,源、目的网段信息,源、目的机房信息,数据量以及五元组的时间等信息),将该文本文件导入到
[0050]4) ^(1001)对该文本文件进行运算拆分(可以通过哈希算法进行拆分)后加载到数据库的不同节点,其中?00数据库可以预先根据上层应用的查询特点建立上卷表
(选取经常查询的字段组合建立),可以实现十余种维度的关联查询,有效地提高查询效率;
[0051]5)^^10节点加载数据后,按照3叽协议形式提供对海量数据的并发实时查询;
[0052]6)数据查询方案采用110八0^1:8八?688,统一数据访问接口),对所有的查询生成唯一的匕“主键),并将结果缓存在—种高性能的1^67-^1116数据库)里面,其生存时间设置为36008。
[0053]由于?00数据库采用高效分布式数据导入,底层采用他如叩进行数据预处理,因此相对于传统的关系型数据库或分布式关系数据库来说能够实现大规模数据查询,同时还可以进行多维度统计分析,计算多种统计指标,以更为深入的了解网络流量分布。基于此可以进一步提供流量审计、网络成本分摊、业务部署规划、网络基础设施扩建、业务流量监控,全方位对网络流量进行分析和管理。
[0054]图5是根据本发明实施方式的多维度查询流量数据的系统的结构示意图。参见图5,该系统100包括:
[0055]采集模块110,用于采集流量数据。
[0056]其中,在本发明的实施方式中,该采集模块110可以包括:统计技术采集单元,用于通过基于网络流信息的统计技术采集所述流量数据,具体地,该统计技术采集单元例如可以采用上述的1161:81:1~6肅板卡。
[0057]汇聚模块120,用于在所述采集模块110所采集到的流量数据中,将含有相同五元组的流量数据汇聚成流,其中所述五元组包括:源I?、目的I?、源接口、目的接口、103队列,其中,该汇聚模块120例如可以采用上述的界接收模块?10冊86111^
[0058]获取模块130,用于获取与所述汇聚模块120所汇聚出的流对应的流量信息,其中所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房、目的机房。
[0059]其中,在本发明的实施方式中,该获取模块130可以包括,但不限于:
[0060]源网段获取单元,用于根据所述流的源I?,获取所述源网段;
[0061]源机房获取单元,用于根据所述源网段获取单元获取到的源网段以及网络元数据,获取所述源机房;
[0062]源产品线获取单元,用于根据所述源I?以及业务元数据,获取所述源产品线;
[0063]目的网段获取单元,用于根据所述流的目的I?,获取所述目的网段;
[0064]目的机房获取单元,用于根据所述目的网段获取单元获取到的目的网段以及网络元数据,获取所述目的机房;
[0065]目的产品线获取单元,用于根据所述目的I?以及业务元数据,获取所述目的产品线。
[0066]并且,在本发明的实施方式中,上述流量信息还可以包括流量值。因此该获取模块130还可以包括:流量值获取单元,用于对含有相同五元组的流量数据进行累加,将所述累加的结果作为所述流的流量值。
[0067]存储模块140,用于将所述获取模块130所获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库。
[0068]其中,在本发明的实施方式中,示例性地该支持联机分析处理的数据库例如可以是?00数据库。
[0069]并且,在发明的实施方式中,该存储模块140可以包括,但不限于:
[0070]保存单元,用于将所述获取到的流量信息与所述流的五元组对应的保存至文本文件;
[0071]加载单元,用于对所述保存单元所保存至的文本文件进行拆分并加载到所述数据库的不同节点,其中该加载单元可以包括:哈希拆分组件,用于通过哈希算法对所述文本文件进行拆分。
[0072]多维度查询模块150,用于通过所述存储模块140所存储至的支持联机分析处理的数据库对所述流量数据进行多维度查询。
[0073]为提高多维度查询的效率,在本发明的一种优选的实施方式中,该系统100还可以包括:
[0074]查询字段组合获取模块,用于根据查询特点,获取查询字段组合;
[0075]上卷表建立模块,用于根据所述查询字段组合获取模块获取到的查询字段组合建立上卷表。
[0076]以上仅是本发明实施方式的一个示例,本发明不限于此,在不脱离本发明的保护范围的前提下,所述系统100的各个模块可以各种方式进行组合或合并,合并后的模块统一实现合并前的各个模块各自的功能,例如可以该获取模块130以及存储模块140合并为上述的数据预处理模块。
[0077]实施本发明提供的多维度查询流量数据的方法及系统可以通过支持联机分析处理的数据库更为高效地多维度查询海量流量数据。
[0078]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现,当然也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对【背景技术】做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如801/狀1、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,智能手机或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
[0079]本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限定。本领域技术人员应当理解,在不脱离所公开的实施方式的基本原理的前提下,对上述实施方式中的各细节可进行各种变化。因此,本发明的范围只由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合理的意思进行理解。
【权利要求】
1.一种多维度查询流量数据的方法,其特征在于,所述方法包括: 采集流量数据; 在所述采集到的流量数据中,将含有相同五元组的流量数据汇聚成流; 获取与所述汇聚出的流对应的流量信息; 将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库; 通过所述支持联机分析处理的数据库对所述流量数据进行多维度查询。
2.如权利要求1所述的方法,其特征在于, 所述五元组包括:源I?、目的I?、源接口、目的接口以及服务类型标记丁03队列。
3.如权利要求1所述的方法,其特征在于, 所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房以及目的机房。
4.如权利要求1所述的方法,其特征在于,所述采集流量数据包括: 通过基于网络流信息的统计技术采集所述流量数据。
5.如权利要求2所述的方法,其特征在于,获取与所述汇聚出的流对应的流量信息包括: 根据所述流的源I?,获取所述源网段; 根据所述获取到的源网段以及网络元数据,获取所述源机房; 根据所述源I?以及业务元数据,获取所述源产品线; 根据所述流的目的I?,获取所述目的网段; 根据所述获取到的目的网段以及网络元数据,获取所述目的机房; 根据所述目的I?以及业务元数据,获取所述目的产品线。
6.如权利要求3所述的方法,其特征在于, 所述流量信息还包括流量值。
7.如权利要求6所述的方法,其特征在于,获取与所述汇聚出的流对应的流量信息还包括: 在执行所述将含有相同五元组的流量数据汇聚成流后,对含有相同五元组的流量数据进行累加, 将所述累加的结果作为所述流的流量值。
8.如权利要求1所述的方法,其特征在于,所述方法还包括: 在执行所述将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库之前,根据查询特点,获取查询字段组合; 根据所述获取到的查询字段组合建立上卷表。
9.如权利要求1?8中任意一项所述的方法,其特征在于, 所述支持联机分析处理的数据库包括数据库。
10.如权利要求9所述的方法,其特征在于,将所述获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库包括: 将所述获取到的流量信息与所述流的五元组对应的保存至文本文件; 对所述文本文件进行拆分并加载到数据库的不同节点。
11.如权利要求10所述的方法,其特征在于,对所述文本文件进行拆分包括: 通过哈希算法对所述文本文件进行拆分。
12.—种多维度查询流量数据的系统,其特征在于,所述系统包括: 采集模块,用于采集流量数据; 汇聚模块,用于在所述采集模块所采集到的流量数据中,将含有相同五元组的流量数据汇聚成流; 获取模块,用于获取与所述汇聚模块所汇聚出的流对应的流量信息; 存储模块,用于将所述获取模块所获取到的流量信息与所述流的五元组对应地存储至支持联机分析处理的数据库; 多维度查询模块,用于通过所述存储模块所存储至的支持联机分析处理的数据库对所述流量数据进行多维度查询。
13.如权利要求12所述的系统,其特征在于, 所述五元组包括:源I?、目的I?、源接口、目的接口以及服务类型标记丁03队列。
14.如权利要求12所述的系统,其特征在于, 所述流量信息包括:源产品线、目的产品线、源网段、目的网段、源机房以及目的机房。
15.如权利要求12所述的系统,其特征在于,所述采集模块包括: 统计技术采集单元,用于通过基于网络流信息的统计技术采集所述流量数据。
16.如权利要求13所述的系统,其特征在于,所述获取模块包括: 源网段获取单元,用于根据所述流的源I?,获取所述源网段; 源机房获取单元,用于根据所述源网段获取单元获取到的源网段以及网络元数据,获取所述源机房; 源产品线获取单元,用于根据所述源I?以及业务元数据,获取所述源产品线; 目的网段获取单元,用于根据所述流的目的I?,获取所述目的网段; 目的机房获取单元,用于根据所述目的网段获取单元获取到的目的网段以及网络元数据,获取所述目的机房; 目的产品线获取单元,用于根据所述目的I?以及业务元数据,获取所述目的产品线。
17.如权利要求14所述的系统,其特征在于, 所述流量信息还包括流量值。
18.如权利要求17所述的系统,其特征在于,所述获取模块还包括: 流量值获取单元,用于对含有相同五元组的流量数据进行累加,将所述累加的结果作为所述流的流量值。
19.如权利要求12所述的系统,其特征在于,所述系统还包括: 查询字段组合获取模块,用于根据查询特点,获取查询字段组合; 上卷表建立模块,用于根据所述查询字段组合获取模块获取到的查询字段组合建立上卷表。
20.如权利要求12?19中任意一项所述的系统,其特征在于, 所述支持联机分析处理的数据库包括数据库。
21.如权利要求20所述的系统,其特征在于,所述存储模块包括: 保存单元,用于将所述获取到的流量信息与所述流的五元组对应的保存至文本文件; 加载单元,用于对所述保存单元所保存至的文本文件进行拆分并加载到所述?00数据库的不同节点。
22.如权利要求21所述的系统,其特征在于,所述加载单元包括: 哈希拆分组件,用于通过哈希算法对所述文本文件进行拆分。
【文档编号】H04L12/26GK104486116SQ201410767486
【公开日】2015年4月1日 申请日期:2014年12月12日 优先权日:2014年12月12日
【发明者】谢瑞俊, 王志, 陈云飞, 熊亚军 申请人:北京百度网讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1