首页> 中国专利> 一种通过高速内存、分布式处理海量日志的系统及方法

一种通过高速内存、分布式处理海量日志的系统及方法

摘要

一种通过高速内存、分布式处理海量日志的系统和方法,该系统由多个日志产生设备和一个日志管理服务器所组成:日志产生设备散置于各个网元中,用于将各种原始日志进行格式归一化后,再缓存于高速内存组件,并周期地上传至日志管理服务器;日志产生设备设有三个部件:原始日志产生模块、日志预处理模块和高速内存组件。日志管理服务器负责将分布于各日志产生设备的高速内存组件中超过缓存期限的日志统一导出、归档存储,以供其他系统查询与分析日志。本发明能够高效、低成本、实时处理多种类型日志,可扩展性和可实施性均较好。与采用关系型数据库存储日志相比较,降低处理成本,还解决了大数据量的数据库瓶颈问题,提高了查询与分析日志的效率。

著录项

  • 公开/公告号CN103532754A

    专利类型发明专利

  • 公开/公告日2014-01-22

    原文格式PDF

  • 申请/专利权人 北京首信科技股份有限公司;

    申请/专利号CN201310475852.1

  • 申请日2013-10-12

  • 分类号H04L12/24(20060101);H04L29/08(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人夏宪富

  • 地址 100015 北京市朝阳区将台路5号

  • 入库时间 2024-02-19 23:10:49

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-08-17

    授权

    授权

  • 2014-02-26

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20131012

    实质审查的生效

  • 2014-01-22

    公开

    公开

说明书

技术领域

本发明涉及一种通信日志处理技术,确切地说,涉及一种通过高速内存、 分布式处理海量日志的系统及方法,属于通信技术领域。

背景技术

在电信运营商的业务网络中,为网络管理人员了解业务使用状况的通信业 务日志,是一个不可或缺的部分。尤其随着网络的多元化、IP化和业务开放化 等因素的不断演进与发展,电信设备面临的安全威胁也在不断增加,能够实时 记录和分析用户业务使用情况的日志,在发现和定位网络问题中的作用也越发 变得重要。而且,如今网络业务的拓展迅速、用户数量与日俱增,电信网络设 备的类型与数量也在不断地增多,通信日志已经成为海量数据。况且,这些原 始的海量日志是以日志文件的形式分散地存储于各个网络设备中,因此无论日 志的存储还是分析都面临了更大的挑战。

与本发明相关的一项发明专利申请《一种日志处理方法、设备和系统》(申 请号:201010138020.7),通过设置配置文件信息,调用脚本对日志文件进行整 理,生成业务项目对应的结构化数据。其优点是缩短了开发周期,但是实施过 程仍需要以关系型数据库之类的结构化存储数据库作为最终存储日志的媒介, 其硬件成本高昂,且大数据量下的数据库存在一定瓶颈。

另一项与本发明相关的发明专利申请《日志处理系统、日志处理方法和日 志存储子系统》(申请号:201010271815.5),是通过消息队列的形式对日志进行 整理存储、独立于日志产生设备的存储系统,减少了对应用子系统的影响。但 是,这种处理方式对于日志的归档备份,尤其在对外提供日志查询分析时,必 须轮询消息队列,效率较低。

发明内容

有鉴于此,本发明提供了一种通过高速内存、分布式处理海量日志的系统 及方法,用于高效、低成本、实时地处理多种类型的日志,实现统一归档存储。 本发明具有较高的可扩展性和可实施性,同时为电信运营商提高了日志查询与 分析的效率。

为了达到上述目的,本发明提供了一种通过高速内存、分布式处理海量 日志的系统,其特征在于:所述系统是由多个日志产生设备和一个日志管理 服务器所组成,其中:

日志产生设备,分散地配置在各个网元中,用于将各种原始日志进行格式 归一化处理后,再缓存于高速内存组件,并周期地将其产生的关联索引文件上 传至日志管理服务器;该日志产生设备设有下述三个部件:

原始日志产生模块:用于为电信网络产生各种业务应用的原始日志;

日志预处理模块:负责读取配置文件,根据配置文件中的日志类型,从原 始日志产生模块读取相应的原始日志,然后创建相应子进程,分别对不同类型 的日志以“key,value”的形式进行格式归一化,同时将key写入关联索引文件并 周期地以文件传输协议FTP(File Transfer Protocol)的方式上传至日志管理服务 器;

高速内存组件:用于缓存格式归一化预处理后的日志。

日志管理服务器,负责将分布于各个日志产生设备的高速内存组件中超过 缓存期限的日志统一导出、归档存储,以供其他系统对日志进行查询、分析。

为了达到上述目的,本发明还提供了一种通过高速内存、分布式处理海量 日志的系统的工作方法,其特征在于:网络中各个网元的日志产生设备中的日 志预处理模块根据配置文件中所配置的日志类型,创建不同的子进程,分别对 所配置的多种原始日志进行“key,value”格式的归一化处理;然后,分发并缓存 于网络中的各台日志产生设备的高速内存组件中,同时将key列表写入临时文 件、即“关联索引文件”,并周期地以FTP的方式上传至日志管理服务器;日志 管理服务器根据各个日志产生设备的日志预处理模块上传的关联索引文件,将 分布于各个日志产生设备的高速内存组件中超过缓存期限的日志统一导出归 档,然后采用多层目录的方式进行存储,并对外提供接口,以供进行日志的查 询与分析。

本发明通过高速内存、分布式处理海量日志的系统及方法的优点是:本发 明系统能够高效、低成本、实时地处理多种类型的日志,具备较高的可扩展性 和可实施性。本发明的创新技术是:以高速内存组件对格式归一化后的日志进 行缓存,可以提高日志的处理速度,实时性更强。而且,电信运营商进行业务 拓展后,网络中日志类型或者网元设备数量的增加,都可以通过修改配置文件 而灵活扩展该系统的功能。日志管理服务器能够周期、定时地将高速内存组件 中的日志进行统一归档存储,相比于用关系型数据库而言,大大降低了日志处 理的成本;而且,解决了大数据量下的数据库瓶颈问题。另外,归档日志采用 多层目录方式存储,为电信运营商提高了查询与分析日志的效率,因此,本发 明具有很好的推广应用前景。

附图说明

图1是本发明通过高速内存、分布式处理海量日志的系统结构组成示意图。

图2是本发明日志处理系统使用高速内存、分布式处理海量日志的操作步 骤流程图。

具体实施方式

为使本发明的目的、技术方案更加清楚,下面将结合附图对本发明进一步 详细描述。

参见图1,介绍本发明通过高速内存、分布式处理海量日志的系统结构组成: 设有多个日志产生设备和一个日志管理服务器,其中:

多个日志产生设备,分散地配置在各个网元中,用于将各种原始日志进行 格式归一化处理后,再缓存于高速内存组件,并周期地将其产生的关联索引文 件上传至日志管理服务器。该日志产生设备设有下述三个部件:

原始日志产生模块:用于为电信网络产生各种业务应用的原始日志;

日志预处理模块:负责读取配置文件,根据配置文件中的日志类型,从原 始日志产生模块读取相应的原始日志,然后创建相应子进程,分别对不同类型 的日志以“key,value”的形式进行格式归一化,同时将key写入关联索引文件并 周期地以FTP的方式上传至日志管理服务器;

高速内存组件:用于缓存格式归一化预处理后的日志。

日志管理服务器,负责将分布于各个日志产生设备的高速内存组件中超过 缓存期限的日志统一导出、归档存储,以供其他系统对日志进行查询、分析。

本发明还提供了一种针对本发明通过高速内存、分布式处理海量日志的系 统的工作方法:网络中各个网元的日志产生设备中的日志预处理模块根据配置 文件中所配置的日志类型,创建不同的子进程,分别对所配置的多种原始日志 进行“key,value”格式的归一化处理;然后,分发并缓存于网络中的各台日志产 生设备的高速内存组件中,同时将key列表写入临时文件、即“关联索引文件”, 并周期地以FTP的方式上传至日志管理服务器;日志管理服务器根据各个日志 产生设备的日志预处理模块上传的关联索引文件,将分布于各个日志产生设备 的高速内存组件中超过缓存期限的日志统一导出归档,然后采用多层目录的方 式进行存储,并对外提供接口,以供进行日志的查询与分析。

参见图2,介绍本发明方法的具体操作步骤:

步骤1,日志产生设备中的日志预处理模块读取预设的配置文件,根据配置 文件中配置的日志类型(包括移动通信网络中的认证日志和业务使用日志),创 建相应的子进程,以便对该日志产生设备的原始日志产生模块中不同类型的原 始日志进行处理。

所述配置文件采用可扩展标记语言xml(Extensible Markup Language)格式, 设有下述三类配置项信息:

A,高速内存组件的配置信息:高速内存组件的IP地址、端口及其内存容量。

B,日志类型的配置信息:原始日志类型、原始日志的存储目录。

C,关联索引文件的信息:关联索引文件的存储目录、上传的目的IP地址。

步骤2,日志产生设备中日志预处理模块检查是否存在历史文件,如果存在, 则根据历史记录查找日志文件进行处理;如果不存在,则检查配置文件中是否 配置有初始时间,如果初始时间存在,则查找由初始时间开始的日志文件;如 果初始时间不存在,则处理当前时间间隔的日志文件。

所述历史文件用于在日志处理过程中,记录处理日志的位置;即每处理一 条日志,就对历史文件进行更新,采用这种隐藏文件的形式记录日志处理的历 史,能够有效防止人为的误删操作,提高安全性。

历史文件的文件名格式与内容规定如下:

文件名格式:.<日志类型>_history,

内容:<当前处理位置><当前处理文件名>。

需要说明的是:隐藏文件格式是:“.AAAAUTH_history”,即在其文件名之 前增设一个点“.”,这种以“.**”命名的文件在linux或unix服务器下为隐藏文件。

步骤3,日志产生设备中日志预处理模块将要处理的各种类型的日志分别以 “key,value”形式进行格式归一化处理后,再哈希取模分发并缓存于网络中的各 台日志产生设备的高速内存组件,以提高日志存储的可靠性;同时将key列表 写入关联索引文件。

该步骤中的格式归一化后“key,value”的数据存储结构是以“用户名+时间 +日志类型”为key,以原始日志内容组成的逗号分隔值csv(Comma Separated  Value)格式为value。

所述高速内存组件的缓存是以负载均衡为原则,采用用户名哈希取模分发方 式进行的;高速内存组件采用集群方式部署,且以主-备1:1方式配置,以确保工 作可靠。且在日志处理过程中,实时监控各个高速内存组件的内存占用情况:当 高速内存组件中日志占用达到其所配置内存的90%时,实时发送告警信号。

所述关联索引文件用于记录缓存入高速内存组件的key列表,其文件名格 式及内容如下:

文件名格式:日志类型_<日志处理进程绑定IP>.<高速内存组件IP:端口 >.<yyyymmddhhmm>.<进程号>

内容:key,用户名。

步骤4,日志产生设备中日志预处理模块按照设定时间周期(例如10分钟) 或当关联索引文件中的记录达到设定数量(例如10万条)时,将关联索引文件 以FTP形式上传至日志管理服务器,以供作为将格式归一化的日志导出的依据。

步骤5,日志管理服务器根据上传的关联索引文件将超过缓存期限的日志由 高速内存组件中导出后,归档存储。

该步骤的具体操作内容是:日志管理服务器从关联索引文件中读取key,根 据关联索引文件名中的高速内存组件的IP地址及其端口,从相应的高速内存组 件中导出格式归一化后的日志,然后根据关联索引文件名中的日期、日志类型 和用户名,采用多层目录的方式存储日志,以便提高查询效率。

所述日志的多层目录结构如下:

第一级目录:yearmmddhh

第二级目录:认证日志:auth,业务使用日志:serv

文件名称:xx.auth:用户名哈希计算后得到的序列号对应的认证日志

xx.serv:用户名哈希计算后得到的序列号对应的业务使用日志。

本发明已经进行了多次实施试验,试验的结果是成功的,实现了发明目的。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号