CN110362630B - 数据管理方法、装置、设备与计算机可读存储介质 - Google Patents
数据管理方法、装置、设备与计算机可读存储介质 Download PDFInfo
- Publication number
- CN110362630B CN110362630B CN201910655646.6A CN201910655646A CN110362630B CN 110362630 B CN110362630 B CN 110362630B CN 201910655646 A CN201910655646 A CN 201910655646A CN 110362630 B CN110362630 B CN 110362630B
- Authority
- CN
- China
- Prior art keywords
- data
- type
- determining
- file
- source
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013523 data management Methods 0.000 title claims abstract description 49
- 230000008676 import Effects 0.000 claims abstract description 66
- 238000006243 chemical reaction Methods 0.000 claims abstract description 43
- 238000005192 partition Methods 0.000 claims description 17
- 238000007726 management method Methods 0.000 abstract description 42
- 238000012545 processing Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 238000000586 desensitisation Methods 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000013507 mapping Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- GNFTZDOKVXKIBK-UHFFFAOYSA-N 3-(2-methoxyethoxy)benzohydrazide Chemical compound COCCOC1=CC=CC(C(=O)NN)=C1 GNFTZDOKVXKIBK-UHFFFAOYSA-N 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 231100000279 safety data Toxicity 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/11—File system administration, e.g. details of archiving or snapshots
- G06F16/116—Details of conversion of file system types or formats
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal 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)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据管理方法,包括:当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;基于所述第一数据类型,确定所述第一数据对应的第一数据源;确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;将所述第一数据集导入所述第一数据源。本发明还公开了一种数据管理装置、设备和计算机可读存储介质。本发明能够实现数据的智能化管理。
Description
技术领域
本发明涉及金融科技(Fintech)技术领域,尤其涉及数据管理方法、装置、设备与计算机可读存储介质。
背景技术
近年来,随着金融科技(Fintech),尤其是互联网金融的不断发展,大数据技术被引入银行等金融机构的日常业务中。在银行等金融机构的日常服务过程中,数据分析或者数据仓库等岗位的人员需要将数据从数据库中导出,以进行数据分析;或者业务人员应客户需求,需要将数据导出到文件中,以将该文件发送给客户;或者业务人员拿到数据,需要将当前数据导入数据库中保存,很明显,数据的导入导出是银行等金融机构必做的一项数据管理工作。
而现有的数据管理方式由于各数据库之间没有联合,且各数据库的逻辑语言不同,一般只针对单个数据库,仅将数据从数据库中导出到本地,或者将本地的数据导入到数据库中,导入导出方式较为局限,并且在导入导出过程中不能对数据进行处理,导致导入导出方式较为僵硬,无法对数据进行智能化管理。
发明内容
本发明的主要目的在于提出一种数据管理方法、装置、设备与计算机可读存储介质,旨在实现数据的智能化管理。
为实现上述目的,本发明提供一种数据管理方法,所述数据管理方法包括如下步骤:
当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;
基于所述第一数据类型,确定所述第一数据对应的第一数据源;
确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
将所述第一数据集导入所述第一数据源。
优选地,所述当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型的步骤包括:
当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;
统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型。
优选地,所述基于所述第一数据类型,确定所述第一数据对应的第一数据源的步骤包括:
基于所述第一数据类型,确定所述第一数据对应的第一数据源,并将所述第一数据源返回所述数据导入请求对应的用户端;
若接收到所述用户端基于所述第一数据源发送的第二数据源,则将所述第二数据源作为所述第一数据对应的第一数据源。
优选地,所述将所述第一数据集导入所述第一数据源的步骤包括:
确定所述第一数据集的写入类型;
按照所述写入类型将所述第一数据集导入所述第一数据源。
优选地,所述数据管理方法还包括:
当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;
基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;
基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;
将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
优选地,所述文件格式包括第二列信息,所述第二列信息对应的第二转换格式和文件格式类型,所述基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象的步骤包括:
基于所述第二转换格式和所述第二列信息,将所述第二数据生成第二数据集;
基于所述文件格式类型,确定所述第二数据集对应的文件写出对象。
优选地,所述将所述第二数据集写入所述文件写出对象的步骤包括:
遍历所述第二数据集的分区,并按照一次一个分区的写入方式,将所述第二数据集写入所述文件写出对象。
此外,为实现上述目的,本发明还提供一种数据管理装置,所述数据管理装置包括:
读取模块,用于当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;
确定模块,用于基于所述第一数据类型,确定所述第一数据对应的第一数据源;
生成模块,用于确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
导入模块,用于将所述第一数据集导入所述第一数据源。
优选地,所述读取模块还用于:
当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;
统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型。
优选地,所述确定模块还用于:
基于所述第一数据类型,确定所述第一数据对应的第一数据源,并将所述第一数据源返回所述数据导入请求对应的用户端;
若接收到所述用户端基于所述第一数据源发送的第二数据源,则将所述第二数据源作为所述第一数据对应的第一数据源。
优选地,所述导入模块还用于:
确定所述第一数据集的写入类型;
按照所述写入类型将所述第一数据集导入所述第一数据源。
优选地,所述数据管理装置还包括:
获取模块,用于当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;
所述获取模块,还用于基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;
所述生成模块,还用于基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;
导出模块,用于将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
优选地,所述文件格式包括第二列信息,所述第二列信息对应的第二转换格式和文件格式类型,所述生成模块还用于:
基于所述第二转换格式和所述第二列信息,将所述第二数据生成第二数据集;
基于所述文件格式类型,确定所述第二数据集对应的文件写出对象。
优选地,所述导出模块还用于:
遍历所述第二数据集的分区,并按照一次一个分区的写入方式,将所述第二数据集写入所述文件写出对象。
此外,为实现上述目的,本发明还提供一种数据管理设备,所述数据管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据管理程序,所述数据管理程序被所述处理器执行时实现如上所述的数据管理方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有数据管理程序,所述数据管理程序被处理器执行时实现如上所述的数据管理方法的步骤。
本发明提出的数据管理方法,当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;基于所述第一数据类型,确定所述第一数据对应的第一数据源;确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;将所述第一数据集导入所述第一数据源。本发明在检测到数据导入请求时,对数据导入请求对应的数据进行加工处理,并通过确定对应的数据源,将加工处理后的数据导入到数据源中,实现数据的智能化管理。
附图说明
图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图;
图2为本发明数据管理方法第一实施例的流程示意图;
图3为本发明数据管理方法第二实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明实施例方案涉及的硬件运行环境的设备结构示意图。
本发明实施例设备可以是PC机或服务器设备。
如图1所示,该设备可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据管理程序。
其中,操作系统是管理和控制数据管理设备与软件资源的程序,支持网络通信模块、用户接口模块、数据管理程序以及其他程序或软件的运行;网络通信模块用于管理和控制网络接口1002;用户接口模块用于管理和控制用户接口1003。
在图1所示的数据管理设备中,所述数据管理设备通过处理器1001调用存储器1005中存储的数据管理程序,并执行下述数据管理方法各个实施例中的操作。
基于上述硬件结构,提出本发明数据管理方法实施例。
参照图2,图2为本发明数据管理方法第一实施例的流程示意图,所述方法包括:
步骤S10,当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;
步骤S20,基于所述第一数据类型,确定所述第一数据对应的第一数据源;
步骤S30,确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
步骤S40,将所述第一数据集导入所述第一数据源。
本实施例数据管理方法运用于理财机构或者银行系统等金融机构的数据管理设备中,为描述方便,数据管理设备以下简称管理设备,管理设备可以是终端或者PC设备,在本发明实施例中,在管理设备中内置Spark(专为大规模数据处理而设计的快速通用的计算引擎),使得管理设备基于Spark技术支持将多类型文件导入导出到数据存储组件,如Excel,CSV,JSON等,同时,基于Spark技术,管理设备支持导入导出到多种类型的数据存储组件如:Hive,Mysql,Oracle,HDFS,Hbase,Mongodb等,具体通过Spark提供的DataSourceAPI增加数据存储组件的类,该类的具体程序段根据实际需要进行编辑,使得DataSourceAPI支持连接多种数据源。本实施例的实现依赖于Spark的分布式计算能力和支持连接多种数据源的DataSourceAPI(数据源调用接口),需要说明的是,Spark原生的Datasource(是一套连接外部数据源和Spark引擎的框架,它主要是给Spark框架提供一种快速读取外界数据的能力,它可以方便地把不同的数据格式通过DataSource API(调用接口)注册成Spark的表)已经实现对JSON、ORC、Parquet等文件格式的支持,但是支持的格式有限。不符合实际的需求,在此基础上,本发明实施例通过Spark提供的DataSourceAPI加入了对Excel(如支持03版本的xls和07版本后的xlsx),CSV,TXT等文件格式的支持,具体程序段根据文件格式进行编辑,也即在管理设备中可通过添加支持文件格式的方式,使得管理设备实现对多类型文件的导入导出。
本实施例的管理设备,在检测到数据导入请求时,对数据导入请求对应的数据进行加工处理,并通过确定对应的数据源,将加工处理后的数据导入到数据源中,实现数据的智能管理。
以下将对各个步骤进行详细说明:
步骤S10,当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;
在本实施例中,理财机构或者银行等金融机构的相关业务人员,也即用户,在通过各种途径拿到数据,并且该数据需要导入本金融机构对应的数据源时,只需将数据传入管理设备中,管理设备即可完成数据的导入。
具体的,当管理设备检测到数据导入请求时,读取数据导入请求对应的第一数据的数据内容,并根据数据内容识别出第一数据对应的第一数据类型,也即在将第一数据导入相应的数据源时,先确定第一数据的第一数据类型,以便后续将第一数据导入正确的数据源。
可以理解的,本实施例的数据源有多个,即管理设备支持导入导出的数据存储组件有多个,如Hive、Mysql、Oracle、HDFS、Hbase和Mongodb等,为实现将第一数据精准的导入用户想要的数据源中,需要先确定第一数据的第一数据类型。
进一步地,步骤S10包括:
步骤a,当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;
在该步骤中,当管理设备检测到数据导入请求时,管理设备中的文件读入对象(Reader)会对数据导入请求对应的第一数据进行读取,在这过程中,为实现快速确定第一数据的第一数据类型,可预设读取的行数,也即Reader只需读取预设行数的数据内容即可,并通过读取的数据内容判断第一数据的第一数据类型,其中,预设行数可指第一数据的前预设行数,之后判断读取的数据内容中每一列的列信息所属的第二数据类型。如当前列的列信息是数字,则确定当前列的数据类型为数字类型;若当前列的列信息是字符,则确定当前列信息的数据类型为字符类型等。
步骤b,统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型。
在该步骤中,根据读取的数据内容中每一列的列信息所属的第二数据类型,统计第二数据类型中各数据类型出现的次数,并将次数出现最多的数据类型确定为第一数据对应的第一数据类型,如数字类型出现的次数最多,则确定第一数据为数字类型;若字符类型出现的次数最多,则确定第一数据为字符类型等。
在具体实施时,预设行数优选为10行,即Reader读取第一数据前10行的数据内容,并由管理设备的数据类型推断器对前10行的数据内容进行数据类型判断,具体判断数据内容中每一列的数据类型,并通过判断哪种类型出现的次数最多进行推断,如:user:String,orderId:Int。为提高数据类型的判断精度,可将判断结果,也即第一数据类型,返回数据导入请求对应的用户端,以供用户进行查看确认,在此过程中,若接收到用户通过用户端基于第一数据类型发送的修改指令,则管理设备按照用户的修改意愿,更改第一数据的数据类型。
步骤S20,基于所述第一数据类型,确定所述第一数据对应的第一数据源。
在本实施例中,管理设备基于确定的第一数据类型,确定第一数据对应的第一数据源,也即确定第一数据即将导入的第一数据源。具体的,事先将数据类型与数据源进行映射,从而得到数据类型-数据源映射表,在确定第一数据的第一数据类型时,即可通过数据类型-数据源映射表确定第一数据对应的第一数据源。
进一步地,步骤S20包括:
步骤c,基于所述第一数据类型,确定所述第一数据对应的第一数据源,并将所述第一数据源返回所述数据导入请求对应的用户端;
在该步骤中,管理设备基于第一数据类型,确定第一数据类型对应的第一数据源,并将第一数据源返回数据导入请求对应的用户端,以供用户端的用户进行确认。
步骤d,若接收到所述用户端基于所述第一数据源发送的第二数据源,则将所述第二数据源作为所述第一数据对应的第一数据源。
在该步骤中,用户可通过用户终端确认管理设备是否推断正确,若推断不正确,可通过用户终端发送相应的修改指令,以供管理设备对第一数据的数据类型进行修改。具体的,管理设备若接收到用户端基于第一数据发送的第二数据源,则将第二数据源作为第一数据对应的第一数据源;若未接收到用户端基于第一数据源发送给的第二数据源,或者接收到基于所述第一数据源的确认指令,则确定第一数据源为第一数据对应的数据源。
可以理解的,由于第一数据的数据类型是通过第一数据预设行数的数据内容推断出来的,在准确度上并不是十分正确,为提高第一数据的数据类型的判断精准度,需要管理设备在判断出第一数据的第一数据类型后,将第一数据类型返回给用户确认,从而提高第一数据的数据类型的判断精准度,并且管理设备在对第一数据的数据类型进行修改时,会对修改后的数据类型进行保存,以便下一次遇到与第一数据相同的数据内容时,准确得到其数据类型。
步骤S30,确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集。
在本实施例中,管理设备确定第一数据的第一转换格式和第一列信息,从而按照第一转换格式,对第一列信息进行转换处理,其中转换处理包括数据脱敏处理和数据类型转换处理等,数据脱敏是指对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。在涉及客户安全数据或者一些商业性敏感数据的情况下,在不违反系统规则条件下,对真实数据进行改造并提供测试使用,如身份证号、手机号、卡号、客户号等个人信息都需要进行数据脱敏;数据类型转换处理,如将word文件转换为PDF文件等。
其中,第一数据的第一转换格式和第一列信息可以是用户自定义的,也即在用户发起数据导入请求时,定义第一数据的第一转换格式和第一列信息,如对第一数据中的用户信息进行解密等。
具体的,按照第一转换格式,对第一数据的第一列信息进行处理,从而将第一数据生成第一数据集,需要说明的是,第一数据集可以是多个文件中的数据,如用户想要导入的数据是导入文件A中数据、导入文件B中数据以及导入文件C中数据,那么本实施例的第一数据即为导入文件A、导入文件B和导入文件C,在将第一数据进行转换处理时,也就是对导入文件A、B和C进行处理,最后合并生成第一数据集,该第一数据集具体为DataFrame(一种表格型数据结构,它含有一组有序的列,每列可以是不同的值,是一个以命名列方式组织的分布式数据集)。
步骤S40,将所述第一数据集导入所述第一数据源。
在本实施例中,基于确定的第一数据源,调用对应的调用接口(DatasourceAPI),并通过该调用接口,将第一数据集(DataFrame)导入第一数据源中,如,Mysql库中的用户订单表,其中,调用接口是数据管理设备基于Spark技术预留的接口,通过该接口可实现分布式数据源的数据传输。
需要说明的是,每一个数据源都对应有专门的调用接口,也即在确定了第一数据集对应的第一数据源之后,需确定第一数据源对应的调用接口,并通过调用该调用接口,将第一数据集导入第一数据源中,也即导入第一数据源的数据需要通过第一数据源对应的调用接口。
当然,为实现快速导入,减少调用接口的调用时间,可将不同数据源的调用接口集成一个通用的调用接口,具体程序段可根据实际需求进行编辑,通过通用的调用接口,可实现不同数据源的数据传输,也即不管将数据导入哪一个数据源,都通过通用的调用接口导入到对应的数据源。
进一步地,步骤S40包括:
步骤e,确定所述第一数据集的写入类型;
在该步骤中,用户还可以自定义第一数据集的写入类型,其中,写入类型包括新建数据、复写数据和追加数据等。如用户选择用户订单表,并选择数据追加等。管理设备即可确定第一数据集的写入类型,以便后续对第一数据集进行写入。
步骤f,按照所述写入类型将所述第一数据集导入所述第一数据源。
在该步骤中,管理设备基于确定的第一数据源,调用对应的调用接口,并通过该调用接口,按照确定的写入类型,将第一数据集导入第一数据源中。
本实施例在接收到待传播文本时,当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;基于所述第一数据类型,确定所述第一数据对应的第一数据源;确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;将所述第一数据集导入所述第一数据源。本发明在检测到数据导入请求时,对数据导入请求对应的数据进行加工处理,并通过确定对应的数据源,将加工处理后的数据导入到数据源中,实现数据的智能化管理。
进一步地,基于本发明数据管理方法第一实施例,提出本发明数据管理方法第二实施例。
数据管理方法的第二实施例与数据管理方法的第一实施例的区别在于,参照图3,所述数据管理方法还包括:
步骤S50,当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;
步骤S60,基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;
步骤S70,基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;
步骤S80,将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
本实施例在检测到数据导出请求时,确定对应的第二数据,并对第二数据进行加工处理成第二数据集,在将第二数据集写入到对应的文件写出对象中导出,实现数据的智能化管理。
以下将对各个步骤进行详细说明:
步骤S50,当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径。
在本实施例中,当管理设备检测到数据导出请求时,获取数据导出请求的配置信息,该配置信息由用户自行配置,其中,配置信息包括第三数据源、查询语句、文件格式和输出路径等,也即,用户在将数据导出时,可选择对应的数据源和对应需要导出的数据表,如Mysql库中的用户订单表,并定义从数据表中需要导出的数据的查询语句,以及定义对指定的列的列信息进行的数据转换。如:定义导出最近半年的订单表,并对用户信息进行数据脱敏处理等,接着选择需要导出的文件格式和输出路径,如:导出用户订单表为Excel,路径为:/home/username/orders.xlsx。管理设备根据用户的配置信息,即可确定对应的参数。
步骤S60,基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据。
在本实施例中,管理设备基于第三数据源和对应的查询语句,获取数据导出请求对应的第二数据,具体在第三数据源中获取对应的数据表,并通过查询语句,在数据表中提取数据导出请求对应的第二数据,其中,第二数据可是单个文件的数据,也可以是多个文件的数据。
步骤S70,基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象。
在本实施例中,管理设备根据用户配置的文件格式,对确定的第二数据进行处理,如脱敏处理,以生成第二数据集,第二数据集具体也为DataFrame,并确定第二数据集对应的文件写出对象。
具体的,所述文件格式包括第二列信息,所述第二列信息对应的第二转换格式和文件格式类型,步骤S70包括:
步骤g,基于所述第二转换格式和所述第二列信息,将所述第二数据生成第二数据集;
在该步骤中,管理设备根据第二列信息,以及第二列信息对应的第二转换格式,将第二数据生成第二数据集,具体的,在第二数据中提取第二列信息,并将第二列信息按照所述第二转换格式进行转换,如解密等,将第二数据生成第二数据集。
步骤h,基于所述文件格式类型,确定所述第二数据集对应的文件写出对象。
在该步骤中,管理设备基于文件格式类型,确定第二数据集对应的文件写出对象,具体可事先建立文件格式类型与文件写出对象的映射表,在确定用户选择的文件格式类型后,即可确定对应的文件写出对象。如如:支持Spark的Excel的文件写出对象。管理设备中的写入模块(Writer)支持多种文件格式类型如Excel,csv,Json等。
步骤S80,将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
在本实施例中,在确定了第二数据集的文件写出对象后,管理设备将第二数据集写入文件写出对象中,并将文件写出对象导出至用户配置的输出路径对应的终端,如:输出路径为/home/username/orders.xlsx。
进一步地,将所述第二数据集写入所述文件写出对象的步骤包括:
步骤i,遍历所述第二数据集的分区,并按照一次一个分区的写入方式,将所述第二数据集写入所述文件写出对象。
在该步骤中,管理设备遍历第二数据集的分区,可以理解的,第二数据集,也即DataFrame,有多个分区,每一个分区都存放有数据,其中,分区由用户事先定义,如基于hash规则,将DataFrame分为多个区,如哈希值为A的数据放在a区,哈希值为B的数据放在b区等,管理设别按照一次一个分区的写入方式,将第二数据集写入文件写出对象中。
本实施例是为了防止在写入的过程中出现内存溢出的问题,因此,对Writer部分做了修改,调用了Spark的toLocalIterator去遍历DataFrame的分区,按照一次收集一个分区的方式去收集数据,并提供了通用的写入方案可以写到HDFS(Hadoop Distributed FileSystem是Hadoop抽象文件系统的一种实现,指分布式文件系统)和本地文件系统中。
本实施例当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。通过在检测到数据导出请求时,确定对应的第二数据,并对第二数据进行加工处理成第二数据集,在将第二数据集写入到对应的文件写出对象中导出,实现数据的智能化管理。
本发明还提供一种数据管理装置。本发明数据管理装置包括:
读取模块,用于当检测到数据导入请求时,读取所述数据导入请求对应的第一数据的数据内容,并基于所述数据内容确定所述第一数据对应的第一数据类型;
确定模块,用于基于所述第一数据类型,确定所述第一数据对应的第一数据源;
生成模块,用于确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
导入模块,用于将所述第一数据集导入所述第一数据源。
进一步地,所述读取模块还用于:
当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;
统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型。
进一步地,所述确定模块还用于:
基于所述第一数据类型,确定所述第一数据对应的第一数据源,并将所述第一数据源返回所述数据导入请求对应的用户端;
若接收到所述用户端基于所述第一数据源发送的第二数据源,则将所述第二数据源作为所述第一数据对应的第一数据源。
进一步地,所述导入模块还用于:
确定所述第一数据集的写入类型;
按照所述写入类型将所述第一数据集导入所述第一数据源。
进一步地,所述数据管理装置还包括:
获取模块,用于当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;
所述获取模块,还用于基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;
所述生成模块,还用于基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;
导出模块,用于将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
进一步地,所述文件格式包括第二列信息,所述第二列信息对应的第二转换格式和文件格式类型,所述生成模块还用于:
基于所述第二转换格式和所述第二列信息,将所述第二数据生成第二数据集;
基于所述文件格式类型,确定所述第二数据集对应的文件写出对象。
进一步地,所述导出模块还用于:
遍历所述第二数据集的分区,并按照一次一个分区的写入方式,将所述第二数据集写入所述文件写出对象。
本发明还提供一种计算机可读存储介质。
本发明计算机可读存储介质上存储有数据管理程序,所述数据管理程序被处理器执行时实现如上所述的数据管理方法的步骤。
其中,在所述处理器上运行的数据管理程序被执行时所实现的方法可参照本发明数据管理方法各个实施例,此处不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书与附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种数据管理方法,其特征在于,所述数据管理方法包括如下步骤:
当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;
统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型;
基于所述第一数据类型,确定所述第一数据对应的第一数据源;
确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
将所述第一数据集导入所述第一数据源。
2.如权利要求1所述的数据管理方法,其特征在于,所述基于所述第一数据类型,确定所述第一数据对应的第一数据源的步骤包括:
基于所述第一数据类型,确定所述第一数据对应的第一数据源,并将所述第一数据源返回所述数据导入请求对应的用户端;
若接收到所述用户端基于所述第一数据源发送的第二数据源,则将所述第二数据源作为所述第一数据对应的第一数据源。
3.如权利要求1所述的数据管理方法,其特征在于,所述将所述第一数据集导入所述第一数据源的步骤包括:
确定所述第一数据集的写入类型;
按照所述写入类型将所述第一数据集导入所述第一数据源。
4.如权利要求1-3任一项所述的数据管理方法,其特征在于,所述数据管理方法还包括:
当检测到数据导出请求时,获取所述数据导出请求的配置信息,所述配置信息包括第三数据源、查询语句、文件格式和输出路径;
基于所述第三数据源和所述查询语句,获取所述数据导出请求对应的第二数据;
基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象;
将所述第二数据集写入所述文件写出对象,并将所述文件写出对象导出至所述输出路径对应的终端。
5.如权利要求4所述的数据管理方法,其特征在于,所述文件格式包括第二列信息,所述第二列信息对应的第二转换格式和文件格式类型,所述基于所述文件格式,将所述第二数据生成第二数据集,并确定所述第二数据集对应的文件写出对象的步骤包括:
基于所述第二转换格式和所述第二列信息,将所述第二数据生成第二数据集;
基于所述文件格式类型,确定所述第二数据集对应的文件写出对象。
6.如权利要求4所述的数据管理方法,其特征在于,所述将所述第二数据集写入所述文件写出对象的步骤包括:
遍历所述第二数据集的分区,并按照一次一个分区的写入方式,将所述第二数据集写入所述文件写出对象。
7.一种数据管理装置,其特征在于,所述数据管理装置包括:
读取模块,用于当检测到数据导入请求时,读取所述数据导入请求对应的第一数据预设行数的数据内容,并判断所述数据内容中每一列的列信息所属的第二数据类型;统计所述第二数据类型中各数据类型出现的次数,并将次数最多的数据类型确定为所述第一数据对应的第一数据类型;
确定模块,用于基于所述第一数据类型,确定所述第一数据对应的第一数据源;
生成模块,用于确定所述第一数据的第一转换格式和第一列信息,并基于所述第一转换格式和所述第一列信息,将所述第一数据生成第一数据集;
导入模块,用于将所述第一数据集导入所述第一数据源。
8.一种数据管理设备,其特征在于,所述数据管理设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的数据管理程序,所述数据管理程序被所述处理器执行时实现如权利要求1至6中任一项所述的数据管理方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有数据管理程序,所述数据管理程序被处理器执行时实现如权利要求1至6中任一项所述的数据管理方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910655646.6A CN110362630B (zh) | 2019-07-19 | 2019-07-19 | 数据管理方法、装置、设备与计算机可读存储介质 |
PCT/CN2020/102540 WO2021013057A1 (zh) | 2019-07-19 | 2020-07-17 | 数据管理方法、装置、设备与计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910655646.6A CN110362630B (zh) | 2019-07-19 | 2019-07-19 | 数据管理方法、装置、设备与计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110362630A CN110362630A (zh) | 2019-10-22 |
CN110362630B true CN110362630B (zh) | 2023-11-28 |
Family
ID=68220364
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910655646.6A Active CN110362630B (zh) | 2019-07-19 | 2019-07-19 | 数据管理方法、装置、设备与计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN110362630B (zh) |
WO (1) | WO2021013057A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362630B (zh) * | 2019-07-19 | 2023-11-28 | 深圳前海微众银行股份有限公司 | 数据管理方法、装置、设备与计算机可读存储介质 |
CN110990476B (zh) * | 2019-12-17 | 2023-04-07 | 腾讯科技(深圳)有限公司 | 数据导入方法、装置、服务器及存储介质 |
CN113434606A (zh) * | 2021-06-30 | 2021-09-24 | 青岛海尔科技有限公司 | 一种数据导入方法、装置、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247767A (zh) * | 2017-06-05 | 2017-10-13 | 山东浪潮通软信息科技有限公司 | 一种通过格式化数据文件导入数据库的方法及装置 |
CN108228560A (zh) * | 2016-12-22 | 2018-06-29 | 北京国双科技有限公司 | 一种数据类型的确定方法及装置 |
CN108292231A (zh) * | 2015-11-09 | 2018-07-17 | 微软技术许可有限责任公司 | 从数据生成应用 |
CN108664665A (zh) * | 2018-05-22 | 2018-10-16 | 深圳壹账通智能科技有限公司 | 数据格式转化方法、装置、设备及可读存储介质 |
CN108694241A (zh) * | 2018-05-14 | 2018-10-23 | 平安科技(深圳)有限公司 | 一种数据的存储方法及设备 |
CN109213756A (zh) * | 2018-10-22 | 2019-01-15 | 北京锐安科技有限公司 | 数据存储、检索方法、装置、服务器和存储介质 |
CN109740359A (zh) * | 2018-12-28 | 2019-05-10 | 上海点融信息科技有限责任公司 | 用于数据脱敏的方法、装置及存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9268802B2 (en) * | 2012-06-26 | 2016-02-23 | Google Inc. | System and method for end-to-end exposure of exported representations of native data types to third-party applications |
CN105824849A (zh) * | 2015-01-08 | 2016-08-03 | 中国移动通信集团河南有限公司 | 一种数据导入方法及适配器 |
CN106951536A (zh) * | 2017-03-22 | 2017-07-14 | 努比亚技术有限公司 | 数据转化方法及系统 |
KR101917806B1 (ko) * | 2017-12-22 | 2018-11-12 | 주식회사 웨어밸리 | Sql 패킷분석을 통한 이기종 데이터베이스의 데이터 복제 및 동기화 오류 탐지 방법 및 시스템 |
CN108563768B (zh) * | 2018-04-19 | 2023-05-23 | 中国平安财产保险股份有限公司 | 不同数据模型的数据转换方法、装置、设备及存储介质 |
CN110362630B (zh) * | 2019-07-19 | 2023-11-28 | 深圳前海微众银行股份有限公司 | 数据管理方法、装置、设备与计算机可读存储介质 |
-
2019
- 2019-07-19 CN CN201910655646.6A patent/CN110362630B/zh active Active
-
2020
- 2020-07-17 WO PCT/CN2020/102540 patent/WO2021013057A1/zh active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108292231A (zh) * | 2015-11-09 | 2018-07-17 | 微软技术许可有限责任公司 | 从数据生成应用 |
CN108228560A (zh) * | 2016-12-22 | 2018-06-29 | 北京国双科技有限公司 | 一种数据类型的确定方法及装置 |
CN107247767A (zh) * | 2017-06-05 | 2017-10-13 | 山东浪潮通软信息科技有限公司 | 一种通过格式化数据文件导入数据库的方法及装置 |
CN108694241A (zh) * | 2018-05-14 | 2018-10-23 | 平安科技(深圳)有限公司 | 一种数据的存储方法及设备 |
CN108664665A (zh) * | 2018-05-22 | 2018-10-16 | 深圳壹账通智能科技有限公司 | 数据格式转化方法、装置、设备及可读存储介质 |
CN109213756A (zh) * | 2018-10-22 | 2019-01-15 | 北京锐安科技有限公司 | 数据存储、检索方法、装置、服务器和存储介质 |
CN109740359A (zh) * | 2018-12-28 | 2019-05-10 | 上海点融信息科技有限责任公司 | 用于数据脱敏的方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2021013057A1 (zh) | 2021-01-28 |
CN110362630A (zh) | 2019-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109344642B (zh) | 接口规则校验方法、装置、计算机设备及存储介质 | |
CN110362372B (zh) | 页面转译方法、装置、介质及电子设备 | |
WO2021184725A1 (zh) | 用户界面测试方法、装置、存储介质及计算机设备 | |
CN110362630B (zh) | 数据管理方法、装置、设备与计算机可读存储介质 | |
WO2019169725A1 (zh) | 测试数据生成方法、装置、设备以及计算机可读存储介质 | |
WO2019134340A1 (zh) | 薪资计算方法、应用服务器及计算机可读存储介质 | |
CN107220274B (zh) | 一种可视化数据接口集市实现方法 | |
CN110781183B (zh) | Hive数据库中增量数据的处理方法、装置以及计算机设备 | |
US20190087397A1 (en) | Human-computer interaction method and apparatus thereof | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
JP7254925B2 (ja) | 改良されたデータマッチングのためのデータレコードの字訳 | |
CN110689268A (zh) | 一种提取指标的方法和装置 | |
CN110704325B (zh) | 数据处理方法及装置、计算机存储介质及电子设备 | |
CN113282591B (zh) | 权限过滤方法、装置、计算机设备及存储介质 | |
CN110795920A (zh) | 一种文档生成方法及设备 | |
CN110321529B (zh) | 框架文字显示方法、装置、计算机设备及存储介质 | |
CN112559914A (zh) | 指标数据显示方法及装置 | |
CN113761565A (zh) | 数据脱敏方法和装置 | |
JP2016024486A (ja) | データ活用システム及びその制御方法 | |
CN111598707A (zh) | 一种页面的生成方法及电子设备 | |
CN112491943A (zh) | 数据请求方法、装置、存储介质和电子设备 | |
CN111752964A (zh) | 基于数据接口的数据处理方法及装置 | |
CN115310127A (zh) | 一种数据脱敏方法及装置 | |
CN115795187A (zh) | 资源访问方法、装置及设备 | |
US11200222B2 (en) | Natural language interface databases |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |