[发明专利]日志文件的读写方法及装置有效
申请号: | 201310575219.X | 申请日: | 2013-11-15 |
公开(公告)号: | CN103593440B | 公开(公告)日: | 2017-10-27 |
发明(设计)人: | 吴充;郭涛 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 吴贵明,张永明 |
地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 文件 读写 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体而言,涉及一种日志文件的读写方法及装置。
背景技术
现有技术中日志文件导入数据库的通常做法为,通过程序逐行读取指定格式的日志文件并逐行写入内存,处理完该日志文件后,才把内存一次性写入数据库,也即先读取完文件才会写入数据库,采用该方案程序执行的时间=读取文件的时间+写入数据库的时间。在日志文件中有大量数据的情况下,读取文件的时间和写入数据库的执行时间分别大幅度增加,造成程序整体的执行时间也大幅度增加。采用上述方法因为执行流程是串行线性的,在程序读取文件过程中,写入数据库的操作一直在等待读取操作的完成,造成了大量的资源闲置。同时,当一次读入的数据足够的大的时候,把这些数据整体写入数据库会造成数据库写入时间过长,短时间内数据库的日志暴涨,如果写入失败,回滚大量数据的时间也很长。
针对现有技术中将日志文件导入数据库的时间长、效率低的问题,目前尚未提出有效的解决方案。
发明内容
针对相关技术中将日志文件导入数据库的时间长、效率低的问题,目前尚未提出有效的解决方案,为此,本发明的主要目的在于提供一种日志文件的读写方法及装置,以解决上述问题。
为了实现上述目的,根据本发明的一个方面,提供了一种日志文件的读写方法,该方法包括:读取步骤:将读取到日志文件中的日志数据保存入对应的内存集合;检测步骤:检测内存集合的行数是否大于预设阈值;插入步骤:在内存集合的行数大于预设阈值的情况下,将内存集合中的日志数据插入数据库中的第一临时表;返回步骤:返回执行读取步骤直至将日志数据全部保存入第一临时表中;更新步骤:使用第一临时表中的数据更新数据库的正式表。
进一步地,读取步骤包括:从日志文件中逐行读取第一日志数据;对第一日志数据进行过滤处理得到第二日志数据;将第二日志数据反序列化得到对象元素;将对象元素保存入内存集合。
进一步地,在检测步骤之后,方法还包括:在内存集合的行数不大于预设阈值的情况下,检测是否将日志文件中的日志数据读取完;在将日志文件中的日志数据读取完的情况下,执行插入步骤;在没有将日志文件中的日志数据读取完的情况下,执行返回步骤。
进一步地,更新步骤包括:对第一临时表中的数据进行去重处理得到第二临时表;使用第二临时表中的数据更新正式表。
进一步地,方法还包括:删除第一临时表和第二临时表中的数据。
为了实现上述目的,根据本发明的另一方面,提供了一种日志文件的读写装置,该装置包括:读取模块,用于将读取到日志文件中的日志数据保存入对应的内存集合;检测模块,用于检测内存集合的行数是否大于预设阈值;插入模块,用于在内存集合的行数大于预设阈值的情况下,将内存集合中的日志数据插入数据库中的第一临时表;返回执行模块,用于返回执行读取步骤直至将日志数据全部保存入第一临时表中;更新模块,用于使用第一临时表中的数据更新数据库的正式表。
进一步地,读取模块包括:读取子模块,用于从日志文件中逐行读取第一日志数据;过滤模块,用于对第一日志数据进行过滤处理得到第二日志数据;反序列化模块,用于将第二日志数据反序列化得到对象元素;保存模块,用于将对象元素保存入内存集合。
进一步地,装置还包括:检测子模块,用于在内存集合的行数不大于预设阈值的情况下,检测是否将日志文件中的日志数据读取完;第一执行模块,用于在将日志文件中的日志数据读取完的情况下,执行插入模块;第二执行模块,用于在没有将日志文件中的日志数据读取完的情况下,执行返回执行模块。
进一步地,更新步骤包括:去重模块,用于对第一临时表中的数据进行去重处理得到第二临时表;更新子模块,用于使用第二临时表中的数据更新正式表。
进一步地,装置还包括:删除模块,用于删除第一临时表和第二临时表中的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310575219.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:获取会话的最大转化步数的方法及装置
- 下一篇:应用推荐方法及装置、服务器设备