数据导出方法、装置、计算机设备和可读存储介质制造方法及图纸

技术编号:28059694 阅读:12 留言:0更新日期:2021-04-14 13:35
本申请涉及数据导出方法、装置、计算机设备和可读存储介质,其中,数据导出方法包括:获取服务器中待导出文件的读取数据,根据所述待导出文件的读取数据,确定所述读取数据的数据量,若所述数据量大于所述导出上限则将所述读取数据进行拆分,并通过多次导出所述读取数据,完成所述待导出文件的导出,反之,通过单次导出所述读取数据,完成所述待导出文件的导出,解决了相关技术中,采用一次导出、持续等待的大规模数据导出方式,存在占用内存资源过大甚至服务器崩溃的问题,降低了大规模数据导出时所占用的服务器的内存资源,避免服务器崩溃的问题。的问题。的问题。

【技术实现步骤摘要】
数据导出方法、装置、计算机设备和可读存储介质


[0001]本申请涉及数据处理
,特别是涉及数据导出方法、装置、计算机设备和可读存储介质。

技术介绍

[0002]在很多应用场景下,需要将信息系统后台数据库中的数据导出为EXCEL表格。随着信息化大数据的发展,在数据导出中,经常需要处理大规模的数据,例如,对于服装定制行业,厂商定期需要将一年或者一季度的订单量进行导出。
[0003]在相关技术中,处理大规模数据导出业务,一般采用“一次导出、持续等待”,该导出方式占用内存资源过大,导致系统性能下降,且在大规模数据导出的过程中,存在导出时间很久甚至服务器崩溃的情况。
[0004]目前针对相关技术中,采用一次导出、持续等待的大规模数据导出方式,存在占用内存资源过大,甚至服务器崩溃的问题,尚未提出有效的解决方案。

技术实现思路

[0005]本申请实施例提供了一种数据导出方法、装置、计算机设备和可读存储介质,解决了相关技术中,采用一次导出、持续等待的大规模数据导出方式,存在占用内存资源过大甚至服务器崩溃的问题。
[0006]第一方面,本申请实施例提供了一种数据导出方法,应用于服务器,所述方法包括:
[0007]获取所述服务器中待导出文件的读取数据;
[0008]根据所述待导出文件的读取数据,确定所述读取数据的数据量;
[0009]若所述数据量大于所述导出上限则将所述读取数据进行拆分,并通过多次导出所述读取数据,完成所述待导出文件的导出,反之,通过单次导出所述读取数据,完成所述待导出文件的导出。
[0010]在其中一些实施例中,获取待导出文件的读取数据包括:
[0011]获取待导出文件的存储属性,所述存储属性至少包括存储数据库;
[0012]根据所述存储属性,从第一数据库中调取与所述存储属性相匹配的文件读取类型,其中,所述第一数据库中至少存储有两种不同的文件读取类型;
[0013]根据与所述待导出文件的存储属性相匹配的文件读取类型,对所述待导出文件进行读取,生成所述待导出文件的读取数据。
[0014]在其中一些实施例中,所述待导出文件的存储数据库至少为以下类型之一:elasticsearch数据库、mysql数据库。
[0015]在其中一些实施例中,所述第一数据库中包括快照读取的文件读取类型和拆分读取的文件读取类型;若所述待导出文件的存储数据库为elasticsearch数据库,采用快照读取的文件读取类型对所述待导出文件进行读取,若所述待导出文件的存储数据库为mysql
数据库,采用拆分读取的文件读取类型对所述待导出文件进行读取。
[0016]在其中一些实施例中,若所述待导出文件的存储数据库为elasticsearch数据库,则根据与所述待导出文件的存储属性相匹配的文件读取类型,对所述待导出文件进行读取,生成所述待导出文件的读取数据包括:
[0017]设置基于所述elasticsearch数据库的查询参数;
[0018]根据所述查询参数,批量查询所述elasticsearch数据库中的待导出文件;
[0019]将查询的待导出文件保存至快照副本中,生成所述待导出文件的读取数据。
[0020]在其中一些实施例中,根据所述查询参数,批量查询所述elasticsearch数据库中的待导出文件包括:
[0021]根据所述查询参数,通过游标查询的方式查询所述elasticsearch数据库中的待导出文件。
[0022]在其中一些实施例中,若所述待导出文件的存储数据库为mysql数据库,则根据与所述待导出文件的存储属性相匹配的文件读取类型,对所述待导出文件进行读取,生成所述待导出文件的读取数据包括:
[0023]获取所述mysql数据库中待导出文件的存储数量;
[0024]根据所述存储数量,确定所述待导出文件的读取次数和读取单量;
[0025]根据所述读取次数和所述读取单量,对所述待导出文件进行读取,生成所述待导出文件的读取数据。
[0026]第二方面,本申请实施例提供了一种数据导出装置,所述数据导出装置包括:第一获取模块、第二获取模块和数据导出模块;
[0027]所述第一获取模块,用于获取所述服务器中待导出文件的读取数据;
[0028]所述第二获取模块,用于根据所述待导出文件的读取数据,确定所述读取数据的数据量;
[0029]所述数据导出模块,用于若所述数据量大于所述导出上限则将所述读取数据进行拆分,并通过多次导出所述读取数据,完成所述待导出文件的导出,反之,通过单次导出所述读取数据,完成所述待导出文件的导出。
[0030]第三方面,本申请实施例提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的数据导出方法。
[0031]第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的数据导出方法。
[0032]相比于相关技术,本申请提供的数据导出方法、装置、计算机设备和可读存储介质,通过获取待导出文件的读取数据,根据所述待导出文件的读取数据,确定所述读取数据的数据量,若所述数据量大于所述导出上限则将所述读取数据进行拆分,并通过多次导出所述读取数据,完成所述待导出文件的导出,反之,通过单次导出所述读取数据,完成所述待导出文件的导出,解决了相关技术中,采用一次导出、持续等待的大规模数据导出方式,存在占用内存资源过大甚至服务器崩溃的问题,降低了大规模数据导出时所占用的服务器的内存资源,避免服务器崩溃的问题。
[0033]本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他
特征、目的和优点更加简明易懂。
附图说明
[0034]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0035]图1是根据本申请实施例的数据导出方法的流程图;
[0036]图2是根据本申请实施例的获取待导出文件的读取数据的方法流程图一;
[0037]图3是根据本申请实施例的获取待导出文件的读取数据的方法流程图二;
[0038]图4是根据本申请实施例的获取待导出文件的读取数据的方法流程图三;
[0039]图5是根据本申请优选实施例的数据导出方法的流程图;
[0040]图6是根据本申请实施例的数据导出装置的结构框图;
[0041]图7是根据本申请实施例的计算机设备的内部结构示意图。
具体实施方式
[0042]为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据导出方法,其特征在于,应用于服务器,所述方法包括:获取所述服务器中待导出文件的读取数据;根据所述待导出文件的读取数据,确定所述读取数据的数据量;若所述数据量大于所述导出上限则将所述读取数据进行拆分,并通过多次导出所述读取数据,完成所述待导出文件的导出,反之,通过单次导出所述读取数据,完成所述待导出文件的导出。2.根据权利要求1所述的数据导出方法,其特征在于,获取待导出文件的读取数据包括:获取待导出文件的存储属性,所述存储属性至少包括存储数据库;根据所述存储属性,从第一数据库中调取与所述存储属性相匹配的文件读取类型,其中,所述第一数据库中至少存储有两种不同的文件读取类型;根据与所述待导出文件的存储属性相匹配的文件读取类型,对所述待导出文件进行读取,生成所述待导出文件的读取数据。3.根据权利要求2所述的数据导出方法,其特征在于,所述待导出文件的存储数据库至少为以下类型之一:elasticsearch数据库、mysql数据库。4.根据权利要求3所述的数据导出方法,其特征在于,所述第一数据库中包括快照读取的文件读取类型和拆分读取的文件读取类型;若所述待导出文件的存储数据库为elasticsearch数据库,采用快照读取的文件读取类型对所述待导出文件进行读取,若所述待导出文件的存储数据库为mysql数据库,采用拆分读取的文件读取类型对所述待导出文件进行读取。5.根据权利要求4所述的数据导出方法,其特征在于,若所述待导出文件的存储数据库为elasticsearch数据库,则根据与所述待导出文件的存储属性相匹配的文件读取类型,对所述待导出文件进行读取,生成所述待导出文件的读取数据包括:设置基于所述elasticsearch数据库的查询参数;根据所述查询参数,批量查询所述elastics...

【专利技术属性】
技术研发人员:朱兵兵杨阳钟文宇
申请(专利权)人:杭州贝嘟科技有限公司
类型:发明
国别省市:

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

1