【技术实现步骤摘要】
一种打包日志的增量处理方法
本专利技术涉及信息技术大数据处理领域,具体来说,涉及一种打包日志的增量处理方法。主要是为了满足在给CDN客户提供服务的过程中,要对所有的记录访问日志,按照客户定制的格式化需求以小时为粒度(或者其他任意时间粒度)进行排序、压缩、打包,供客户进行下载,以便进行后续的核对和分析的诉求。
技术介绍
随着信息技术的飞速发展,硬件处理能力、存储能力、网络接入带宽大幅提升,云平台和物联网技术平台经过这些年的发展,也不断壮大成熟,越来越多的数据被生产和制造出来,这些数据当中很多以日志的形式存在,需要经过格式化、排序、压缩、打包处理,以便供后续进行进一步的加工和分析处理。因此,对于日常系统运行过程中产生的大量日志,如何利用现有的技术对大数据量的日志进行高效地格式化打包处理;如何能够在出现问题的时候进行细粒度的定位和回滚;以及如何在未来长期的运行过程中,让整个处理系统具备很强的弹性扩容能力,是摆在我们面前亟需解决的一个技术问题。针对相关技术中的问题,目前尚未提出有效的解决方案。专利技术 ...
【技术保护点】
1.一种打包日志的增量处理方法,其特征在于,该方法包括以下步骤:/nS1、通过预先配置的实时采集工具将应用服务器在应用服务系统运行过程中产生的日志发送到异步队列kafka集群中;/nS2、采用预设方法从kafka集群中读取日志记录,并打包生成原始日志文件和中间临时日志文件;/nS3、采用预设规则扫描中间临时日志文件中的gzip文件列表;/nS4、在某个时间窗口节点读取gzip文件中的内容,并重新排序后打包输出成分片日志文件;/nS5、利用代理技术实现大时间粒度下对分片日志文件的查看和下载。/n
【技术特征摘要】
1.一种打包日志的增量处理方法,其特征在于,该方法包括以下步骤:
S1、通过预先配置的实时采集工具将应用服务器在应用服务系统运行过程中产生的日志发送到异步队列kafka集群中;
S2、采用预设方法从kafka集群中读取日志记录,并打包生成原始日志文件和中间临时日志文件;
S3、采用预设规则扫描中间临时日志文件中的gzip文件列表;
S4、在某个时间窗口节点读取gzip文件中的内容,并重新排序后打包输出成分片日志文件;
S5、利用代理技术实现大时间粒度下对分片日志文件的查看和下载。
2.根据权利要求1所述的一种打包日志的增量处理方法,其特征在于,所述采用预设方法从kafka集群中读取日志记录的步骤还包括:
S211、利用HDFS+SPARK集群开启SPARK的streaming,以1分钟为时间窗口,对kafka集群中多个分区进行异步日志的并行拉取,生成原始SparkDStream;
S212、对原始SparkDStream进行序列化处理,并保存成原始日志记录;
S213、根据业务需求规定的格式对原始日志记录进行格式化。
3.根据权利要求2所述的一种打包日志的增量处理方法,其特征在于,所述打包生成原始日志文件和中间临时日志文件的步骤还包括:
S221、对格式化后的SparkDStream利用SPARK分布式运算进行重分区;
S222、对重新分区后的SparkDStream进行序列化处理,压缩打包成中间临时日志gz文件,并输出到HDFS的指定目录中。
4.根据权利要求3所述的一种打包日志的增量处理方法,其特征在于,对格式化后的SparkDStream利用SPARK分布式运算进行重分区的步骤还包括:
预先对日志记录中分钟对齐的时间戳用SPARK的distinct运算子进行去重,计算得到一共包含有N个时间戳,然后对N个时间戳进行排序后依次映射到0到N-1的分区ID空间中;
SparkDStream进行运算的时候,需要通过SPARK的重分区运算子对SparkDStream中的日志记录进行分区,分区的hashkey以分钟对齐的时间戳为准,分钟对齐的时间戳为每条日志记录的时间戳除以60并取整得到对应的值得到分钟对齐的时间戳,同时在分区的过程中按照日志记录的时间戳进行排序。
5.根据权利要求3所述的一种打包日志的增量处理方法,其特征在于,对重新分区后的SparkDStream进行序列化处理,压缩打包成中间临时日志gz文件,并输出到HDFS的指定目录中的步骤还包括:
在输出中间临时日志文件的时候在文...
【专利技术属性】
技术研发人员:王磊,
申请(专利权)人:紫光云南京数字技术有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。