一种文件处理方法和装置的制造方法

文档序号:10624794阅读:162来源:国知局
一种文件处理方法和装置的制造方法
【专利摘要】本申请实施例提供了一种文件处理方法及装置。该文件处理方法,包括:输出校验失败的数据;接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据;当所述第一文件的导入时刻到来时,对所述第一文件进行导入;在所述第一文件导入成功时,将所述第一文件中的数据写入数据库。本申请实施例通过对数据校验失败的文件在再次导入时进行导入控制,从而可以将系统需要导入的文件进行划分,并可以按照系统自身状况分阶段完成文件导入,从而减少了系统同时处理文件导入的压力,进而减小了对系统性能的影响。
【专利说明】
一种文件处理方法和装置
技术领域
[0001]本申请涉及数据处理技术领域,特别是涉及一种文件处理方法和一种文件处理装置。
【背景技术】
[0002]一些批量的规则配置类或者业务申请需要通过文件导入(比如excel和txt文件)的方式实现批量处理。
[0003]现有常规的处理流程为:业务操作人员在功能入口导入excel文件;系统逐条解析文件中的数据,并且按照系统中预先设定的业务规则对数据的合法性和合理性进行校验;如果数据校验通过,系统直接调用数据库,进行数据写入操作;如果数据校验失败,则系统会在用户导入的页面中回显校验失败的数据,业务操作人员需要在修改校验失败的数据后再重新进行相应excel文件的导入。
[0004]在涉及到批量导入操作的场景时,数据量一般都很大,量级在千以上,系统需要在短期内对大量导入的文件进行处理,按照上述处理方法,对于校验失败的数据在修改后也需要重新进行文件导入,系统同时处理首次导入及修改后导入的文件会加剧系统的文件处理压力,而该压力会对系统的性能造成影响,很容易带来系统超时等问题,极端的情况下,还会引起系统的宕机。
[0005]因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何减少文件的并发导入对系统性能造成的影响。

【发明内容】

[0006]本申请实施例所要解决的技术问题是提供一种文件处理方法,能够减少文件的并发导入对系统性能造成的影响。
[0007]相应的,本申请实施例还提供了一种文件处理装置,用以保证上述方法的实现及应用。
[0008]为了解决上述问题,本申请公开了一种文件处理方法,包括:
[0009]输出校验失败的数据;
[0010]接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据;
[0011]当所述第一文件的导入时刻到来时,对所述第一文件进行导入;
[0012]在所述第一文件导入成功时,将所述第一文件中的数据写入数据库。
[0013]进一步,所述输出校验失败的数据,包括:
[0014]筛选出校验失败的数据;
[0015]将所述校验失败的数据生成指定格式的文件;
[0016]输出生成的所述文件。
[0017]进一步,所述文件中还包括所述校验失败数据的校验失败原因。
[0018]进一步,所述方法还包括:
[0019]将所述校验失败的数据写入所述数据库的指定位置。
[0020]进一步,所述方法还包括:
[0021]在所述第一文件导入成功时,将所述数据库指定位置处的所述校验失败的数据删除。
[0022]进一步,所述接收对第一文件的导入请求,包括:
[0023]接收对指定文件批量导入的请求,所述指定文件中包含所述第一文件。
[0024]进一步,所述方法还包括:
[0025]反馈所述第一文件导入成功的信息。
[0026]本申请实施例还公开了一种文件处理装置,包括:
[0027]数据输出单元,被配置为输出校验失败的数据;
[0028]请求接收单元,被配置为接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据;
[0029]文件导入单元,被配置为当所述第一文件的导入时刻到来时,对所述第一文件进行导入;
[0030]数据写入单元,被配置为所述第一文件导入成功时,将所述第一文件中的数据写入数据库。
[0031]进一步,所述数据输出单元包括:
[0032]筛选子单元,被配置为筛选出校验失败的数据;
[0033]生成子单元,被配置为将所述校验失败的数据生成指定格式的文件;
[0034]输出子单元,被配置为输出生成的所述文件。
[0035]进一步,所述装置还包括:
[0036]记录单元,被配置为将所述校验失败的数据写入所述数据库的指定位置。
[0037]进一步,所述装置还包括:
[0038]记录删除单元,被配置为在所述第一文件导入成功时,将所述数据库指定位置处的所述校验失败的数据删除。
[0039]进一步,所述请求接收单元,具体被配置为接收对指定文件批量导入的请求,所述指定文件中包含所述第一文件。
[0040]进一步,所述装置还包括:
[0041]信息反馈单元,被配置为反馈所述第一文件导入成功的信息。
[0042]与现有技术相比,本申请实施例包括以下优点:
[0043]本申请实施例通过对数据校验失败的文件在再次导入时进行导入控制,从而可以将系统需要导入的文件进行划分,并可以按照系统自身状况分阶段完成文件导入,从而减少了系统同时处理文件导入的压力,进而减小了对系统性能的影响。
【附图说明】
[0044]图1是本申请的一种文件处理方法实施例的步骤流程图;
[0045]图2是本申请的另一种文件处理方法实施例的步骤流程图;
[0046]图3是本申请实施例中一种系统输出校验失败的数据的步骤流程图;
[0047]图4是本申请的一种文件处理装置实施例的结构框图;
[0048]图5是本申请实施例中一种数据输出单元的结构框图;
[0049]图6是本申请的另一种文件处理装置实施例的结构框图。
【具体实施方式】
[0050]为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本申请作进一步详细的说明。
[0051 ] 参照图1,示出了本申请的一种文件处理方法实施例的步骤流程图,具体可以包括如下步骤:
[0052]步骤101,输出校验失败的数据。
[0053]本步骤之前,系统首先对用户通过操作平台导入的第一文件进行数据解析及数据合法性和合理性的校验,在校验失败后向操作平台输出校验失败的数据。
[0054]用户在针对校验失败的数据进行修改后,再次通过操作平台请求导入修改数据后的第一文件。
[0055]步骤102,接收对第一文件的导入请求,该第一文件中包含针对校验失败的数据修改后的数据。
[0056]用户可以对多个文件进行数据修改后请求批量文件的导入,该批量文件中包含该第一文件;也可以是只修改第一文件中校验失败的数据后即针对该第一文件发起导入请求。
[0057]系统接收到文件导入请求后,执行步骤103。
[0058]步骤103,当第一文件的导入时刻到来时,对第一文件进行导入。
[0059]本申请实施例中,系统在接收到操作平台发送的文件导入的请求后,不需要立刻处理,而是通过后台设定的定时任务触发文件的导入。
[0060]系统首先根据该文件导入请求判断该请求导入的文件是否为之前数据校验失败的文件或再次导入的文件,该判断可以是根据文件导入的请求获知文件的标识信息,例如文件编号等,然后通过查询系统已接收到的文件导入请求或文件数据的校验记录等获知该文件是否已经在先导入过,其中,用户只是修改文件中校验失败的数据,对于文件的相关属性如文件标识编号等不会改动。当然也可以通过其它方式判断,例如在请求中包含用于标示该文件为数据修改后再次导入的相关信息等。
[0061]若是系统判断为在先导入过的文件,则确定该需要导入的文件是之前数据校验失败的文件,若否,则该需要导入的文件为首次请求导入的文件。对于首次请求导入的文件,系统可以直接进行文件的解析和数据校验等正常流程。对于之前数据校验失败的文件,系统可以设置文件导入的队列,每接收到之前数据校验失败的文件的再次导入请求,即将该文件加入文件导入队列,系统同时设置定时器或监测器,对队列中的文件进行定时或固定间隔的触发导入,或者监测到系统空闲或系统的文件处理压力低于阈值时触发导入队列中的文件。该系统文件处理压力的阈值可以根据系统性能设置。
[0062]本步骤中,系统在确定第一文件是之前数据校验失败的文件后,将该第一文件加入导入队列,通过定时器定时或监测器监控到达该第一文件的导入时刻时,再执行对该第一文件的导入。
[0063]步骤104,第一文件导入成功时,将第一文件中的数据写入数据库。
[0064]修改数据后的第一文件再次经过文件解析和数据验证后,当数据验证通过,第一文件导入成功时,系统即可将第一文件中的数据写入数据库中。
[0065]本申请实施例通过对数据校验失败的文件在再次导入时进行导入控制,从而可以将系统需要导入的文件进行划分,并可以按照系统自身状况分阶段完成文件导入,从而减少了系统同时处理文件导入的压力,进而减小了对系统性能的影响。
[0066]参照图2,示出了本申请的另一种文件处理方法实施例的步骤流程图,具体可以包括如下步骤:
[0067]步骤201,系统向操作平台输出校验失败的数据。
[0068]在本步骤之前,用户首先将第一文件中的数据填充完整,该第一文件具体可以是EXCEL文件,然后在操作平台上选择导入的入口,导入该第一文件。系统接收到该第一文件后,全量的解析该文件中的明细数据,并且按照系统中预先设定的业务规则对数据的合法性和合理性进行校验。如果数据校验通过,则系统直接调用数据库,进行数据写入操作,并提示用户第一文件导入成功。
[0069]如果数据校验失败,则在本实施例中,系统会向操作平台输出校验失败的数据,如图3所示,具体可以包括:
[0070]步骤301,系统筛选出校验失败的数据。
[0071 ]系统首先在校验的该文件的所有数据中筛选提取出校验失败的数据。
[0072]步骤302,将校验失败的数据生成指定格式的文件。
[0073]系统将上述文件中校验失败的数据生成指定格式的文件,该指定格式具体可以是EXCEL或TXT等格式。
[0074]步骤303,系统向操作平台输出生成的文件。
[0075]系统将校验失败的数据通过指定格式的文件在操作平台的页面上进行显示。该文件中还可以包括校验失败数据的校验失败原因,具体可以在备注栏中标注每条数据校验失败的原因,以便于用户查看。
[0076]本实施例中,通过将校验失败的数据生成指定格式的文件并输出,可以清晰明了的向用户展示校验失败的数据条目,便于用户查看和处理,提升用户体验,提高业务操作效率。用户可以选择修改数据后重新导入修改后的第一文件,也可以选择将包含这些数据的文件记录下来,后续修改后再重新触发文件导入。
[0077]本实施例中,系统除了向操作平台发送校验失败的数据之外,还可以进一步执行步骤202。
[0078]步骤202,系统将校验失败的数据写入数据库的指定位置。
[0079]系统还可以进一步将校验失败的数据也写入数据库,具体可以写入数据库中的临时表中,以与校验成功的数据进行区分。通过建立临时表来记录校验失败的数据可以便于用户或系统查询。
[0080]在系统向操作平台反馈校验失败的数据后,执行步骤203。
[0081]步骤203,用户修改校验失败的数据后通过操作平台向系统发送对第一文件的导入请求,该第一文件中包含针对校验失败的数据修改后的数据。
[0082]本实施例中,该操作平台上可以增设有异常文件管理平台,用户可以按照时间等查询条件查询到校验失败的数据。
[0083]用户修改校验失败的数据后,可以通过该操作平台选择向系统发送对第一文件的导入请求,该第一文件即针对上述校验失败的数据修改后的数据所对应的文件,用户每修改数据获得对应文件后执行一次文件导入;也可以先不对修改数据后获得的文件进行导入,而是在获得多个文件后,选择批量导入这些修改数据后的文件,其中包含有该第一文件。
[0084]步骤204,当第一文件的导入时刻到来时,系统对第一文件进行导入。
[0085]本实施例中,系统在接收到操作平台发送的第一文件导入的请求后,不需要立刻处理,而是通过后台设定的定时任务触发文件的导入。
[0086]系统首先判断接收到的文件导入请求中,该需要导入的文件是否为之前数据校验失败的文件,该判断可以是根据文件导入的请求获知文件的标识信息,例如文件编号等,然后通过查询系统已接收到的文件导入请求或文件数据的校验记录等获知该文件是否已经在先导入过,若是,则确定该需要导入的文件是之前数据校验失败的文件,若否,则该需要导入的文件为首次请求导入的文件。对于首次请求导入的文件,系统可以直接进行文件的解析和数据校验等正常流程。对于之前数据校验失败的文件,系统可以设置文件导入的队列,每接收到之前数据校验失败的文件的再次导入请求,即将该文件加入文件导入队列,系统同时设置定时器或监测器,对队列中的文件进行定时或固定间隔的触发导入,或者监测到系统空闲或系统的文件处理压力低于阈值时触发导入队列中的文件。
[0087]通过该设置,可以在导入的文件中分离出由于数据校验失败而再次导入的文件,从而减少系统同时处理文件导入的压力,减小对系统性能的影响。
[0088]本步骤中,当第一文件的导入时刻到来时,再触发对该第一文件的导入。用户不需要在操作平台页面上等待系统的响应,只需过后查询导入状态即可。
[0089]步骤205,第一文件导入成功时,系统将第一文件中的数据写入数据库。
[0090]修改数据后的第一文件再次经过文件解析和数据验证后,当数据验证通过,第一文件导入成功时,系统即可将第一文件中的数据写入数据库中。同时系统还可以执行步骤206。
[0091]步骤206,在第一文件导入成功时,系统将数据库指定位置处的校验失败的数据删除。
[0092]第一文件导入成功后,系统即可将步骤202中数据库临时表中与第一文件对应的校验失败的数据删除。
[0093]步骤207,系统向操作平台反馈第一文件导入成功的信息。
[0094]系统还可以进一步向操作平台反馈该第一文件导入成功的信息,以便于操作平台及时将异常文件管理平台中第一文件的状态更新为导入成功,同时便于用户查询。
[0095]以上步骤顺序可以根据需要进行调整,此处仅为举例。
[0096]需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
[0097]参照图4,示出了本申请一种文件处理装置实施例的结构框图,具体可以包括如下单元:
[0098]数据输出单元401,被配置为输出校验失败的数据。
[0099]请求接收单元402,被配置为接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据。
[0100]文件导入单元403,被配置为当所述第一文件的导入时刻到来时,对所述第一文件进行导入。
[0101]数据写入单元404,被配置为所述第一文件导入成功时,将所述第一文件中的数据写入数据库。
[0102]本申请实施例通过上述单元对数据校验失败的文件在再次导入时进行导入控制,从而可以将系统需要导入的文件进行划分,并可以按照系统自身状况分阶段完成文件导入,从而减少了系统同时处理文件导入的压力,进而减小了对系统性能的影响。
[0103]在另一实施例中,如图5所示,该数据输出单元401进一步包括:
[0104]筛选子单元501,被配置为筛选出校验失败的数据。
[0105]生成子单元502,被配置为将所述校验失败的数据生成指定格式的文件。
[0106]输出子单元503,被配置为输出生成的所述文件。
[0107]在另一实施例中,如图6所示,该装置除了包括数据输出单元401,请求接收单元402,文件导入单元403,数据写入单元404之外,还可以包括:
[0108]记录单元601,被配置为将所述校验失败的数据写入所述数据库的指定位置。
[0109]记录删除单元602,被配置为在所述第一文件导入成功时,将所述数据库指定位置处的所述校验失败的数据删除。
[0110]信息反馈单元603,被配置为反馈所述第一文件导入成功的信息。
[0111]其中,上述请求接收单元402,具体可以被配置为接收对指定文件批量导入的请求,所述指定文件中包含所述第一文件。
[0112]本申请实施例还提供了一种电子设备,包括数据总线,存储器、收发器和处理器,其中,存储器中存储有一段运行程序代码;
[0113]收发器,用于输出校验失败的数据;接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据;
[0114]处理器通过数据总线获取存储器中的程序代码,并执行以下步骤:
[0115]当所述第一文件的导入时刻到来时,对所述第一文件进行导入;
[0116]在所述第一文件导入成功时,将所述第一文件中的数据写入数据库。
[0117]对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0118]本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0119]本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0120]在一个典型的配置中,所述计算机设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(R0M)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非持续性的电脑可读媒体(transitory media),如调制的数据信号和载波。
[0121]本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0122]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0123]这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0124]尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
[0125]最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0126]以上对本申请所提供的一种文件处理方法和一种文件处理装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
【主权项】
1.一种文件处理方法,其特征在于,包括: 输出校验失败的数据; 接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据; 当所述第一文件的导入时刻到来时,对所述第一文件进行导入; 在所述第一文件导入成功时,将所述第一文件中的数据写入数据库。2.根据权利要求1所述的方法,其特征在于,所述输出校验失败的数据,包括: 筛选出校验失败的数据; 将所述校验失败的数据生成指定格式的文件; 输出生成的所述文件。3.根据权利要求2所述的方法,其特征在于,所述文件中还包括所述校验失败数据的校验失败原因。4.根据权利要求1至3中任意一项所述的方法,其特征在于,所述方法还包括: 将所述校验失败的数据写入所述数据库的指定位置。5.根据权利要求4所述的方法,其特征在于,所述方法还包括: 在所述第一文件导入成功时,将所述数据库指定位置处的所述校验失败的数据删除。6.根据权利要求1至3中任意一项所述的方法,其特征在于,所述接收对第一文件的导入请求,包括: 接收对指定文件批量导入的请求,所述指定文件中包含所述第一文件。7.根据权利要求1至3中任意一项所述的方法,其特征在于,所述方法还包括: 反馈所述第一文件导入成功的信息。8.一种文件处理装置,其特征在于,包括: 数据输出单元,被配置为输出校验失败的数据; 请求接收单元,被配置为接收对第一文件的导入请求,所述第一文件中包含针对所述校验失败的数据修改后的数据; 文件导入单元,被配置为当所述第一文件的导入时刻到来时,对所述第一文件进行导入; 数据写入单元,被配置为所述第一文件导入成功时,将所述第一文件中的数据写入数据库。9.根据权利要求8所述的装置,其特征在于,所述数据输出单元包括: 筛选子单元,被配置为筛选出校验失败的数据; 生成子单元,被配置为将所述校验失败的数据生成指定格式的文件; 输出子单元,被配置为输出生成的所述文件。10.根据权利要求8或9所述的装置,其特征在于,所述装置还包括: 记录单元,被配置为将所述校验失败的数据写入所述数据库的指定位置。11.根据权利要求10所述的装置,其特征在于,所述装置还包括: 记录删除单元,被配置为在所述第一文件导入成功时,将所述数据库指定位置处的所述校验失败的数据删除。12.根据权利要求8或9所述的装置,其特征在于, 所述请求接收单元,具体被配置为接收对指定文件批量导入的请求,所述指定文件中包含所述第一文件。13.根据权利要求8或9所述的装置,其特征在于,所述装置还包括: 信息反馈单元,被配置为反馈所述第一文件导入成功的信息。
【文档编号】G06F17/30GK105989021SQ201510048266
【公开日】2016年10月5日
【申请日】2015年1月29日
【发明人】张迪
【申请人】阿里巴巴集团控股有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1