CN114185895A - 数据导入导出方法、装置、电子设备及存储介质 - Google Patents

数据导入导出方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN114185895A
CN114185895A CN202111525919.9A CN202111525919A CN114185895A CN 114185895 A CN114185895 A CN 114185895A CN 202111525919 A CN202111525919 A CN 202111525919A CN 114185895 A CN114185895 A CN 114185895A
Authority
CN
China
Prior art keywords
import
data
preset
export
hash value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111525919.9A
Other languages
English (en)
Inventor
赵传昊
袁林
葛弘康
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ping An Property and Casualty Insurance Company of China Ltd
Original Assignee
Ping An Property and Casualty Insurance Company of China Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ping An Property and Casualty Insurance Company of China Ltd filed Critical Ping An Property and Casualty Insurance Company of China Ltd
Priority to CN202111525919.9A priority Critical patent/CN114185895A/zh
Publication of CN114185895A publication Critical patent/CN114185895A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及数据处理技术,揭露一种数据导入导出方法,包括:对预设服务器节点集中的服务器节点进行筛选得到目标服务器节点;当任务类型为导入任务类型,将导入Excel表中的数据分次写入目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有导入缓存数据依次导入预设***;当任务类型为导出任务类型,将根据导出任务关键词在预设的数据库中查询的查询结果分次读取至目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将导出缓存数据依次写入预设Excel表。本发明还涉及一种区块链技术,所述导入Excel表可以存储在区块链节点中。本发明还提出一种数据导入导出装置、设备以及介质。本发明可以提高数据导入导出的效率。

Description

数据导入导出方法、装置、电子设备及存储介质
技术领域
本发明涉及数据处理技术,尤其涉及一种数据导入导出方法、装置、电子设备及存储介质。
背景技术
随着大数据时代的来临,数据量日益增多,越来越多的业务场景都涉及到了数据的导入及导出功能,因为导入导出可以通过Excel的方式将数据更好的呈现给用户,显然界面更佳的友好,操作也更加的方便,而且也更利于报表的统计,然而随着数据量的日益增多,对服务器的压力也越来越大,有时候一次导入导出的数据过多还会超出服务器的缓存能力,从而导致服务器宕机任务无法继续,导致数据导入导出的效率较低。
发明内容
本发明提供一种数据导入导出方法、装置、电子设备及存储介质,其主要目的在于提高了数据导入导出的效率。
接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;
对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
判断所述任务类型是否为导入任务类型;
当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;
当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
可选地,所述对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点,包括:
对每个所述服务器节点的地址进行哈希计算,得到对应的节点哈希值;汇总全部所述节点哈希值,得到节点哈希值集;
获取所述客户端的地址信息,将所述地址信息进行哈希计算,得到客户端哈希值;
根据所述客户端哈希值及所述节点哈希值集对所述服务器节点集中的服务器节点进行哈希值匹配筛选,得到目标服务器节点。
可选地,所述根据所述客户端哈希值及所述节点哈希值集对所述服务器节点集中的服务器节点进行哈希值匹配筛选,得到目标服务器节点,包括:
利用预设的数值区间构建哈希值环;
将所述客户端哈希值与所述节点哈希值集中的每个节点哈希值均映射为所述哈希值环上对应的点;
筛选所述哈希值环上所述客户端哈希值对应的点在预设方向上的相邻点;
将所述相邻点对应的节点哈希值确定为目标节点哈希值;
选择所述目标节点哈希值对应的服务器节点为目标服务器节点。
可选地,所述将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***,包括:
步骤A:根据所述第一预设行数构建第一行编号区间;
步骤B:将所述导入Excel表中所述第一行编号区间内对应行编号的行数据写入所述预设缓存区域,得到对应的导入缓存数据;
步骤C:将所述导入缓存数据导入预设***后,删除所述预设缓存区域中对应的导入缓存数据,更新所述第一行编号区间,并判断更新后的第一行编号区间左端点是否大于所述导入Excel表中最后一行编号,当更新后的第一行编号区间左端点大于所述导入Excel表中最后一行编号,则向所述客户端发送任务成功通知,当更新后的第一行编号区间左端点不大于所述导入Excel表中最后一行编号,则返回所述步骤B。
可选地,所述将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表,包括:
步骤a:根据预设第二行数构建第二行编号区间;
步骤b:将所述查询结果中第二行编号区间内对应数据编号的数据写入预设缓存区域,得到对应的导出缓存数据;
步骤c:将所述导入缓存数据写入预设空白Excel表,得到导出Excel表;
步骤d:将所述缓存数据写入预设空白Excel表后,删除所述预设缓存区域中对应的导出缓存数据,更新所述第二行编号区间,并判断更新后的第二行编号区间的左端点是否大于所述查询结果中数据的数量,当更新后的第二行编号区间的左端点大于所述查询结果中数据的数量,将所述导出Excel表发送至所述客户端,当更新后的第二行编号区间的左端点不大于所述查询结果中数据的数量,将所述导出Excel表确定为预设空白excel表并返回所述步骤b。
可选地,所述利用预设的数值区间构建哈希值环,包括:
构建哈希值环的数值区间,其中,所述数值区间的右端点对应的值大于所述客户端哈希值与所述节点哈希值集中的最大值,所述数值区间的左端点对应的值小于所述客户端哈希值与所述节点哈希值集中的最小值;
将所述数值区间的左右端点连接成一个圆环,得到所述哈希值环。
可选地,所述将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域之前,所述方法还包括:
根据所述导出任务关键词构建查询语句;
利用所述查询语句在预设数据库中进行查询,得到所述查询结果。
为了解决上述问题,本发明还提供一种数据导入导出装置,所述装置包括:
节点筛选模块,用于接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
任务类型判断模块,用于判断所述任务类型是否为导入任务类型;
数据导入导出模块,用于当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
为了解决上述问题,本发明还提供一种电子设备,所述电子设备包括:
存储器,存储至少一个计算机程序;及
处理器,执行所述存储器中存储的计算机程序以实现上述所述的数据导入导出方法。
为了解决上述问题,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一个计算机程序,所述至少一个计算机程序被电子设备中的处理器执行以实现上述所述的数据导入导出方法。
本发明实施例将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,将导入导出的数据分次导入缓存,再从缓存中分次将数据导入导出,大大降低了服务器的缓存压力,提高了服务器进行数据导入导出的稳定性,从而提高数据导入导出的效率;因此本发明实施例提出的数据导入导出方法、装置、电子设备及可读存储介质提高了数据导入导出的效率。
附图说明
图1为本发明一实施例提供的数据导入导出方法的流程示意图;
图2为本发明一实施例提供的数据导入导出装置的模块示意图;
图3为本发明一实施例提供的实现数据导入导出方法的电子设备的内部结构示意图;
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种数据导入导出方法。所述数据导入导出方法的执行主体包括但不限于服务端、终端等能够被配置为执行本申请实施例提供的该方法的电子设备中的至少一种。换言之,所述数据导入导出方法可以由安装在终端设备或服务端设备的软件或硬件来执行,所述软件可以是区块链平台。所述服务端包括但不限于:单台服务器、服务器集群、云端服务器或云端服务器集群等,服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content Delivery Network,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。
参照图1所示的本发明一实施例提供的数据导入导出方法的流程示意图,在本发明实施例中,所述数据导入导出方法包括:
S1、接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型。
本发明实施例中所述数据导入导出任务包括数据导入任务及数据导出任务;其中所述数据导入任务为将预设的导入Excel数据表中的数据导入预设***,所述数据导出任务为将查询预设***对应的后台数据库中的数据导出为Excel表的形式发送给所述用户。所述任务类型与所述数据导入导出任务一一对应,因此,所述任务类型为导入任务类型或导出任务类型。
S2、对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点。
本发明实施例中所述服务器节点集中包含有不同的服务器节点的地址,所述服务器节点为可以执行数据导入导出任务的节点,可选地,本发明实施例中所述服务器节点的地址为服务器节点的IP地址。
详细地,本发明实施例对每个所述服务器节点的地址进行哈希计算,得到对应的节点哈希值;汇总全部所述节点哈希值,得到节点哈希值集,获取所述客户端的地址信息;将所述地址信息进行哈希计算,得到客户端哈希值;根据所述客户端哈希值及所述节点哈希值集对所述服务器节点集中的服务器节点进行哈希值匹配筛选,得到目标服务器节点。
可选地,本发明实施例中所述地址信息可以为所述客户端的IP地址。
进一步地,本发明实施例所述根据所述客户端哈希值及所述节点哈希值集进行匹配,得到目标服务器节点,包括:利用预设的数值区间构建哈希值环,将所述客户端哈希值与所述节点哈希值集中的每个节点哈希值均映射为所述哈希值环上对应的点,筛选所述哈希值环上所述客户端哈希值对应的点在预设方向上的相邻点,将所述相邻点对应的节点哈希值确定为目标节点哈希值;选择所述目标节点哈希值对应的服务器节点为目标服务器节点。可选地,所述预设方向为顺时针方向。
可选地,本发明实施例中构建所述哈希值环的数值区间可以[0,2^32]。本发明实施例将所述数值区间的左右端点连接成一个圆环,得到所述哈希值环。为了保证所述客户端哈希值与所述节点哈希值集中的每个节点哈希值均能映射在所述哈希值环上,本发明实施例设置所述数值区间的右端点对应的值大于所述客户端哈希值与所述节点哈希值集中的最大值,所述数值区间的左端点对应的值小于所述客户端哈希值与所述节点哈希值集中的最小值。
本发明实施例中选取合适的服务器节点,降低客户端与服务器节点的数据延迟,提高任务的执行效率。
S3、判断所述任务类型是否为导入任务类型。
本发明实施例中为了针对不同的任务进行个性化的执行,因此需要先判断所述任务类型是否为导入任务类型,由于所述任务类型只有导出任务类型和导入任务类型,因此,当所述任务类型部位导出任务类型时,即为导入任务类型。
S4、当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***。
本发明实施例中所述导入Excel表为包含需要导入数据的Excel数据表,由于导入的数据过多,若一次性的将所述导入Excel表中的数据拉取到内存中,如果所述导入Excel中的数据过多,那么可能造成内存溢出或服务器压力过大,因此,本发明实施例中将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***。
本发明另一实施例中所述导入Excel表可以存储在区块链节点中,利用区块链节点高吞吐的特性,提高数据的取用效率。
详细地,本发明实施例中将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***,包括:
步骤A:根据所述第一预设行数构建第一行编号区间;
可选地,本发明实施例中将1作为区间左端点,将所述第一预设行数作为区间右端点构建第一行编号区间,其中,所述第一预设行数为根据所述缓存区域的容量大小人为设置的每次写入的数据数量。
例如:所述第一预设行数为5,那么所述第一行编号区间为[1,5]。
步骤B:将所述导入Excel表中所述第一行编号区间内对应行编号的行数据写入所述预设缓存区域,得到对应的导入缓存数据;
可选地,本发明实施例利用easyExcel技术将所述导入Excel表中的数据写入所述预设缓存区域,其中,所述缓存区域为所述目标服务器节点用来缓存数据的内存区域。
步骤C:将所述导入缓存数据导入预设***后,删除所述预设缓存区域中对应的导入缓存数据,更新所述第一行编号区间,并判断更新后的第一行编号区间左端点是否大于所述导入Excel表中最后一行编号,当更新后的第一行编号区间左端点大于所述导入Excel表中最后一行编号,则向所述客户端发送任务成功通知,当更新后的第一行编号区间左端点不大于所述导入Excel表中最后一行编号,则返回所述步骤B。
可选地,本发明实施例中将所述第一行编号区间的左右端点分别增加所述第一预设行数,得到更新后的第一行编号区间。
例如:所述第一行编号区间为[1,5],所述第一预设行数为5,那么更新后的第一行编号区间为[6,10]。
S5、当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
详细地,本发明实施例中由于需要查询数据库中需要导出的数据,将查询到的数据封装成Excel格式,如果需要导出的数据过多,那么一次性的将查询到的数据拉取到内存中,可能造成内存溢出或服务器压力过大,因此,本发明实施例中提取所述导出任务中的导出数据关键词,根据所述导出任务关键词分次在预设的数据库中查询所述导出任务关键词对应的数据,将查询到的数据读取到预设缓存区域,得到对应的导出缓存数据。
具体地,本发明实施例中将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域之前,所述方法还包括:
根据所述导出任务关键词构建查询语句;利用所述查询语句在预设数据库中进行查询,得到所述查询结果。
可选地,本发明实施例中查询语句是数据库查询数据表的结构化语句,具体可以是SQL查询语句,不同厂商数据库对应的查询语句的语法可以不同。查询结果可以是根据查询语句在数据库表中查询到的数据,查询结果可以由一条或者多条数据记录构成。具体的,在游标查询之前,需要根据查询语句获取到查询结果,查询结果可以存储在缓存中,获取查询结果由于数据规模不同而缓存大小固定,获取到的查询结果可以是一次性获取,也可以是分批获取。
详细地,本发明实施例中将利用所述导出任务关键词在预设的数据库中查询的结果分次读取至目标服务器节点,得到对应的导出缓存数据,并将所述导出缓存数据写入预设Excel表,包括:
步骤a:根据预设第二行数构建第二行编号区间;
步骤b:将所述查询结果中对应行编号的数据写入预设缓存区域,得到对应的导出缓存数据;
可选地,本发明实施例中可利用游标将查询结果中的数据写入预设缓存区域。
步骤c:将所述导入缓存数据写入预设空白Excel表,得到导出Excel表;
步骤d:将所述缓存数据写入预设空白Excel表后,删除所述预设缓存区域中对应的导出缓存数据,更新所述第二行编号区间,并判断更新后的第二行编号区间的左端点是否大于所述查询结果中数据的数量,当更新后的第二行编号区间的左端点大于所述查询结果中数据的数量,将所述导出Excel表发送至所述客户端,当更新后的第二行编号区间的左端点不大于所述查询结果中数据的数量,将所述导出Excel表确定为预设空白excel表并返回所述步骤b。
可选地,本发明实施例中将所述第二行编号区间的左右端点分别增加所述第二预设行数,得到更新后的第二行编号区间。
例如:所述第二行编号区间为[1,5],所述第二预设行数为5,那么更新后的第一行编号区间为[6,10],所述查询结果中共有5条数据,那么所述查询结果中数据的数量为5。
可选地,本发明实施例中根据所述客户端的地址信息将所述Excel表发送至所述客户端。
本发明实施例中通过选择合适的服务器节点进行数据导入导出,提高了数据导入导出的效率,同时,对数据导入任务和数据导出任务进行分次导入导出,大大降低了服务器节点及内存压力,进一步提高了数据导入导出的效率。
如图2所示,是本发明数据导入导出装置的功能模块图。
本发明所述数据导入导出装置100可以安装于电子设备中。根据实现的功能,所述数据导入导出装置可以包括节点筛选模块101、任务类型判断模块102、数据导入导出模块103,本发所述模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:
所述节点筛选模块101用于接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
所述任务类型判断模块102用于判断所述任务类型是否为导入任务类型;
所述数据导入导出模块103用于当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
详细地,本发明实施例中所述数据导入导出装置100中所述的各模块在使用时采用与上述图1中所述的数据导入导出方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图3所示,是本发明实现数据导入导出方法的电子设备的结构示意图。
所述电子设备可以包括处理器10、存储器11、通信总线12和通信接口13,还可以包括存储在所述存储器11中并可在所述处理器10上运行的计算机程序,如数据导入导出程序。
其中,所述存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。所述存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。所述存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(SecureDigital,SD)卡、闪存卡(Flash Card)等。进一步地,所述存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。所述存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如数据导入导出程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
所述处理器10在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。所述处理器10是所述电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在所述存储器11内的程序或者模块(例如数据导入导出程序等),以及调用存储在所述存储器11内的数据,以执行电子设备的各种功能和处理数据。
所述通信总线12可以是外设部件互连标准(perIPheral componentinterconnect,简称PCI)总线或扩展工业标准结构(extended industry standardarchitecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。所述通信总线12总线被设置为实现所述存储器11以及至少一个处理器10等之间的连接通信。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
图3仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图3示出的结构并不构成对所述电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,所述电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理装置与所述至少一个处理器10逻辑相连,从而通过电源管理装置实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电装置、电源故障分类电路、电源转换器或者逆变器、电源状态指示器等任意组件。所述电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
可选地,所述通信接口13可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。
可选地,所述通信接口13还可以包括用户接口,用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
应该了解,所述实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
所述电子设备中的所述存储器11存储的数据导入导出程序是多个计算机程序的组合,在所述处理器10中运行时,可以实现:
接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;
对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
判断所述任务类型是否为导入任务类型;
当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;
当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
具体地,所述处理器10对上述计算机程序的具体实现方法可参考图1对应实施例中相关步骤的描述,在此不赘述。
进一步地,所述电子设备集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。所述计算机可读介质可以是非易失性的,也可以是易失性的。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明实施例还可以提供一种计算机可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被电子设备的处理器所执行时,可以实现:
接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;
对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
判断所述任务类型是否为导入任务类型;
当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;
当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
进一步地,所述计算机可用存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。***权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (10)

1.一种数据导入导出方法,其特征在于,所述方法包括:
接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;
对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
判断所述任务类型是否为导入任务类型;
当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;
当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
2.如权利要求1所述的数据导入导出方法,其特征在于,所述对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点,包括:
对每个所述服务器节点的地址进行哈希计算,得到对应的节点哈希值;汇总全部所述节点哈希值,得到节点哈希值集;
获取所述客户端的地址信息,将所述地址信息进行哈希计算,得到客户端哈希值;
根据所述客户端哈希值及所述节点哈希值集对所述服务器节点集中的服务器节点进行哈希值匹配筛选,得到目标服务器节点。
3.如权利要求2所述的数据导入导出方法,其特征在于,所述根据所述客户端哈希值及所述节点哈希值集对所述服务器节点集中的服务器节点进行哈希值匹配筛选,得到目标服务器节点,包括:
利用预设的数值区间构建哈希值环;
将所述客户端哈希值与所述节点哈希值集中的每个节点哈希值均映射为所述哈希值环上对应的点;
筛选所述哈希值环上所述客户端哈希值对应的点在预设方向上的相邻点;
将所述相邻点对应的节点哈希值确定为目标节点哈希值;
选择所述目标节点哈希值对应的服务器节点为目标服务器节点。
4.如权利要求1所述的数据导入导出方法,其特征在于,所述将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***,包括:
步骤A:根据所述第一预设行数构建第一行编号区间;
步骤B:将所述导入Excel表中所述第一行编号区间内对应行编号的行数据写入所述预设缓存区域,得到对应的导入缓存数据;
步骤C:将所述导入缓存数据导入预设***后,删除所述预设缓存区域中对应的导入缓存数据,更新所述第一行编号区间,并判断更新后的第一行编号区间左端点是否大于所述导入Excel表中最后一行编号,当更新后的第一行编号区间左端点大于所述导入Excel表中最后一行编号,则向所述客户端发送任务成功通知,当更新后的第一行编号区间左端点不大于所述导入Excel表中最后一行编号,则返回所述步骤B。
5.如权利要求1所述的数据导入导出方法,其特征在于,所述将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表,包括:
步骤a:根据预设第二行数构建第二行编号区间;
步骤b:将所述查询结果中第二行编号区间内对应数据编号的数据写入预设缓存区域,得到对应的导出缓存数据;
步骤c:将所述导入缓存数据写入预设空白Excel表,得到导出Excel表;
步骤d:将所述缓存数据写入预设空白Excel表后,删除所述预设缓存区域中对应的导出缓存数据,更新所述第二行编号区间,并判断更新后的第二行编号区间的左端点是否大于所述查询结果中数据的数量,当更新后的第二行编号区间的左端点大于所述查询结果中数据的数量,将所述导出Excel表发送至所述客户端,当更新后的第二行编号区间的左端点不大于所述查询结果中数据的数量,将所述导出Excel表确定为预设空白excel表并返回所述步骤b。
6.如权利要求3所述的数据导入导出方法,其特征在于,所述利用预设的数值区间构建哈希值环,包括:
构建哈希值环的数值区间,其中,所述数值区间的右端点对应的值大于所述客户端哈希值与所述节点哈希值集中的最大值,所述数值区间的左端点对应的值小于所述客户端哈希值与所述节点哈希值集中的最小值;
将所述数值区间的左右端点连接成一个圆环,得到所述哈希值环。
7.如权利要求1至6中任意一项所述的数据导入导出方法,其特征在于,所述将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域之前,所述方法还包括:
根据所述导出任务关键词构建查询语句;
利用所述查询语句在预设数据库中进行查询,得到所述查询结果。
8.一种数据导入导出装置,其特征在于,包括:
节点筛选模块,用于接收用户客户端的数据导入导出任务及对应的任务类型,其中,所述任务类型为导入任务类型或导出任务类型;对预设服务器节点集中的每个服务器节点的地址进行哈希计算,并根据计算得到的哈希值对所述服务器节点集进行筛选,得到目标服务器节点;
任务类型判断模块,用于判断所述任务类型是否为导入任务类型;
数据导入导出模块,用于当所述任务类型为导入任务类型,获取所述数据导入导出任务对应的导入Excel表,将所述导入Excel表中的数据分次写入所述目标服务器节点的预设缓存区域,得到对应的导入缓存数据,并将所有所述导入缓存数据依次导入预设***,直至所有所述导入缓存数据全部导入预设***;当所述任务类型不是导入任务类型,获取所述数据导入导出任务对应的导出关键词,将根据所述导出任务关键词在预设的数据库中查询的查询结果分次读取至所述目标服务器节点的预设缓存区域,得到对应的导出缓存数据,并将所述导出缓存数据依次写入预设Excel表,直至所有所述导入缓存数据全部写入预设Excel表。
9.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一项所述的数据导入导出方法。
10.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的数据导入导出方法。
CN202111525919.9A 2021-12-14 2021-12-14 数据导入导出方法、装置、电子设备及存储介质 Pending CN114185895A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111525919.9A CN114185895A (zh) 2021-12-14 2021-12-14 数据导入导出方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111525919.9A CN114185895A (zh) 2021-12-14 2021-12-14 数据导入导出方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN114185895A true CN114185895A (zh) 2022-03-15

Family

ID=80543717

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111525919.9A Pending CN114185895A (zh) 2021-12-14 2021-12-14 数据导入导出方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN114185895A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114841129A (zh) * 2022-04-25 2022-08-02 平安科技(深圳)有限公司 数据导入方法、装置、电子设备及存储介质
CN114896278A (zh) * 2022-05-06 2022-08-12 北京偶数科技有限公司 数据查询方法、装置以及存储介质
CN115495496A (zh) * 2022-08-17 2022-12-20 昆仑数智科技有限责任公司 数据导出方法、装置、电子设备、存储介质及程序产品

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105119763A (zh) * 2015-09-24 2015-12-02 烽火通信科技股份有限公司 基于RIA的Web网管客户端的大数据快速导出方法及***
CN106682047A (zh) * 2015-11-11 2017-05-17 杭州华为数字技术有限公司 一种数据导入方法以及相关装置
CN112491963A (zh) * 2020-11-03 2021-03-12 泰康保险集团股份有限公司 数据传输方法、装置、设备及可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105119763A (zh) * 2015-09-24 2015-12-02 烽火通信科技股份有限公司 基于RIA的Web网管客户端的大数据快速导出方法及***
CN106682047A (zh) * 2015-11-11 2017-05-17 杭州华为数字技术有限公司 一种数据导入方法以及相关装置
CN112491963A (zh) * 2020-11-03 2021-03-12 泰康保险集团股份有限公司 数据传输方法、装置、设备及可读存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114841129A (zh) * 2022-04-25 2022-08-02 平安科技(深圳)有限公司 数据导入方法、装置、电子设备及存储介质
CN114896278A (zh) * 2022-05-06 2022-08-12 北京偶数科技有限公司 数据查询方法、装置以及存储介质
CN115495496A (zh) * 2022-08-17 2022-12-20 昆仑数智科技有限责任公司 数据导出方法、装置、电子设备、存储介质及程序产品

Similar Documents

Publication Publication Date Title
WO2021189826A1 (zh) 报文生成方法、装置、电子设备及计算机可读存储介质
CN114185895A (zh) 数据导入导出方法、装置、电子设备及存储介质
CN113239106B (zh) Excel文件导出方法、装置、电子设备及存储介质
CN112418798A (zh) 信息审核方法、装置、电子设备及存储介质
CN112115145A (zh) 数据采集方法、装置、电子设备及存储介质
CN111651453A (zh) 用户历史行为查询方法、装置、电子设备及存储介质
CN112506486A (zh) 搜索***建立方法、装置、电子设备及可读存储介质
CN114491047A (zh) 多标签文本分类方法、装置、电子设备及存储介质
CN113868528A (zh) 资讯推荐方法、装置、电子设备及可读存储介质
CN112949278A (zh) 数据核对方法、装置、电子设备及可读存储介质
CN113890712A (zh) 数据传输方法、装置、电子设备及可读存储介质
CN112580079A (zh) 权限配置方法、装置、电子设备及可读存储介质
CN113722533B (zh) 信息推送方法、装置、电子设备及可读存储介质
CN114398346A (zh) 数据迁移方法、装置、设备及存储介质
CN113468175A (zh) 数据压缩方法、装置、电子设备及存储介质
CN112948380A (zh) 基于大数据的数据存储方法、装置、电子设备及存储介质
CN113434542A (zh) 数据关系识别方法、装置、电子设备及存储介质
CN115033605A (zh) 数据查询方法、装置、电子设备及存储介质
CN115687384A (zh) Uuid标识生成方法、装置、设备及存储介质
CN114547011A (zh) 数据抽取方法、装置、电子设备及存储介质
CN115114297A (zh) 数据轻量存储及查找方法、装置、电子设备及存储介质
CN114185588A (zh) 增量包生成方法、装置、设备及存储介质
CN113297180A (zh) 数据迁移方法、装置、电子设备及存储介质
CN112686759A (zh) 对账监测方法、装置、设备及介质
CN114841129A (zh) 数据导入方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination