[发明专利]一种基于http的低内存大文件解析方法在审
申请号: | 202011097223.6 | 申请日: | 2020-10-14 |
公开(公告)号: | CN112256634A | 公开(公告)日: | 2021-01-22 |
发明(设计)人: | 代存折;李妃军;龚勤 | 申请(专利权)人: | 杭州当虹科技股份有限公司 |
主分类号: | G06F16/11 | 分类号: | G06F16/11;G06F16/18;G06F8/41;H04L29/08 |
代理公司: | 杭州橙知果专利代理事务所(特殊普通合伙) 33261 | 代理人: | 杜放 |
地址: | 310000 浙江省杭州市西*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 http 内存 文件 解析 方法 | ||
本发明公开了一种基于http的低内存大文件解析方法。它具体操作步骤如下:通过定义模块定义大文件在分段读取时的分段大小;通过预设置模块设置文件第一次需要解析的标识;通过分段解析模块发送分段请求;通过第一计算模块计算文件内容是否符合预设置模块设置的解析标识;通过处理模块消费解析后的文件并且更新最后一次解析的标识;通过第二计算模块计算文件分段条件;第二计算模块计算完成之后,判断是否继续,如果是则返回分段解析模块,否则结束整个流程。本发明的有益效果是:保证使用较低配置的服务器也能够正常解析大文件,同时能保证解析文件的完整性,并且可以通过算法来排除已解析部分来达到硬件资源最大利用。
技术领域
本发明涉及大文件处理相关技术领域,尤其是指一种基于http的低内存大文件解析方法。
背景技术
在实际的业务场景中,如果要分析GB、TB、PB级别的比如日志等文件时,一般所需的服务器内存要求都特别高,但是内存是有限的,如何在低内存的配置下也能够解决海量数据成了一个难题。目前在解决大文件解析时,基本都是对源文件进行分段存储的方式,影响了源文件的存储结构,且需要对生成源文件的服务进行改造或额外编写脚本进行文件分段。
发明内容
本发明是为了克服现有技术中存在上述的不足,提供了一种达到硬件资源最大利用的基于http的低内存大文件解析方法。
为了实现上述目的,本发明采用以下技术方案:
一种基于http的低内存大文件解析方法,包括定义模块、预设置模块、分段解析模块、第一计算模块、处理模块、第二计算模块,具体操作步骤如下:
(1)通过定义模块定义大文件在分段读取时的分段大小;
(2)通过预设置模块设置文件第一次需要解析的标识;
(3)通过分段解析模块发送分段请求;
(4)通过第一计算模块计算文件内容是否符合预设置模块设置的解析标识;
(5)通过处理模块消费解析后的文件并且更新最后一次解析的标识;
(6)通过第二计算模块计算文件分段条件;
(7)第二计算模块计算完成之后,判断是否继续,如果是则返回步骤(3),否则结束整个流程。
本发明公开了一种基于http的低内存大文件解析方案,包括定义模块、预设置模块、分段解析模块、第一计算模块、处理模块、第二计算模块,通过基于http的低内存大文件解析,从而保证使用较低配置的服务器也能够正常解析大文件,同时能保证解析文件的完整性,并且可以通过算法来排除已解析部分来达到硬件资源最大利用。
作为优选,在步骤(1)中,分段的大小配置在处理模块中会直接映射到内存中,且根据当前服务器最大内存来决定分段大小。
作为优选,在步骤(2)中,预设置模块目的是为了首次解析文件时是否需要把部分内容排除掉,用文件内容中的位置、时间作为解析标识,要能够正确表示出先后顺序即可。
作为优选,在步骤(3)中,基于http的range规则,开始对文件进行附带range头的GET请求,格式为:Range:bytes=起始-结束,其中起始是指从文件第几个字节开始读取,首次从0开始;结束是指读取到文件的第几个字节,需要根据起始位置加上定义模块中定义的分段大小。
作为优选,在步骤(5)中,基于实际的业务场景对分段解析模块解析出的文件内容进行处理,处理完后释放本次的文件内容,并且记录该文件最后一次处理的标识,需要与预设置模块的标识保持一致;由于分段解析模块使用的range规则是按照字节大小来读取的,并不是按行处理,处理模块会根据第二计算模块得出的是否需要下一次分段请求来存储最后一行内容,且本次不处理,等待下次分段时和首行拼接处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州当虹科技股份有限公司,未经杭州当虹科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011097223.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种车载式电源供应器
- 下一篇:一种基于云平台的舞台灯光远程调控系统