文件解析方法和装置制造方法及图纸

技术编号:15762984 阅读:69 留言:0更新日期:2017-07-05 23:36
本发明专利技术实施例提供了一种文件解析方法和装置,通过将文件划分为至少两个文件片段,从而并行对所划分得到的至少两个文件片段进行解析。从而通过这种并行解析的方式,提高了文件的解析速度,解决了文件解析速度较慢的技术问题,尤其是在文件的数据量较大的情况下,能够确保在预设时间点之前完成文件的解析,在金融业务这类时效性较高的场景下,避免了由于文件解析未完成后续业务停滞所导致的经济损失。

File parsing method and apparatus

The embodiment of the invention provides a file parsing method and device, which divides the files into at least two file fragments so as to parse at least two files fragments which are divided at the same time. Thus the parallel parsing through this way, improve the parsing speed of the file, solves the technical problem of file parsing slower, especially the large amount of data in the file case, to ensure the completion of the analytical document before the preset time point, in the financial business this kind of timeliness scenario, to avoid the file analysis did not complete the follow-up business stagnation caused economic losses.

【技术实现步骤摘要】
文件解析方法和装置
本专利技术涉及信息技术,尤其涉及一种文件解析方法和装置。
技术介绍
在接收到文件之后,需要首先对文件进行解析,以确保文件的准确性,同时确保文件在后续处理中的可识别性,从而便于后续对文件进行下一步处理。在解析过程中,可以具体针对文件中的内容或格式进行一系列的扫描、校验等操作。例如:对于金融业务,在从外部公司获取记录有金融数据的文件时,为了保证下一步数据处理的准确性,在对这些金融数据进行数据处理之前,需要确保文件的格式和字段内容的准确性,因此,要对从外部公司所获取到的文件进行解析。在解析通过后,再继续执行相应的数据处理过程。目前,大多采用单一进程对所获取到的文件进行解析,在文件的数据量较大的情况下,解析的速度较慢,从而不能保证在预设时间点之前完成对文件的解析,在金融业务这类时效性要求较高的场景下,会导致后续业务停滞进而带来较为严重的损失。
技术实现思路
本专利技术提供一种文件解析方法和装置,用于解决现有技术中,文件解析速度较慢的技术问题。为达到上述目的,本专利技术的实施例采用如下技术方案:第一方面,提供了一种文件解析方法,包括:将文件划分为至少两个文件片段;并行对所述至少两个文件片段进行解析。第二方面,提供了一种文件解析装置,包括:划分模块,用于将文件划分为至少两个文件片段;解析模块,用于并行对所述至少两个文件片段进行解析。本专利技术实施例提供的文件解析方法和装置,通过将文件划分为至少两个文件片段,从而并行对所划分得到的至少两个文件片段进行解析。从而通过这种并行解析的方式,提高了文件的解析速度,解决了文件解析速度较慢的技术问题,尤其是在文件的数据量较大的情况下,能够确保在预设时间点之前完成文件的解析,在金融业务这类时效性较高的场景下,避免了由于文件解析未完成后续业务停滞所导致的经济损失。上述说明仅是本专利技术技术方案的概述,为了能够更清楚了解本专利技术的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。附图说明通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本专利技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1为本专利技术实施例一提供的一种文件解析方法的流程示意图;图2为文件解析的场景示意图;图3为文件解析的原理示意图;图4为本专利技术实施例二提供的一种文件解析方法的流程示意图;图5为本专利技术实施例三提供的一种文件解析装置的结构示意图;图6为本专利技术实施例四提供的一种文件解析装置的结构示意图;图7为本专利技术实施例五提供的一种文件解析系统的结构示意图;图8为文件解析系统的原理示意图。具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。下面结合附图对本专利技术实施例提供的文件解析方法、装置和系统进行详细描述。实施例一图1为本专利技术实施例一提供的一种文件解析方法的流程示意图,本实施例所提供的方法,可以由文件解析系统执行,如图2所示的文件解析的场景示意图,该文件解析系统可以从外部系统获取或接收待解析的文件,从而对其进行解析,以便解析完成后由其他业务处理系统执行业务处理流程。具体的,作为一种可能的应用场景,该文件解析系统运行在分布式的集群中,或者,作为另一种可能的应用场景,该文件解析系统运行在单机中,本实施例中对此不做限定。如图1所示,文件解析方法包括:步骤101、将文件划分为至少两个文件片段。具体的,对文件进行划分时,可以根据预设的划分策略将文件划分为多个文件片段。由于这里的文件划分是对构成文件的字节所进行的划分,因此在进行划分之前,还需要根据文件的类型,确定该类型文件的最小划分单元,采用该最小划分单元对文件进行划分,避免将一个最小划分单元中各部分的字节划分在不同的文件片段中,导致无法进行文件解析。可见,这里确定最小划分单元时,需参考后续文件解析时所能够对每一类型文件进行解析的最小单元进行确定。例如:对于文档类型的文件,最小划分单元可以为语句或者段落或者是页;而对于表格类型的文件,最小划分单元可以为单元格,或者为行,或者为列。其中,对于划分策略来说,可以根据文件片段的预设数据量,或者是根据文件片段的预设数量对文件进行划分,从而得到多个文件片段。例如:可以将文件划分为固定的100个文件片段,每个文件片段的数据量约占文件的数据量的1%。又例如:还可以在划分时,确保每一个文件片段的数据量约为固定的数据量,但文件片段的数量是不确定的,需要根据文件的数据量进行调整。步骤102、并行对至少两个文件片段进行解析。具体的,根据各文件片段在文件中的位置,生成各解析任务,将各解析任务调度到至少两个进程中的对应进程。由至少两个进程并行执行调度获得的解析任务。作为一种可能的实现方式,在由至少两个进程并行执行调度获得的解析任务时,可以针对每一个进程,根据调度获得的解析任务中所记录的位置,从文件中读取得到对应的文件片段。其中,解析任务中所记录的位置可以为文件片段的第一个和最后一个字节在文件中的相对位置。当解析任务指示对文件片段执行校验操作时,由该进程根据预先配置的校验规则,对所读取到的文件片段进行校验操作,其中,校验规则具体用于校验预设行或列中的文字是否符合一定的格式,或者数字是否符合一定的取值范围,某个单元格中的取值是否为空等。需要说明的是,对于解析这一过程具体可以包括校验、格式转换、扫描等一系列操作的一个或多个组合,本实施例中的校验操作仅作为一种示意性说明,不构成对本专利技术实施例的限制。可见,如图3所示,通过将文件划分为至少两个文件片段,从而并行对所划分得到的至少两个文件片段进行解析。从而通过这种并行解析的方式,提高了文件的解析速度,解决了文件解析速度较慢的技术问题,尤其是在文件的数据量较大的情况下,能够确保在预设时间点之前完成文件的解析。实施例二图4为本专利技术实施例二提供的一种文件解析方法的流程示意图,本实施例所提供的方法可以由图2所提供的文件解析系统执行,用于针对金融类常用的报表文件进行解析,也就是说,本实施例中的文件的类型均为表格。如图4所示,方法包括:步骤201、当接收到文件通知时,获取文件。具体的,当接收到文件通知时,从外部系统获取已生成的文件,将文件存储在内存中。步骤202、对所获取到的文件进行扫描。具体的,对内存中的文件进行扫描,包括字节扫描和哈希扫描。其中,字节扫描用于确定文件的数据量,而哈希扫描用于确定文件的校验码,该校验码用于判读文件在传输过程中是否存在损坏,从而确定文件未损坏时,执行下一步骤,否则重新从外部系统获取文件。在完成扫描后,能够得到文件的数据量等属性信息。步骤203、将文件划分为预设数量的文件片段,得到各个文件片段在文件中的位置。其中,位置具体为文件片段的第一个字节在文件中的相对位置和最后一个字节在文件中的相对位置。例如:可以为文件片段中的第一个和最后一个字节在文件中分别为第几个字节,还可以为文件片段中的第一个和最本文档来自技高网...
文件解析方法和装置

【技术保护点】
一种文件解析方法,其特征在于,包括:将文件划分为至少两个文件片段;并行对所述至少两个文件片段进行解析。

【技术特征摘要】
1.一种文件解析方法,其特征在于,包括:将文件划分为至少两个文件片段;并行对所述至少两个文件片段进行解析。2.根据权利要求1所述的文件解析方法,其特征在于,所述将文件划分为至少两个文件片段包括:根据预设数据量,对所述文件进行划分,以得到符合所述预设数据量的文件片段;和/或,根据预设数量,对所述文件进行划分,以得到符合所述预设数量的文件片段。3.根据权利要求1所述的文件解析方法,其特征在于,所述将文件划分为至少两个文件片段包括:根据所述文件的类型确定所述文件的最小划分单元;采用所述最小划分单元对所述文件进行划分。4.根据权利要求1-3任一项所述的文件解析方法,其特征在于,所述并行对所述至少两个文件片段进行解析包括:根据各文件片段在所述文件中的位置,生成各解析任务;将各解析任务调度到至少两个进程中的对应进程;由所述至少两个进程并行执行调度获得的解析任务。5.根据权利要求4所述的文件解析方法,其特征在于,所述由至少两个进程并行执行调度获得的解析任务包括:针对每一个进程,根据调度获得的解析任务中所记录的位置,从所述文件中读取得到对应的文件片段;对所读取到的文件片段进行解析。6.根据权利要求5所述的文件解析方法,其特征在于,所述解析任务用于对所述文件片段进行校验操作,所述对所读取到的文件片段进行解析包括:根据对所述进程所预先配置的校验规则,对所读取到的文件片段进行校验。7.根据权利要求1-3任一项所述的文件解析方法,其特征在于,所述将文件划分为至少两个文件片段之前,还包括:对所述文件进行扫描操作,以确定所述文件已成功接收。8.根据权利要求1-3任一项所述的文件解析方法,其特征在于,所述并行对所述至少两个文件片段进行解析之后,还包括:当所述至少两个文件片段中的至少一个解析失败时,确定所述文件解析失败;定位解析失败的文件片段在所述文件中的位置。9.一种文件解析...

【专利技术属性】
技术研发人员:毛启明王啸曾宪玺吴笑笑
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1