[发明专利]日志文件合并方法、系统、设备及介质在审
申请号: | 202110195748.1 | 申请日: | 2021-02-19 |
公开(公告)号: | CN112905555A | 公开(公告)日: | 2021-06-04 |
发明(设计)人: | 马聪 | 申请(专利权)人: | 广东云智安信科技有限公司 |
主分类号: | G06F16/18 | 分类号: | G06F16/18;G06F16/16;G06F16/13;G06F16/182 |
代理公司: | 北京捷诚信通专利事务所(普通合伙) 11221 | 代理人: | 万善书 |
地址: | 510000 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 文件 合并 方法 系统 设备 介质 | ||
本发明公开了一种日志文件合并方法、系统、设备及介质。日志文件合并方法,包括:扫描待处理目录下的所有文件,若扫描到新的文件,对该文件进行预处理;将预处理后的文件数据按类型和时间段写入到不同目录下的新建文件;在目录下新建合并线程,将新建文件合并,并将合并后的文件上传到hdfs上。日志文件合并系统,包括:扫描预处理模块;目录写入模块;合并上传模块。本发明还进一步提供了一种日志文件合并设备及介质。
技术领域
本发明涉及计算机技术领域,特别是涉及一种日志文件合并方法、系统、设备及介质。
背景技术
在大数据处理中,比较流行通过ftp服务收集各个节点的海量日志文件,来作为数据源。这些日志文件的大小一般比较随机,可能比较大,也可能比较小。大数据中,一般是将这些日志数据以文件的形式存储在hdfs上,来提供给后续的业务处理。如果直接将这些大小随机的日志文件存储到hdfs上,不仅会极大的占用hdfs集群中NameNode节点的内存空间,而且会严重影响后期MR任务的处理效率。
通过ftp上传日志文件,一般是有固定时间周期的。为了保证数据的实时性,同时又不至于上传次数太多,一般是1分钟上传一次这一分钟内的日志文件。而一分钟内,日志的条数也不是稳定的,所以日志文件大小会时大时小。另外,日志文件不会是单一类型,会有多种类型。大数据处理时,同类型的数据,对应相同的业务处理逻辑;不同类型的数据,对应不同类型的业务处理逻辑。
综合上面内容,可以看出日志文件的两个特性,类型繁杂且大小不一,但是为了方便设计大数据业务处理逻辑和处理效率。需要将日志按类型的不同,抽取合并到一起,同时,最终的文件大小有需要对齐hdfs的块大小。
所以,高效地将若干个日志文件合并成固定大小的文件,在大数据处理中是非常有现实价值的方式。
发明内容
基于此,本发明的目的在于,提供一种日志文件合并方法、系统、设备及介质。
第一方面,本发明提供一种日志文件合并方法,包括:
扫描待处理目录下的所有文件,若扫描到新的文件,对该文件进行预处理;
将预处理后的文件数据按类型和时间段写入到不同目录下的新建文件;
在目录下新建合并线程,将新建文件合并,并将合并后的文件上传到hdfs上。
上述技术方案在一种实施方式中,所述扫描待处理目录下的所有文件,包括:利用Files.walkFileTree对整个ftp根目录下所有文件进行扫描。
上述技术方案在一种实施方式中,所述若扫描到新的文件,对该文件进行预处理,包括:若当某一目录下出现新的文件且在hashset中查询不到当前目录,则创建线程合并当前目录下的文件。
上述技术方案在一种实施方式中,所述创建线程,包括:线程创建时,在hashset中写入当前目录。
上述技术方案在一种实施方式中,所述线程创建前,检测hashset中是否存放此目录,若不存在此目录,则创建线程。
上述技术方案在一种实施方式中,所述将新建文件合并,包括:将合并后的文件写入到merging目录下,当文件大小达到255M时,将文件移动到merged目录。
上述技术方案在一种实施方式中,所述将合并后的文件上传到hdfs上,包括:当前目录下文件合并完成后,当文件大小达到255M时,将合并后的文件上传到hdfs上,在hashset中删除当前目录,然后退出当前线程。
第二方面,本发明提供一种日志文件合并系统,包括:
扫描预处理模块,配置用于扫描待处理目录下的所有文件,若扫描到新的文件,对该文件进行预处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东云智安信科技有限公司,未经广东云智安信科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110195748.1/2.html,转载请声明来源钻瓜专利网。