[发明专利]一种流式数据统计算法及装置在审
申请号: | 201610086288.8 | 申请日: | 2016-02-15 |
公开(公告)号: | CN107085576A | 公开(公告)日: | 2017-08-22 |
发明(设计)人: | 宋阳阳;马乐乐;胡闽 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京国昊天诚知识产权代理有限公司11315 | 代理人: | 许志勇,刘戈 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 统计 算法 装置 | ||
技术领域
本申请属于数据处理领域,具体地说,涉及一种流式数据统计算法及装置。
背景技术
在统计DDoS攻击的时候,经常会统计到topN的源IP列表,用于攻击溯源分析,报表呈现。在传统的topN统计算法中,需要首先将所有的流量数据存储下来并进行topN计算,在网络设备中,一般采用netflow技术将网络流量以一种格式存储下来并用于统计,由于流量数据量巨大,统计topN会消耗大量的存储空间和计算能力,尤其是实时计算,更加困难。
传统算法中,如果要统计一段时间的topN目的IP的流量情况,需要将这段时间的目的IP的流量信息存储并计算,在网络流量比较大的情况下,有大量的IP信息需要统计,会消耗大量的统计空间和计算资源。而且实时性较差。
在更进一步的统计服务中,若还需要统计所有目的IP的topN源IP算法。那么,不仅仅要将目的IP的流量存储,还要将针对某个目的IP的所有源IP的流量也进行计算和存储,那么极端情况下是42亿*42亿的存储空间,实际中,这个统计在大多数的清洗系统是很难完成的,需要借助大规模的计算存储集群才能完成,存储完成后还要进行topN计算,这都在系统中很难完成。
因此,一种流式数据统计算法亟待提出。
发明内容
有鉴于此,本申请所要解决的技术问题是提供了一种流式数据统计算法及装置。
为了解决上述技术问题,本申请公开了一种流式数据统计算法,包括如下步骤:
当接收到数据包时,获取所述数据包的统计信息,并判断预设的统计区内是否存在与所述统计信息相匹配的统计单元;其中,所述统计区包含一定数量的统计单元,每个统计单元用于记录所接收到的某一数据包的所有统计信息以形成的存储信息;若为否,且不存在存储信息为空的统计单元,则按照预设策略在所述统计区内选择一个统计单元作为替换统计单元,并以所述统计信息更新所述替换统计单元的存储信息。其中,所述存储信息包括统计单元的识别标识和参数值;所述统计信息包括所述数据包的识别标识以及所述数据包对应的统计权重。
其中,所述方法还包括:根据每一统计单元的所述参数值更新所述统计区内统计单元的排序;当预设时间间隔内接收到的数据包均被执行所述判断后,根据所述排序的结果进行topN的选取操作。
其中,判断预设的统计区内是否存在与所述统计信息相匹配的统计单元,具体包括:查询所述统计区内每一统计单元的识别标识是否与所述数据包的识别标识与一致,若一致,则判定预设的统计区内存在与所述统计信息相匹配的统计单元。
其中,以所述统计信息更新所述替换统计单元的存储信息,具体包括:以所述数据包的识别标识替换所述统计单元的识别标识,并以所述数据包的统计权重替换所述统计单元的参数值。
其中,判断预设的统计区内是否存在与所述统计信息相匹配的统计单元,若为否,进一步包括:若存在存储信息为空的统计单元,以所述统计信息更新所述存储信息为空的统计单元。进一步的,以所述统计信息更新所述存储信息为空的统计单元,具体包括:以所述数据包的识别标识更新所述统计单元的识别标识,并将所述数据包的统计权重赋值与所述统计单元的参数值。
其中,判断预设的统计区内是否存在与所述统计信息相匹配的统计单元,进一步还包括:若为是,则根据所述统计信息更新相应的统计单元的参数值。
进一步的,根据所述统计信息更新相应的统计单元的存储信息,具体包括:将所述数据包的统计权重累加至所述统计单元的参数值。
其中,按照预设策略在所述统计区内选择一个统计单元作为替换统计单元,所述预设策略包括:选择所述统计区内,一定时间范围内未进行参数值更新的统计单元;或,选择所述统计区内,上一次更新时刻距离当前时刻的时间差值最大的统计单元;或,选择所述统计区内,最小参数值对应的统计单元。
其中,按照预设策略在所述统计区内选择一个统计单元作为替换统计单元,进一步包括:分割所述统计区为第一区和第二区,其中所述第一区内任一统计单元的排序参考值大于预设门限值,第二区内任一统计单元的排序参考值小于等于所述预设门限值,其中,所述排序参考值包括一定时间范围的统计单元的参数值、更新频率或上一次更新时刻;
按照预设策略在所述第二区内选择一个统计单元作为替换统计单元,所述预设策略包括:选择所述第二区内一定时间范围内未进行参数值更新的统计单元;或,选择所述第二区内,上一次更新时刻距离当前时刻的时间差值最大的统计单元;或,选择所述第二区内,最小参数值对应的统计单元。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610086288.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置