文件数据录入数据库的方法、装置、电子设备和可读介质制造方法及图纸

技术编号:33153433 阅读:17 留言:0更新日期:2022-04-22 14:09
本公开提供一种文件数据录入数据库的方法、装置、电子设备和可读介质,其中,文件数据录入数据库的方法包括:确定待录入的文件的数据量;根据数据量确定文件是否为第一类文件;若确定文件为第一类文件,则对第一类文件进行拆分,以得到第一类子文件分片;对第一类子文件分片进行逐行录入并记录第一类子文件分片的恢复点;将已录入的第一类子文件分片的文本转换为数值对象,并对数值对象进行汇总处理,汇总处理的结果用于对文件进行校验入库。通过本公开实施例,提高了文件数据录入的可靠性和完整性,也提升了文件数据录入的效率。也提升了文件数据录入的效率。也提升了文件数据录入的效率。

【技术实现步骤摘要】
文件数据录入数据库的方法、装置、电子设备和可读介质


[0001]本公开涉及数据读写
,具体而言,涉及一种文件数据录入数据库的方法、装置、电子设备和可读介质。

技术介绍

[0002]目前,对账文件的解析入库方式通常是将文件一次读取到内存中,循环处理每一行,然后将处理完的文件数据循环写入到数据库。
[0003]在相关技术中,上述写入方案对于小文件处理起来比较合适,不会对内存产生较大的存储压力。
[0004]但是,随着数据业务的增长,通常无法预估对账文件的大小,如果是一个超大文件一次加载到内存,轻则导致系统假死,甚至导致系统内存溢出,对数据库系统的稳定性造成了不良影响。
[0005]另外,在文件数据入库时,如果是一次写入的话,会造成写入文件的事务超长,极有可能导致写入失败,而如果采用分批事务的方式写入文件,则可能会因为网络抖动、服务器宕机或数据库超时导致写入的文件数据不完整。
[0006]需要说明的是,在上述
技术介绍
部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

技术实现思路

[0007]本公开的目的在于提供一种文件数据录入数据库的方法、装置、电子设备和可读介质,用于至少在一定程度上克服由于相关技术的限制和缺陷而导致的文件数据写入可靠性差的问题。
[0008]根据本公开实施例的第一方面,提供一种文件数据录入数据库的方法,包括:确定待录入的文件的数据量;根据所述数据量确定所述文件是否为第一类文件;若确定所述文件为所述第一类文件,则对所述第一类文件进行拆分,以得到第一类子文件分片;对所述第一类子文件分片进行逐行录入并记录所述第一类子文件分片的恢复点;将已录入的第一类子文件分片的文本转换为数值对象,并对所述数值对象进行汇总处理,所述汇总处理的结果用于对所述文件进行校验入库。
[0009]在本公开的一种示例性实施例中,根据所述数据量确定所述文件是否为第一类文件包括:根据所述文件的属性信息确定对应的预设数据量;判断所述数据量是否大于或等于所述预设数据量;若判定所述数据量大于或等于所述预设数据量,则确定所述文件为所述第一类文件。
[0010]在本公开的一种示例性实施例中,若确定所述文件为所述第一类文件,则对所述第一类文件进行拆分,以得到第一类子文件分片包括:若确定所述文件为第一类文件,则按照第一预设行数对所述第一类文件进行拆分;将拆分后的分片发送至待录入文件的队列中,录入所述队列的分片记作第一类子文件分片;记录任一所述第一类文件的第一类子文
件分片的总数量。
[0011]在本公开的一种示例性实施例中,还包括:确定任一所述第一类文件的第一类子文件分片的录入数量;判断所述录入数量是否达到所述总数量;若判定所述录入数量达到所述总数量,则确定所述第一类文件已完成录入。
[0012]在本公开的一种示例性实施例中,对所述第一类子文件分片进行逐行录入并记录所述第一类子文件分片的恢复点包括:确定所述第一类文件对应的哈希值;根据所述哈希值对所述第一类子文件分片进行逐行录入;根据所述哈希值和所述第一类子文件分片的标识信息确定所述恢复点,所述恢复点用于指示已录入的第一类子文件分片的标识和已录入的第一类子文件分片的行编码。
[0013]在本公开的一种示例性实施例中,还包括:计算所述待写入的第一类文件的哈希值;根据所述恢复点确定已录入的所述第一类文件的哈希值;判断所述待写入的第一类文件的哈希值与所述已录入的所述第一类文件的哈希值是否相同;若确定所述待写入的第一类文件的哈希值与所述已录入的所述第一类文件的哈希值相同,则确定不对所述待写入的第一类文件进行录入。
[0014]在本公开的一种示例性实施例中,还包括:接收到对所述第一类文件的重试录入指令;根据所述重试录入指令确定所述第一类文件的恢复点;根据所述恢复点确定所述第一类文件中已录入的第一类子文件分片的标识和已录入的第一类子文件分片的行编码;根据所述已录入的第一类子文件分片的标识和已录入的第一类子文件分片的行编码继续对未录入的所述第一类子文件分片进行逐行录入。
[0015]根据本公开实施例的第二方面,提供一种文件数据录入数据库的装置,包括:确定模块,用于确定待录入的文件的数据量;所述确定模块还用于,根据所述数据量确定所述文件是否为第一类文件;所述确定模块还用于,若确定所述文件为所述第一类文件,则对所述第一类文件进行拆分,以得到第一类子文件分片;录入模块,用于对所述第一类子文件分片进行逐行录入并记录所述第一类子文件分片的恢复点;汇总模块,用于将已录入的第一类子文件分片的文本转换为数值对象,并对所述数值对象进行汇总处理,所述汇总处理的结果用于对所述文件进行校验入库。
[0016]根据本公开的第三方面,提供一种电子设备,包括:存储器;以及耦合到所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如上述任意一项所述的方法。
[0017]根据本公开的第四方面,提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现如上述任意一项所述的文件数据录入数据库的方法。
[0018]本公开实施例,通过对待录入的文件的数据量进行判断以确定第一类文件,对第一类文件进行拆分,并对拆分后得到的第一类子文件分片进行逐行录入,降低了录入文件的内存压力,并且通过确定已录入的第一类子文件分片的恢复点,提高了文件的录入效率和可靠性,降低了重复录入文件的概率,最后通过对已录入的第一类子文件分片进行数值对象的转换和汇总处理,提升了已录入文件的直观性。
[0019]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0020]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0021]图1是本公开的一个示例性实施例中文件数据录入数据库的方法的流程图;
[0022]图2是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0023]图3是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0024]图4是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0025]图5是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0026]图6是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0027]图7是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0028]图8是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0029]图9是本公开的另一个示例性实施例中文件数据录入数据库的方法的流程图;
[0本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种文件数据录入数据库的方法,其特征在于,包括:确定待录入的文件的数据量;根据所述数据量确定所述文件是否为第一类文件;若确定所述文件为所述第一类文件,则对所述第一类文件进行拆分,以得到第一类子文件分片;对所述第一类子文件分片进行逐行录入并记录所述第一类子文件分片的恢复点;将已录入的第一类子文件分片的文本转换为数值对象,并对所述数值对象进行汇总处理,所述汇总处理的结果用于对所述文件进行校验入库。2.如权利要求1所述的文件数据录入数据库的方法,其特征在于,根据所述数据量确定所述文件是否为第一类文件包括:根据所述文件的属性信息确定对应的预设数据量;判断所述数据量是否大于或等于所述预设数据量;若判定所述数据量大于或等于所述预设数据量,则确定所述文件为所述第一类文件。3.如权利要求1所述的文件数据录入数据库的方法,其特征在于,若确定所述文件为所述第一类文件,则对所述第一类文件进行拆分,以得到第一类子文件分片包括:若确定所述文件为第一类文件,则按照第一预设行数对所述第一类文件进行拆分;将拆分后的分片发送至待录入文件的队列中,录入所述队列的分片记作第一类子文件分片;记录任一所述第一类文件的第一类子文件分片的总数量。4.如权利要求1所述的文件数据录入数据库的方法,其特征在于,还包括:确定任一所述第一类文件的第一类子文件分片的录入数量;判断所述录入数量是否达到所述总数量;若判定所述录入数量达到所述总数量,则确定所述第一类文件已完成录入。5.如权利要求1所述的文件数据录入数据库的方法,其特征在于,对所述第一类子文件分片进行逐行录入并记录所述第一类子文件分片的恢复点包括:确定所述第一类文件对应的哈希值;根据所述哈希值对所述第一类子文件分片进行逐行录入;根据所述哈希值和所述第一类子文件分片的标识信息确定所述恢复点,所述恢复点用于指示已录入的第一类子文件分片的标识和已录入的第一类子文件分片的行编...

【专利技术属性】
技术研发人员:冯钰栋刘剑秋
申请(专利权)人:京东科技控股股份有限公司
类型:发明
国别省市:

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

1